linux发行版本基础目录命名及功能

目录配置标准 FHS
  • 因为目前linux distribution的种类繁多,而且负责开放的团队及公司也很多。

  • 为了让用户可以了解到已安装软件通常的存放位置,所以为了规范linux的目录结构就推出了FHS(filesystem hierarchy standard)文件系统层次化标准,同时保证了在遵循FHS的同时,各个linux发行版的开发者可以根据自己的意图开发出想要的独特风格。

FHS定义出根文件下存放的目录及内容
  • /bin:所有用户可用的基本命令程序文件

  • /sbin:供系统管理员使用的工具程序

  • /boot:引导加载器必须用到的各静态文件;kernel,initramfs(initrd),grub等

  • /dev:存储特殊文件或设备文件; 

    • 设备有两种类型:字符设备(线性设备)、块设备(随机设备)

  • /etc:系统程序的配置文件,只能为静态

  • /home:普通的家目录的集中位置,一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME:

  • /root:管理员的家目录;可选

  • /lib:为系统启动或根文件系统上的应用程序(/bin,/sbin等)提供共享库,以及为内核提供内核模块 

    • lib.so.*:动态链接的C库

    • ld*:运行时链接器/加载器

    • moduless:用于存储内核模块的目录

  • /lib64:64位系统特有的存放64位共享库的路径

  • /media:便携式设备挂载点,cdrom,floppy等

  • /mnt:其它文件系统的临时挂载点

  • /opt:附加应用程序的安装位置;可选路径

  • /srv:当前主机为服务提供的数据

  • /tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录,可供所有用户执行写入操作;有特殊权限

  • /usr:usr hierarchy ,全局共享的只读数据路径 

    • bin,sbin

    • lib,lib64

    • include:C程序头文件

    • share:命令手册页和自带文档等架构特有的文件的存储位置

    • local:另一个层级目录

    • X11R6:X-Window程序的安装位置

    • src:程序源码文件的存储位置

  • /usr/local:local hierarchy,让系统管理员安装本地应用程序;也通常用于安装第三方程序

  • /var:var hierarchy,存储常发生变化的数据的目录 

    • linux发行版本基础目录命名及功能_FHS

  • /proc:基于内存的虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核参数,例如net.ipv4.ip_forward,虚拟为net/ipv4/ip_forward,因此其完整路径为/proc/sys/net/ipv4/ip_forward

  • /sys:sysfs虚拟文件提供了一种比proc更为理想的访问内核数据的途径;其主要作用在于为管理linux设备提供一种统一模型的接口