Linux发行版的系统目录名称,用途及文件命名规则

一、相关概念

  根文件系统(rootfs):linux每一个文件,都必须是根文件系统下的某一个路径,都必须通过根文件系统才能访问。

  FHS:文件系统层级标准,规定了一个linux发行版,必备哪些目录。

  LSB(Linux Standard Base):linux标准化领域的一个标准,制定了应用程序与运行环境之间的二进制接口。

二、系统目录名称及用途

  /boot:系统启动相关的文件,如内核文件(vmlinuz),引导加载器(grub);

  /bin:所有用户使用的基本命令,centos7开始链接至/usr/bin;

  /sbin:管理类的基本命令,centos7开始链接至/usr/sbin;

  /lib:启动程序时依赖的共享库文件,以及内核模块文件(/lib/modules);

  /lib64:专用于x86_64系统上的辅助共享库文件存放位置;

  /etc:配置文件存放目录;

  /home/USERNAME:普通用户家目录;

  /root:管理员家目录;

  /media:便携式设备挂载点;

  /mnt:临时文件系统挂载点;

  /dev:设备文件及特殊文件存储位置;

    b:block device,随机访问;

    c:character device,线性访问;

  /opt:第三方应用程序安装位置;

  /srv:系统上运行的服务用到的数据;

  /tmp:临时文件存储位置,这里面的文件系统每个月自动清理一次;

  /usr:universal shared,read-only data

    bin:系统安装后用户安装软件的运行脚本,主要放置一些应用软件必备的软件执行档,如c++,g++,gcc,chdrv,diff,dig,du,eject,elm,free,gnome,gzip,htpasswd,kfm,ktop,last,less,locale,m4,make,man,mcopy,ncftp,newaliases,nslookup,passwd,quota,smb,wget等;    

    sbin:放置一些用户安装的系统管理员的必备程序。如:dhcpd,httpd,imap,in.*d,inetd,lpd,named,netconfig,nmbd,samba,sendmail,squid,swap,tcpd,tcpdump等,

    lib:32位系统使用的库文件;

    lib64:只存在64位系统;

    include:c程序的头文件(header files);

    share:结构化独立的数据,如doc,man等;

    local:第三方程序的安装位置;

  /var:variable data files

    cache:应用程序缓存数据目录;

    lib:应用程序状态信息数据;

    local:专用于为/usr/local下的应用程序存储可变数据;

    lock:锁文件;

    log:日志文件目录;

    opt:专用于为/opt下的程序存储可变数据;

    run:运行中的进程相关数据,通常用于存储进程pid文件;

    spool:应用程序数据池;

    tmp:保存系统两次重启之间保存的临时数据;

  /proc:用于输出内核与进程信息相关的虚拟文件系统;

  /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统;

  /selinux:security enhanced linux ,selinux相关的安全策略等信息的存储位置;

三、文件命名规则

  文件名最长255个字节;

  包括文件路径在内,文件名最长4095个字节;

  蓝色:目录,绿色:可执行文件,红色:压缩文件,浅蓝色:链接文件,灰色:其他文件

  除了斜杠(/)和NUL,所有字符都有效,但是不推荐使用特殊字符做文件名,有些字符需要用引号来引用他们

  标准linux文件系统(如ext4),文件名称大小写敏感:如MAIL,Mail,mail,mAil

原文地址:https://www.cnblogs.com/oceanftd/p/13456878.html