在开始之前,我们有必要对类unix系统的目录做一些常识性的了解。以便以后更好的讲解其他内容。
对于习惯于windows的人,早已把分区啊,目录阿背得差不多滚瓜烂熟了,其系统下几乎所有的目录也都差不多了解他们存在的意思,但是它这一套东西,对于类unix系统来说并不适用,而且对于多用户系统来说windows的目录结构并不十分恰当,而类unix系统则从开始就考虑了这些问题,从而设计的目录树结构已经成为一种标准。
这种结构中并不存在分区的概念,对于类unix系统任何设备,数据都被定义为文件。比如显示器,键盘,硬盘,分区在类unix系统下都作为文件来表示;而普通的数据文件也要作为文件来表示,所以必须好好的组织它们。(所有类unix系统的文件组织是一样的,后面就把类unix系统改称linux拉)
在安装的时候,你应该还记得在选择安装分区的时候指定了一个“/”的东西,那么它是什么呢?它在linux下面叫做根目录,其他所有的文件目录都作为它的子目录,前面讲命令的时候通常会有“cd /etc/”“cd etc/”这样的命令,它们有什么区别呢?“/etc/”这个目录实际上是“/”与“etc/的组合”,显而易见,这个“/etc/”是根目录下面的etc子目录,而“etc/”则是你当前所在目录的etc子目录,看右图中的那个驱动器模样的东西右面的“/”这就是根,相信各位对这个图并不陌生。
各个子目录的含义:
/bin 系统基本命令,例如“ls”,“rm”等命令都放在这。
/dev 设备文件目录,比如说“/dev/hda”就是指你的第一块硬盘,“/dev/mixer”指的是混音器等等
/etc 系统管理和配置文件,存放系统主要的配置文件。例如“/etc/rc.d” 启动的配置文件和脚本
/home 一般用户主目录的基点,例如用户nobody,系统默认会把/home/nobody目录作为该用户的主目录。
/lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的system目录,这些动态链接库在linux下面一般以.so结尾(相当于windows下的dll文件)。
/sbin超级用户管理命令,比如fsck,fdisk都在这。
/tmp 公用的临时文件存储点
/root 系统管理员root的主目录,其他的可都在/home下面阿
/mnt 这个目录是用来挂载其他的文件系统的目录,例如软盘,光驱都将挂载在这里。
/lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件,或者介质问题导致的文件碎片都会被存在这里,这个目录也相当于windows里面出来的“found.000”里面的冬冬~。
/proc 进程目录,是系统进程的映射。可直接访问这个目录来获取进程信息,它也作为进程间通信的一个中转站吧。
/var 系统变量区,比方说各种服务的日志文件。
/usr 这个目录相当于又一层根目录,因为这个目录面向于所有用户,对于一般用户根本不能对主目录下得咚咚进行操作,所以单独建立了这个目录供所有用户操作。其中包含:
/usr/X11R6 存放X window的目录
/usr/bin 用户一般命令
/usr/sbin 系统管理命令,这里存放的是系统管理员使用的管理程序
/usr/doc linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里,如果你没安装源代码那就找不到。
/usr/local/ 一般在这里安装应用软件。
最后需要说明的是,一般情况下,命令文件一般分为两类,一类是shell脚本,一类是2进制文件,在执行前需要对文件加可执行权限(chmod +x filename)在目录下可以以“./filename”,以及“sh filename”的方式来启动。只有/bin,/sbin,/usr/bin,/usr/sbin下面的可执行程序可以使用文件名直接启动,否则不能以文件名启动,所以可以建立从可执行文件到*bin目录的符号链接。


pacfaket 于 2008-03-04 21:27:52发表:
不错,学习了