Linux文件系统课件
Linux 的文件系统;Linux与DOS文件系统的区别Linux文件系统是一个目录树的结构,它的根是根目录“/”,往下连接各个分支,例如,/bin、/usr、/sbin等,如图所示。图Linux文件系统 ;DOS以每个分区为树根,由于有多个分区,所以形成了多个树并列的情形。Linux所有的文件系统安装在一个根树上,是一个目录树。因此在分区时,必须将一个分区安装在树根上,而将其他的分区安装到树根下面,如果将一个分区安装到/etc,一个分区安装到/usr,则每一个分区安装的位置,例如,/etc、/usr就称为安装点。DOS下,分区是最大的目录,而在Linux下,分区则可能是比根目录低两三级的目录。任何一个目录都可能是一个分区。Linux不仅将分区安装为一个目录,而且它还将其他的硬件设备都安装成一个个设备文件。对设备的操作是通过文件的操作完成的。 ;Linux文件系统结构:Linux将文件存放到逐层继承排列的子目录中,这种结构的形状很像是一棵树,所以称为“树状结构”(tree structure)。这个树状结构是倒挂的,它的根被置于最顶部,从根向下延伸的是枝,每个枝向上只有一个连接,但向下可以再有更多个枝。从这个角度看,也可以说有个“父—子”结构,即每个子目录都是另一个子目录的下级子目录。一个子目录可以有多个下级子目录,但它自身只能是一个父目录的子目录,如图所示。 ;1. 用户的系统子目录Linux的文件结构从一个根目录(即“/”目录)开始向下分成多个子目录。根目录中的几个系统级子目录里容纳着形成Linux操作系统各种功能的文件和程序。标准的、原始的文件系统包括/、/home、/usr、/var、/bin、/sbin、/etc、/dev、/lib。Linux系统是以文件的目的为依据对文件进行分组的,即相同目的的命令都放在同一子目录中。系统子目录中的文件的作用是保证系统的正常运行。它们中的许多还有自己的下级子目录,并容纳完成Linux操作系统的特定功能的程序。 ;●????? /usr/bin:保存面向用户的命令和辅助性工具。●????? /usr/sbin:保存系统管理方面的命令。●????? /usr/lib:保存程序语言的库文件。●????? /usr/doc:保存Linux文档。●????? /usr/man:保存由man命令调用的命令联机手册。●????? /usr/spool:保存假脱机文件。●????? /sbin:与目录/bin类似,保存用于系统引导的系统管理命令。●????? /dev:保存设备的文件接口,例如,终端和打印机等。●????? /var:保存经常变动的文件,例如,记录文件、临时文件和电子邮箱文件等。/etc:保存系统配置文件和任何其他系统性的文件。 ;2. 用户的登录子目录根目录里有一个名为home的子目录,它容纳系统上全体用户的登录子目录(home directory),也叫做主目录、家目录等。用户进入系统时,最先进入的是自己的登录子目录。系统分配给这个子目录的名字和用户的登录名相同。用户第一次登录上机时建立的任何文件都放在自己的登录子目录中。每个用户都有他自己的登录子目录,以各自的登录名区分,每个用户可以再依次建立他们自己的子目录。用户可以通过子目录的名字来访问它,也可以将它设置为默认子目录的方法来访问它,即用户可以把一个子目录设置为自己的默认子目录。如果在文件操作中没有使用任何子目录的名字,则访问的就将是默认子目录。默认子目录也叫做“工作子目录”(working directory)。从这个意义上说,工作子目录就是用户当前正在其中工作的子目录。;3. 路径名用户在创建子目录或者文件时分配的名字并不是它的全名。一个子目录的全名是它的路径名(pathname)。子目录间继承性的嵌套关系构成了路径,而这些路径用来惟一地确定和引用一个子目录或者一个文件。在图7-3中,从根目录“/”到home子目录再到robert子目录是一个路径,路径名写成/home/robert。系统标识某个子目录时实际用的名字总是从根目录开始,并由堆叠在该子目录上面的各级子目录组成。路径名可以是绝对的也可以是相对的。“绝对路径名”(absolute pathname)指的是一个文件或子目录从根目录开始的完整的路径名。“相对路径名”(relative pathname)指的是从工作子目录算起,它是一个文件相对于工作子目录的路径。实际中可能绝对路径名会相当复杂,而且只有系统管理员才能修改它,为了方便引用它,用户可以使用一个特殊字符,即“~”,它代表的是用户登录子目录的绝对路径名。 ;Linux的文件;在早期的UNIX版本中,文件名被限制在14个字符以内。Linux与UNIX渊源深厚,但是文