安装完linux系统后,最容易迷糊的第一个问题就是:linux系统里的目录到底都代表了什么?这些目录与windows下的截然不同,这些目录里都装了什么?本人刚开始也是一头雾水,到现在差不多基本搞清楚了,下面就以redhat为例(如下图所示),逐一解释,有不当之处,望大家指正。
Home Directory
root -- root的目录
home -- 所有普通用户都放在这里。在RedHat linux中,默认情况下,当创建一个用户,系统会自动为该用户指定一个与用户名家目录,即/home/user,除非在建立用户时特别指定(useradd -M),系统才不为用户建立家目录
User Executables
/bin ,/usr/bin,/usr/local/bin--
/bin -- 就是二进制(binary)英文缩写,放置的是二进制文件,是系统启动必不可缺少的工具,运行的命令一般都放在这里,如mv,ls,mkdir等。有时,这个目录的内容和/usr/bin里面的内容一样,它们都是放置一般用户使用的执行文件。
System Exeuutables
/sbin ,/usr/sbin/,/usr/local/sbin-- 超级用户的管理工具,该目录是用来存放系统管理 员的常用的系统管理程序,系统不可少的。
Note:
解释下"/bin ,/sbin" ," /usr/bin,/usr/sbin/"和/usr/local/sbin,/usr/local/sbin
三组的不同。
bin ,/sbin -- 是系统启动的必须启动的程序,
usr/bin,/usr/sbin -- 是系统启动费必须的程序,但对用户而言可能是必要,如graphical environment(图形化环境)
/usr/local/sbin,/usr/local/sbin -- 则是安装第三方软件的目录
Dev Directory--专门用来存放系统的设备文件的目录。linux将系统所需的外设都堪称文件。要注意的是,这里并不是存放的外部设备的驱动程序,它实际上是一个访问这些外部设备的端口。由于在linux中,所有的设备都被当作文件一样进行操作,比如:/dev/cdrom代表光驱,用户可以非常方便地像访问文件、目录一样对其进行访问。
Other Moutpoint
media -- 该目录用来存放不易移动的设备文件,如cd-rom,flopp,hardisk等
mnt -- 该目录存放那些外部移动设备文件,如USB等
Kernels and Bootloader
boot-- 放的是系统启动的必须文件,如启动grub下的/boot/grub,vmlinuz内核等,所以boot目录至关重要
Configuration
etc-- 系统的配置文件所存放的位置,系统所有的配置文件都放在这下面,如网络配置文件、文件系统、x系统配置文件、设备配置信息设置用户信息等都在这个目录下。系统在启动过程中需要读取其参数进行相应的配置。
Server Data
srv -- 该目录是一个存在于内存中的伪文件系统,存放一些服务启动之后需要提取的数据。早期linux不能识别多个设备,只能将肯能用到的设备都写在设备文件中,造成/dev目录相当庞大,而自从有了srv,它可以读取内存中的数据和udev动态生出设备文件
var -- 动态变化的数据,如/var/log,/var/spool ,/var/run
System Information
proc -- 虚拟的文件系统 反应的是进程信息,而这些信息是在内存中由系统产生的,故不占用硬盘空间。
sys--这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs,sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统种被创建。
Shared Libraries
lib -- 动态链接库存放的位置。几乎所有的应用程序都会用到这个目录下的共享库。因此,千万不要轻易对这个目录进行什么操作。
usr/lib
usr/local/lib
Temporary Files
tmp -- 临时文件夹,全局可写的
Lost +found -- 该目录在大多数情况下是空的。只有当系统产生异常时,会将一些遗失的片段放在此目录下。如自检的时候发现的碎片文件,某个文件丢失了可能在这里找回。