Linux操作系统实用教程——邱建新

1、特殊目录:bin对应可执行文件,sbin是管理员才能执行的文件,media是挂载如光盘点,当检测到设备接入时会自动产生挂载点,类似mnt,boot目录和系统内核及开机启动相关;usr目录是unix system resource,类似于Windows系统中C盘下Windows与Program Files的结合,是保存程序的相关文件的集合,操作不中需要修改的命令程序文件、程序库、手册等,此文件夹只读;/lost/found分在每个分区上创建这个目录,作用是在文件系统发生错误时,将丢失的文件放在此目录下;/var系统在运行过程中产生的不可自动销毁的缓存文件、日志记录等,不对外提供服务;/srv用户主动生产的数据,对外提供服务;/proc虚拟的文件系统,其数据都是在内存中的,不占用硬盘空间;/lib,/usr/lib,/usr/locat/lib共享的函数、库等。对目录及文件命名可使用除/外任何字符,但最好避免使用特殊字符。查看目录本身用ls -ld,ls -lh表不用默认B,而用KB、MB显示。
2、/etc/passwd存放用户帐号信息,/etc/shadow为增加口令的安全性,默认只有root可读取,存放用户名、密码、密码修改日期、两次修改间隔、口令有效时间、密码过期前多少天发送警告及过期后多久关闭帐号等信息。真正区分用户和组的是ID,如root的UID和GID都为0,普通用户的都大于等于500,系统的在1~499间。
3、Linux系统启动时首先在内存中装载根文件系统,然后根据配置文件/etc/fstab的设置逐个建立文件系统。
4、ls -i结合其他参数可显示文件的索引信息inode,文件数据都储存在"块"中(一次读取多个扇区),我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,可用stat 文件名查看里面的具体内容。inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。每个inode节点的大小,一般是128字节或256字节。inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode。每个inode都有一个号码,操作系统用inode号码来识别不同的文件。这里值得重复一遍,Unix/Linux系统内部不使用文件名,而使用inode号码来识别文件。对于系统来说,文件名只是inode号码便于识别的别称或者绰号。表面上,用户通过文件名,打开文件。实际上,系统内部这个过程分成三步:首先,系统找到这个文件名对应的inode号码;其次,通过inode号码,获取inode信息;最后,根据inode信息,找到文件数据所在的block,读出数据。因此, 移动文件或重命名文件,只是改变文件名,不影响inode号码。可能出现inode被小文件占满,而无法继续创建新文件(夹)的情况。
5、文件权限修改chmod可用字符表示法[ugoa][=+-][rwx],也可用八进制表示法,umask默认权限,新建文件权属是-rw-rw-rw值为666,目录是drwxrwxrwx,值为777,可用umask -S查看。history查看,重要执行!+数字。系统中有一个进程为gpm,是鼠标的守护进程,进行命令操作时按住鼠标左键选择要复制的区域使其反白即可复制。
6、符号链接文件与目标文件是两个独立的文件,有着各自的i节点与数据块,它们之间通过文件内容而逻辑的链接在一起。硬链接通过i节点物理地链接在一起(同一个i节点),同一文件具有不同别名。可通过ls -i查看。硬链接不能交叉文件系统,不能对目录创建,软链接有自己的文件属性和权限,可能不存在的文件或目录创建,可交叉文件系统
7、Ext3是一种日志文件系统(Journal File System,JFS),保持了Ext2的功能再加上日志功能,最大特点是它会将整个磁盘的写入动作完整地记录在磁盘的某个区域上,以便需要时进行加回溯追踪,且速度相当快。
8、Windows可分C,D等被当作逻辑独立的硬盘使用,且都有自己的要目录,而Linux一个根目录。创建文件系统后要挂载才能使用(不同文件系统间也可挂载),如mount -t ext3 /dev/hda3 /mnt/disk1把hda3分区的文件系统安装在disk1目录下,文件系统类型是Ext3 。mount关机时会被自动卸载,为让系统启动时自动安装,并在关机时自动卸载,可在/etc/fstab中设置,Linux启动时会自动读取此文件中的内容并挂载。
9、磁盘配额是指用户主机上可使用的磁盘空间的额度,通过quota来实现,quota是以文件系统为基础的,如果系统有多个文件系统,则须在所有文件系统上分别配置,quota目前只在Ext2类型的文件系统上实现。在挂载文件系统时加上usrquota,grpquota表支持。
10、dmesg是一种程序,用于检测和控制内核环缓冲。程序用来助用户了解系统的启动信息。Linux命令dmesg用来显示开机信息,kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。在dmesg里我们可以查看到开机信息,print产生的信息等。若研究内核代码,在代码中插入printk函数,然后通过dmesg观察是一个很好地方法。
11、Linux启动过程:BIOS加电自检,检查CPU、硬盘等信息;从磁盘第0磁道第1扇区读取MBR并拷贝到内存,其复制到内存的内容就是Boot Loader(可以是lilo或grup);根据grub.lst或其他配置找到内核映像对应路径并加载到内存解压并启动;读取/etc/inittab设定运行级别;启动rc.sysinit环境配置及/etc/rc.d/rc.local个性化配置等。系统启动后第一个进程是init,其PID=1。
12、实际用户(组)ID指登录到系统的,有效指文件等的拥有者。nice可设置进程优先级(-20~19)启动,renice启动后更改。 正在执行的一个或多个相关进程被称为作业,如使用了管道和重定向命令时,可能包含多个进程,如ls -l | grep "^d" | wc -l,这个作业同时启动了3个进程。用PS时TTY显示的是哪个终端启动的此命令。 正在运行的程序按Ctrl+Z会产生job,在Shell下输入jobs -l(显示进程ID)可显示,前加号表默认作业,减号表下一个作业。kill可杀死进程及其子进程,kill [-signal] PID,默认为SIGTERM,值为15,有些进程会忽略,可用SIGKILL值 为9强制杀;可用killall+signal+进程名称来杀所有同名进程。
13、任务调度:对偶尔运行的进程采用at(ctrl+d结束),对特定时间重复运行的采用cron。crontab文件内容是corn守护进程所要执行的一系列作业和指令,每个用户拥有自己同名的crontab文件同时系统有一个crontab位于/etc目录。cron命令不应该手工启动,应是系统启动时由一个Shell脚本自动启动进入后台。会搜索/var/spool/cron中用户的crontab及全局的/etc/crontab。创建crontab [-e,l,r]格式为分 时 日 月 周 命令。
14、RPM软件包命名格式:name-version-release(补丁).type(平台支持).rpm,如telnet-server-0.17-25.i386.rpm。rpm -i options file1.rpm ... fileN.rpm。查询:rpm -q options file1.rpm ... fileN.rpm。或直接使用网络http/ftp地址安装。RPM软件包验证指已安装的软件包与原始包比较是否安装的没问题rpm -V options file,还有升级是-U,删除是-e。
15、打包指将许多文件和目录变成一个总的文件,该文件的体积并不会缩小,Linux系统中很多压缩程序只能对一个文件进行压缩。常用压缩工具有bzip2,gzip,zip生成.bz2,.gz,.zip,解压用bunzip2,gunzip,unzip。 tar options filename.tar directory/file,生成档案文件,可同时压缩加-z(bzip2,bzip)或-j(gzip),查看时也要-tzvf,创建、显示、还原、追加是ctxr。
16、*通配符不能匹配文件名前的.及/,[]里第一个字符若是^或!表非。脚本运行方式:./b(直接运行文件)或bash b(用Shell的启动方式来执行脚本)或source b(或. b)(使用bash内部命令)三种。
17、环境变量:echo HOME,PATH,PWD,SHELL。位置变量0,带参数运行./b 1 2,其中0始终是文件名如./b,shift指位置参数向左移1位。 预定义特殊变量:#实际位置参数个数(不包括文件名自身),*所有位置参数组成的字符串,!上一个后台命令对应的进程号,?最近一条命令执行后退出状态,$$当前进程号PID。echo -n 表不换行,变量赋值:read或直接赋值(不能有空格)或通过命令行参数对位置变量赋值。算术运算:Shell没有内置算术运算符号,不能直接+-*/%,但可用expr如a=`expra + 1反引号,+左右各有一空格,或用let a = b + 1,更复杂的如浮点运算可用bc,awk命令。 条件测试:可测试文件属性用-b,-c,-r,-w,-x,-s,-d,-f,-e如if test -c $FILENMAE;then else fi;也可测试数据大小-eq,-ne,-gt,-lt,-ge,-le;也可测试字符串:-z,-n,s1=s2,s1!=s2,s1;也可测试逻辑运算符:-a,-o,!,如if test $x -ge 20 -a $x -le 40;then else fi,加分号是为了then与if写在同行。 18、选择结构:if else可简写elif。case 表达式 in(换行)模式1|模式2) 命令表1;; *) 命令表n;; esac。 select循环结构可简便的生成菜单且具有编号,在输入选择的编号后可根据用户的选择执行相应的代码,select总是与case结构一起使用,允许用户在菜单中选择,当执行到break时将退出select。 19、循环:while[表达式] do 命令 done。LinuxShell中(())双括号中表达式都可像C语言一样,如a++,b--等,且其中变量可不用$直接使用,且双括号内可直接四则、逻辑运算,且支持多个表达式并用逗号分开。for 变量[in 列表] do 命令 done。 函数定义:[function] 函数名{命令表[return]}。 20、以网络号127开头的地址专门用于标识本地一路,网络号不为0,主机全为0表网络自身,网络号不为0,主机全为1表广播。网关是一个网络连接到另一个网络的关口。同一集线器上两个不同IP范围,没有网关也无法通信。DNS采用分布式数据结构,其数据库分布在互联网上不同的DNS服务器上,呈树状结构。/etc/services文件列出所有可用的网络服务和它们对应的端口号及协议。/etc/hosts文件包含IP与主机名间的对应关系,现在一般通过DNS,但为了加速可在此文件中添加该域名和IP地址的对应记录;/etc/resolv.conf内容是DNS客户端在配置网络连接时所指定使用的DNS服务器信息。 21、for 变量 [ in 列表] do 命令 done。until Test表达式 do 命令 done。RESULT=expr i \*i`。
ifconfig [-a] [网络端口名]中-a表显示所有,无论端口是否活跃,flag中UP表处于激活状态,没有此值就未激活。ping [-c 次数],
显示本机路由信息:route -n。traceroute. hostname [主机名] 显示及设置主机名。 nslookup [ip或主机名] 使用默认或给定的DNS服务器解析目标主机名或IP地址。netstat [-anrltup]查看网络连接状态。arp -n显示ARP缓存记录。修改网卡参数:ifconfig 接口名 ip 地址 [netmask 子网掩码或直接用网络前缀]。ifconfig 接口名 down[/up]。route add -net 网络地址/网络前缀 gw 下一跳IP,是增加到网络的路由,route add -host 主机IP gw 下一跳IP增加到主机的路由,route add default gw 下一跳IP。默认路。由就一个可先删除旧的再增加route del default/-net/host。配置静态arp,arp -s 主机IP 主机MAC。
22、守护进程独立于控制终端且周期性执行某种任务或等待处理某些发生的事件,它被启动后运行在后台,时刻监听客户端的请求。Linux的服务分为两类,独立性和依赖性服务。独立性服务都有自己的守护进程,如www服务的守护进程httpd,DNS的named,依赖性服务指这些服务都依赖于一个守护进程,这些服务被其他的进程所管理,这个进程叫超级守护进程,Red下是xinetd。 service 服务守护进程名 {start|stop|restart|status}。检查是否打开:chkconfig --list.
23、防火墙(Iptables服务)和SELinux(Security-Enhanced Linux)是Linux最常用的安全措施。Linux实现域名方式通过/etc/hosts或域名系统DNS。DNS根服务器主要用来管理互联网的主目录,全世界只有13台,在Linux设置中用.表示。DNS服务包版本为BIND。辅助DNS服务器有两个用途,一是作为主DNS的备份,二是分担主DNS服务器的负载。
24、DHCP采用C/S模式,其中服务器采用67端口,客户机采用68端口。DHCP的所有信息都是以广播形式传送的,所以无法通过路由器,一台DHCP服务器只能对本网段的客户机分配IP地址。
25、WWW采用C/S工作模式,默认80端口。一个完整的FTP文件传输需要建立两种类型的连接,一种用于传递客户端的命令和服务器对应命令的响应,TCP端口21称为控制连接,另一种实现真正的文件传输,称为数据连接,TCP端口号为20。
26、防火墙是连接内部与外部网络的一组硬件装置。Netfilter/Iptables是包过滤防火墙系统,其中Netfilter是包过滤器,称为内核空间,负责存储规则和包过滤规则的匹配,Iptables被称为用户空间,是Netfilter的外部配置工具,用户通过Iptables对包过滤规则进行增、删、修改等操作。语法:iptables[-t 表名] -命令 -匹配 -j 动作/目标。 NAT(Network Address Translation)是一个IETF标准,允许一个整体机构以一个公用IP(Internet Protocol)地址出现在Internet上,一定程序上能解决公网地址不足的问题。
27、VNC(Virtual Network Computing虚拟网络计算)基于C/S模式,由VNC Server(安装在被控端)及VNC Viewer(主控端)两部分组成。VPN(虚拟专用网络)是利用两个具有VPN发起连接能力的设备通过因特网提供一种通过公用网络安全地对企业内部网络进行远程访问的连接方式,由客户机、传输介质、服务器三部分组成。
28、他人修改源码后,不可闭源,且新增代码也要采用同样的许可证的认证方式就是GPL许可证。

图书目录(已加标签):链接:https://pan.baidu.com/s/1lAlPm5iV5dV-1XXTsV_HbA 密码:a71l

你可能感兴趣的:(Linux操作系统实用教程——邱建新)