Linux系统目录结构详解
众所周知,Linux下一切皆文件,与Windows相似,Linux下可以划分许多个分区,但是与Windows不同的是,Linux下 / 目录做为系统分区的入口,其余分区通过挂载的形式选择 / 目录的某个子目录作为分区的接口,以供用户访问。当我们重新安装系统时,只需要格式化系统分区即可,非系统分区可通过重新挂载的方式是数据不受影响。因此,为了方便我们快速查找文件以及分析数据,我们需要学习Linux各个目录的作用。
树形目录结构:
以下是对各个目录的详解:
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放在此目录。
/bin:供所有用户使用的基本命令;不能关联至其它分区,OS启用即会用到的程序;(因为系统启动是会读取系统分区,如果基本的命令关联至其它分区,很有可能导致系统启动失败)。
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的分区。(与 /bin不同,/sbin 一般存放root用户才能能使用的命令)
/lib:基本共享库文件,以及内核模块文件(/lib/modules)
/lib64:专用于x86_64系统上的辅助共享库文件存放位置。在(64位系统中,/lib 目录基本上没使用,使用的为/lib64)
/etc:配置文件目录(纯文本文件)
/home/username:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
cdrom
usb
/mnt:临时文件系统挂载点,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
/dev:设备文件及特殊文件存储位置:
b:block device,可随机访问
c:character device,线性访问(按顺序)
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置
/usr:universal shared, read-only data:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录
bin:保证系统拥有完整功能而提供的应用程序(大部分用户可使用)
sbin:保证系统拥有完整功能而提供的管理应用程序(管理员使用)
lib:保证系统拥有完整功能而提供的应用程序的基本共享库文件
lib64:同上
include:C程序的头文件(header files)
share:结构化独立的数据,例如doc,man
local:第三方应用程序的安装位置,其下还有子目录
bin, sbin, lib, lib64, etc, share
/var:variable data files 存放可变数据文件
cache:存放应用程序缓存数据目录
lib:存放应用程序状态信息数据
local:专用于 /usr/local 下的应用程序存储可变数据
lock:锁文件
log:日志目录及文件
opt:专用于为 /opt 下的应用程序存储可变数据
run:运行中的进程相关的数据,通常用于存储进程的pid文件
spool:应用程序数据池
tmp:保存系统两次重启之间产生的临时数据
/porc:用于输出内核与进程信息相关的虚拟文件系统。(一般系统调优在该目录下操作)
/sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统
/selinux:security enhanced Linux, selinux相关的安全策略等信息的存储位置
小结:
Linux上应用程序的组成部分:
二进制程序:/bin, /sbin, /usr/bin, /usr/sbin/ , /usr/local/bin, /usr/local/sbin
库文件:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64
配置文件:/etc, /etc/directory, /usr/local/etc
帮助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc
在linux系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
/etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。
值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。
/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。
Linux下的文件类型:
-(f):普通文件(file)
d:目录文件(dir)
b:块文件(block)
c:字符设备(character)
l:符号链接文件(link)
p:管道文件
s:套接字文件(socket)
END
路漫漫而修远兮,吾将上下而求索
查看评论 回复