Linux的系统目录组织方式是树形的,从根目录/
开始,其下又有多个子目录:
[root@runoops ~]# ls / bin dev home lib64 media opt root sbin sys usr boot etc lib lost+found mnt proc run srv tmp var
我们的shell提示符是[root@runoops ~]#
,其中root表示当前用户名,runoops表示主机名,**~表示当前所在目录为家目录,root用户的家目录就是根目录下的root
目录,后面的 # 表示当前是root用户,如果是普通用户,则是$**符号,普通用户的家目录都在根目录下的home
目录下;
home目录主要是存贮与用户相关的配置文件;
我们可以使用tree
命令直观的看出系统的目录结构,默认Centos并没有安装tree
命令,使用yum -y install tree
即可安装该命令,tree
命令的参数-L
可以指定显示的目录层数:
[root@runoops ~]# tree -L 1 /
/
|-- bin -> usr/bin
|-- boot
|-- dev
|-- etc
|-- home
|-- lib -> usr/lib
|-- lib64 -> usr/lib64
|-- lost+found
|-- media
|-- mnt
|-- opt
|-- proc
|-- root
|-- run
|-- sbin -> usr/sbin
|-- srv
|-- sys
|-- tmp
|-- usr
`-- var
20 directories, 0 files
系统目录作用说明
目录名 | 说明 |
---|---|
/bin | bin目录主要存放的是系统的命令,我们所使用的命令如ls 、yum 等,都存放于bin目录下,bin目录不止有/bin ,还有/usr/bin/ 、/usr/sbin/ 、/sbin/ 也是同样的作用,区别是sbin 目录下的命令是超级用户root使用的命令; |
/boot | boot目录主要存放系统的启动文件,当我们启动系统时,进入的grub 界面,就是存放在boot目录下; |
/dev | dev目录是存放设备文件的目录,在Linux系统中,一切皆文件,所以即使是硬盘,光驱,在目录下呈现的也是一个文件; |
/lib & /lib64 | lib及lib64是存放系统的库文件的目录,很多命令会依赖库文件,查看一个命令依赖哪些库,可以使用ldd 命令:ldd /bin/ls ; |
/proc | 系统进程目录,系统的每个进程都会在这个目录下创建自己的进程文件和目录;在proc目录下存在以数字命名的目录,这就是进程的PID,在PID目录下可以看到cwd 文件指向一个位置,这就是进程运行所在的目录; |
/run | 进程运行存放临时文件的目录,在系统重启或关机后目录会清空; |
/srv | 存放服务产生的文件,默认为空; |
/sys | 存放系统内核相关的文件,一般不会使用到这个目录; |
/tmp | 临时目录,任何用户都可以在其下创建文件; |
/usr | 系统用户使用到的命令或文件、库文件的存放位置;一般安装的服务都会放在/usr/local目录下; |
/var | 存放系统运行相关的文件,如日志/var/log;进程PID等。 |
在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
/etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。
值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。
/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。