1. 程式人生 > >Linux 下各個目錄的作用及內容

Linux 下各個目錄的作用及內容

end onf mar isp auto 在外 tmp file 例如

技術分享圖片

在早期的 UNIX 系統中,各個廠家各自定義了自己的 UNIX 系統文件目錄,比較混亂。Linux 面世不久後,對文件目錄進行了標準化,於1994年對根文件目錄做了統一的規範,推出 FHS ( Filesystem Hierarchy Standard ) 的 Linux 文件系統層次結構標準。FHS 標準規定了 Linux 根目錄各文件夾的名稱及作用,統一了Linux界命名混亂的局面。

無論何種版本的 Linux 發行版,桌面、應用是 Linux 的外衣,文件組織、目錄結構才是Linux的內心。

FHS(英文:Filesystem Hierarchy Standard 中文:文件系統層次結構標準),多數 Linux 版本采用這種文件組織形式,FHS 定義了系統中每個區域的用途、所需要的最小構成的文件和目錄同時還給出了例外處理與矛盾處理。 FHS 定義了兩層規範,第一層是, /

下面的各個目錄應該要放什麽文件數據,例如 /etc應該要放置設置文件,/bin/sbin 則應該要放置可執行文件等等。

第二層則是針對 /usr/var 這兩個目錄的子目錄來定義。例如 /var/log 放置系統登錄文件、/usr/share 放置共享數據等等。

FHS 是根據以往無數 Linux 用戶和開發者的經驗總結出來的,並且會維持更新,FHS 依據文件系統使用的頻繁與否以及是否允許用戶隨意改動(註意,不是不能,學習過程中,不要怕這些),將目錄定義為四種交互作用的形態,如下表所示:

技術分享圖片

/:根目錄,一般根目錄下只存放目錄,不要存放件,/etc、/bin、/dev、/lib、/sbin應該和根目錄放置在一個分區中

技術分享圖片

/bin: /usr/bin: 可執行二進制文件的目錄,如常用的命令ls、tar、mv、cat等。

/boot:放置linux系統啟動時用到的一些文件。/boot/vmlinuz 為 linux 的內核文件,以及 /boot/gurb。建議單獨分區,分區大小100M即可

/dev:存放linux系統下的設備文件,訪問該目錄下某個文件,相當於訪問某個設備,常用的是掛載光驅 mount /dev/cdrom /mnt。

/etc:系統配置文件存放的目錄,不建議在此目錄下存放可執行文件,重要的配置文件有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前記得備份。

註:/etc/X11 存放與 x windows 有關的設置。

/home:系統默認的用戶家目錄,新增用戶賬號時,用戶的家目錄都存放在此目錄下,~表示當前用戶的家目錄,~edu 表示用戶 edu 的家目錄。建議單獨分區,並設置較大的磁盤空間,方便用戶存放數據

/lib: /usr/lib: /usr/local/lib:系統使用的函數庫的目錄,程序在執行過程中,需要調用一些額外的參數時需要函數庫的協助,比較重要的目錄為 /lib/modules。

/lost+fount:系統異常產生錯誤時,會將一些遺失的片段放置於此目錄下,通常這個目錄會自動出現在裝置目錄下。如加載硬盤於 /disk 中,此目錄下就會自動產生目錄 /disk/lost+found

/mnt: /media:光盤默認掛載點,通常光盤掛載於 /mnt/cdrom 下,也不一定,可以選擇任意位置進行掛載。

/opt:給主機額外安裝軟件所擺放的目錄。如:FC4使用的Fedora 社群開發軟件,如果想要自行安裝新的 KDE 桌面軟件,可以將該軟件安裝在該目錄下。以前的 Linux 系統中,習慣放置在 /usr/local 目錄下

/proc:此目錄的數據都在內存中,如系統核心,外部設備,網絡狀態,由於數據都存放於內存中,所以不占用磁盤空間,比較重要的目錄有 /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等。

/root:系統管理員root的家目錄,系統第一個啟動的分區為 /,所以最好將 /root和 /放置在一個分區下。

/sbin: /usr/sbin: /usr/local/sbin:放置系統管理員使用的可執行命令,如fdisk、shutdown、mount 等。與 /bin 不同的是,這幾個目錄是給系統管理員 root使用的命令,一般用戶只能"查看"而不能設置和使用。

/tmp:一般用戶或正在執行的程序臨時存放文件的目錄,任何人都可以訪問,重要數據不可放置在此目錄下

/srv:服務啟動之後需要訪問的數據目錄,如 www 服務需要訪問的網頁數據存放在 /srv/www 內。

/usr:應用程序存放目錄,/usr/bin 存放應用程序,/usr/share 存放共享數據,/usr/lib 存放不能直接運行的,卻是許多程序運行所必需的一些函數庫文件。/usr/local: 存放軟件升級包。/usr/share/doc: 系統說明文件存放目錄。/usr/share/man: 程序說明文件存放目錄,使用 man ls 時會查詢 /usr/share/man/man1/ls.1.gz 的內容建議單獨分區,設置較大的磁盤空間

/var:放置系統執行過程中經常變化的文件,如隨時更改的日誌文件 /var/log,/var/log/message:所有的登錄文件存放目錄,/var/spool/mail:郵件存放的目錄,/var/run:程序或服務啟動後,其PID存放在該目錄下。建議單獨分區,設置較大的磁盤空間

一切皆文件

Linux 對數據文件(.mp3、.bmp),程序文件(.c、.h、*.o),設備文件(LCD、觸摸屏、鼠標),網絡文件( socket ) 等的管理都抽象為文件,使用統一的方式方法管理。

文件分類:

1)普通文件( 數據文件 )

普通文件是用於存放數據、程序等信息的文件,一般都長期地存放在外存儲器(磁盤)中。普通文件又分為文本文件和二進制文件。

2)目錄文件

目錄文件是文件系統中一個目錄所包含的目錄項所組成的文件。

3)設備文件

設備文件是用於為操作系統與設備提供連接的一種文件。在Linux系統中將設備作為文件來處理,操作設備就像是操作普通文件一樣。每一個設備對應一個設備文件,存放在 /dev 目錄中。

5)鏈接文件

似於 windows 下的快捷方式,鏈接又可以分為軟鏈接(符號鏈接)和硬鏈接。

6)管道文件

管道文件主要用於在進程間傳遞數據的一種特殊文件。

7)套接口文件

主要用於不同計算機間網絡通信的一種特殊文件。

技術分享圖片

技術分享圖片

Linux 下各個目錄的作用及內容