Linux目錄結構及其命名的規定 Linux - Filessystem Hierarchy Standard / FHS

Linux目錄結構及其命名的規定 Linux Filessystem Hierarchy / LFH

  多数Linux发行版遵从FHS标准并且声明其自身政策以维护FHS的要求。但截至2009年,包括由自由标准小组成员参与开发的版本在内的绝大多数发行版,并不完全执行建议的标准。

  在FHS中,所有的文件和目录都出现在根目录"/"下,即使他们存储在不同的物理设备中。

 


 


 

  FHS:
  Filesystem Hierarchy Standard
    /bin:        所有用户可用的基本命令程序文件;
    /sbin:      供系统管理使用的工具程序;
    /boot:      引導加载器必须用到的各静態文件:kernel, initramfs(initrd), grub等;
    /dev:       儲存特殊文件或设备文件;
             設備有兩種類型:字符設備(线性設備)、块設備(隨機設備);
    /etc:       系统程序的配置文件,只能為静態;
    /home:     普通的家目錄的集中位置;一般每個普通用户的家目錄默認为此目錄下與用户名同名的子目錄,/home/USERNAME;
    /root:        管理員的家目錄,可選;
    /lib:        為系统啟動或根文件系统上的應用程序(/bin, /sbin等)提供共享庫,以及為内核提供内核模块
      libc.so.*:    動態連接的C库;
      ld*:      運行时連接器/加載器;
      modules:    用於儲存内核模块的目錄;
    /lib64:      64位系统特有的存放64位共享库的路径;
    /media:       便携式設備掛載點"mount",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,儲存常發生變化的數據的目錄;
      cache     Application cache data
      lib        Variable state information
      local       Variable data for /usr/local
      lock        Lock files
      log       Log files and directories
      opt       Variable data for /opt
      run       Data relevant to running processes
      spool     Application spool data
      tmp       Temporary files preserved between system reboots

    /proc:      基於内存的虛擬文件系统,用於為内核及進程儲存其相關信息;它們多為内核参數,
             例如net.ipv4.ip_forward, 虛擬為net/ipv4/ip_forward, 儲存於/proc/sys/, 因此其完整路徑為/proc/sys/net/ipv4/ip_forward;
    /sys:       sysfs虛擬文件系统提供了一種比proc更为理想的訪問内核數據的途徑;其主要作用在於為管理Linux設備提供一种统一模型的的接口;

        

      参考:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/


 

  Linux系统上的文件類型:
    -:常规文件;即f;
    d: directory,目錄文件;
    b: block device,块設備文件,支持以“block”為單位進行隨機訪問
    c:character device,字符設備文件,支持以“character”為單位進行綫性訪問
      major number:主設備號,用於(標識/標籤)設備類型,進而確定要加載的驅動程序
      minor number:次設備號,用於(標識/標籤)同一類型中的不同的設備;
        8位二進制:0-255
    l:symbolic link,符號連接文件;
    p: pipe,命名管道;
    s: socket,套接字文件;

    文件系统:層級結構;有索引;
      /: 原初起點;
        倒置樹狀结構;

          /dev/pts/2:
            最左侧/: 表示根目錄
            其它的/: 表示路徑分隔符
              Linux的路径分隔符是/
              Windows的是\

    文件的路徑表示:
      絶對路徑:從根開始表示出的路徑
      相對路徑:從當前位置開始表示出的路徑

    文件名使用法則:
      嚴格區分字符大小寫:file1, File1, FILE1
      目錄也是文件,在同一路徑下,兩個文件不能同名;
      支持使用除/以外的任意字符;
      最長不能超過255個字符;

    用户有家目錄:home,
      用户的起始目錄;普通用户管理文件的位置;
    

    工作目錄:

      /etc/sysconfig/network-scripts/ifcfg-eno16777736

        basename:最右侧的文件或目錄名;
        dirname:basename左侧的路徑;

    命令:(命令及符號)
    ~]# basename /PATH/TO/SOMEFILE
      SOMEFILE
    ~]# dirname /PATH/TO/SOMEFILE
      /PATH/TO

posted @ 2018-11-11 17:52  pypy521  阅读(316)  评论(0编辑  收藏  举报