對於每一個 Linux 學習者來說,瞭解 Linux 的文件系統結構是十分有必要的,因為在 Linux 的學習中一直流傳著這樣一句話:一切皆文件,可以說只有深入瞭解了 Linux 的文件系統,才會對 Linux 有更深刻的理解 ...
對於每一個 Linux 學習者來說,瞭解 Linux 的文件系統結構是十分有必要的,因為在 Linux 的學習中一直流傳著這樣一句話:一切皆文件,可以說只有深入瞭解了 Linux 的文件系統,才會對 Linux 有更深刻的理解
Linux 文件系統採用 樹狀結構,由 Filesystem Hierarchy Standard(FHS)確定文件目錄的命名規範以及存放標準,值得註意的一點是在 Linux 中是 沒有文件拓展名的概念 的,也就是說命名為 test.txt 的文件不一定是文本文件,它也可以是其他各種類型的文件
Ext3 是當前 Ubuntu 系統預設的文件系統,當 Linux 將硬碟格式化為 Ext3 後會將硬碟分為四個部分,分別是:
- Boot Blook:包含系統啟動程式
- Super Blook:記錄文件系統的配置格式
- Data Blook:數據的實際保存區,文件將由串連的 Data Blook 組成,而 Blook 的大小由安裝文件系統時決定
- i-節點:每一個 i-節點 可以用來記錄一個文件
一般 預設的Linux目錄結構 如下(以 Ubuntu 系統為例):
- /:最上層根目錄
- /bin:包含一般用戶常用的系統命令,如cat、date、echo等
- /boot:包含系統啟動時所需的核心文件
- /dev:存放介面設備文件,該目錄包含了所有在系統中使用的外部設備,如IDE設備、SCSI設備等
- /etc:存放系統配置文件,如網路配置文件、用戶信息配置文件等
- /home:一般用戶主目錄,每創建一個一般用戶就會在此目錄下產生一個該用戶專用的主工作目錄
- /lib:執行 /lib 和 /sbin 目錄中的二進位文件時所需的共用文件庫
- /lib64:64位系統支持庫
- /lost+found:當文件系統發生錯誤時,會將遺失的片段放置到此目錄下
- /mnt:各項設備文件系統預設的掛載點
- /opt:提供空間較大的應用程式軟體包保存空間
- /proc:保存系統運行(內核)與程式執行(進程)的信息
- /root:管理員主目錄
- /run:保存從系統誕生到當前狀態的系統信息
- /sbin:包含超級用戶使用的系統管理命令,只有超級用戶才許可權執行此目錄下的命令
- /snap:Snap 應用框架的程式文件
- /srv:包含系統存儲服務的相關數據
- /sys:記錄與系統核心相關的信息
- /tmp:存放臨時文件
- /usr:存放用戶使用的絕大部分用戶命令以及應用程式等信息
- /var:保存具有可變性質的程式文件