一. Linux 目錄結構
通常情況下,根檔案系統所佔空間一般應該比較小,因為其中的絕大部分檔案都不需要經常改動,而且包括嚴格的檔案和一個小的不經常改變的檔案系統不容易損壞。
除了可能的一個叫/ vmlinuz標準的系統引導映像之外,根目錄一般不含任何檔案。所有其他檔案在根檔案系統的子目錄中。
Linux 的根目錄下,有如下目錄:
[root@racnode1 /]# ll
drwxr-xr-x 2 root root 4096 10-28 21:22 bin
drwxr-xr-x 4 root root 1024 11-10 23:17 boot
drwxr-xr-x 15 root root 5120 11-12 22:24 dev
drwxr-xr-x 100 root root 12288 11-13 16:17 etc
drwxr-xr-x 5 root root 4096 11-15 10:51 home
drwxr-xr-x 11 root root 4096 10-28 21:22 lib
drwxr-xr-x 7 root root 4096 10-28 21:21 lib64
drwx------ 2 root root 16384 10-28 19:13 lost+found
drwxr-xr-x 2 root root 4096 11-12 09:13 media
drwxr-xr-x 2 root root 0 11-12 09:13 misc
drwxr-xr-x 2 root root 4096 2008-08-08 mnt
drwxr-xr-x 2 root root 0 11-12 09:13 net
drwxr-xr-x 4 root root 4096 10-29 10:56 opt
dr-xr-xr-x 26697 root root 0 11-12 09:10 proc
drwxr-x--- 21 root root 4096 11-12 21:34 root
drwxr-xr-x 2 root root 12288 11-10 23:16 sbin
drwxr-xr-x 2 root root 4096 10-28 19:15 selinux
drwxr-xr-x 2 root root 4096 2008-08-08 srv
drwxr-xr-x 11 root root 0 11-12 09:10 sys
drwxr-xr-x 3 root root 4096 10-28 19:25 tftpboot
drwxrwxrwt 37 root root 4096 11-19 04:03 tmp
drwxr-xr-x 4 root oinstall 4096 11-12 09:44 u01
drwxr-xr-x 16 root root 4096 11-01 10:07 usr
drwxr-xr-x 21 root root 4096 10-28 19:30 var
[root@racnode1 /]# ls
bin dev home lib64 media mnt opt root selinux sys tmp usr
boot etc lib lost+found misc net proc sbin srv tftpboot u01 var
先看一下這個目錄的說明:
(1)/bin : /bin目錄包含了引導啟動所需的命令或普通使用者可能用的命令(可能在引導啟動後)。這些命令都是二進位檔案的可執行程式( bin是binary - -二進位的簡稱),多是系統中重要的系統檔案。
(2)/dev : /dev目錄存放了裝置檔案,即裝置驅動程式,使用者通過這些檔案訪問外部裝置。比如,使用者可以通過訪問/dev/mouse來訪問滑鼠的輸入,就像訪問其他檔案一樣。
(3)/etc : /etc目錄存放著各種系統管理和設定檔,其中包括了使用者資訊檔/etc/passwd,系統初始設定檔案/etc/rc等。linux正是*這些檔案才得以正常地運行。
(4)/etc/rc.d :啟動的設定檔和指令碼
(5)/home :使用者主目錄的基點,比如使用者user的主目錄就是/home/user,可以用~user表示
(6)/lib :標準程式設計庫,/lib目錄是根檔案系統上的程式所需的共用庫,存放了根檔案系統程式運行所需的共用檔案。又叫動態連結共用庫,作用類似windows裡的.dll檔案。 這些檔案包含了可被許多程式共用的代碼,以避免每個程式都包含有相同的子程式的副本,故可以使得可執行檔變得更小,節省空間的。
/lib/modules 目錄包含系統核心可載入各種模組,尤其是那些在恢複損壞的系統時重新引導系統所需的模組(例如網路和檔案系統驅動)。
(7)/sbin: / sbin目錄類似/bin ,也用於儲存二進位檔案。因為其中的大部分檔案多是系統管理員使用的基本的系統程式,所以雖然普通使用者必要且允許時可以使用,但一般不給普通使用者使用。
(8)/tmp: 公用的臨時檔案儲存體點, /tmp 目錄存放程式在運行時產生的資訊和資料。但在引導啟動後,啟動並執行程式最好使用/var/tmp/來代替/tmp ,因為前者可能擁有一個更大的磁碟空間。
(9)/root: 系統管理員的主目錄(特權階級)
(10)/mnt: /mnt目錄是系統管理員臨時安裝( mount )檔案系統的安裝點。程式並不自動支援安裝到/mnt 。/mnt 下面可以分為許多子目錄,如/mnt/ext 可能是使用ext2檔案系統的軟碟機,/mnt/cdrom 光碟機等等。
(11)/lost+found: 這個目錄平時是空的,系統非順利關機而留下“無家可歸”的檔案(windows下叫什麼.chk)就在這裡
(12)/proc: 虛擬目錄,是系統記憶體的映射。可直接存取這個目錄來擷取系統資訊。
(13)/var: 某些大檔案的溢出區,比方說各種服務的記錄檔
(14)/boot:/boot目錄存放引導載入器(bootstrap loader)使用的檔案,如lilo,核心映像也經常放在這裡, 而不是放在根目錄中。但是如果有許多核心映像,這個目錄就可能變得很大,這時使用單獨的檔案系統會更好一些。還有一點要注意的是,要確保核心映像必須在ide硬碟的前1024柱面內。
(15)/usr: 最龐大的目錄,要用到的應用程式和檔案幾乎都在這個目錄。其中包含:
/usr/x11r6 存放x window的目錄
/usr/bin 眾多的應用程式
/usr/sbin 超級使用者的一些管理程式
/usr/doc linux文檔
/usr/include linux下開發和編譯應用程式所需要的標頭檔
/usr/lib 常用的動態連結程式庫和軟體包的設定檔
/usr/man 協助文檔
/usr/src 原始碼,linux核心的原始碼就放在/usr/src/linux裡
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的庫
二. 詳細說明
2.1 /etc檔案系統
/etc 目錄包含各種系統設定檔,下面說明其中的一些。其他的你應該知道它們屬於哪個程式,並閱讀該程式的m a n頁。許多網路設定檔也在/etc 中。
(1). /etc/rc或/etc/rc.d或/etc/rc?.d
啟動、或改變運行級時啟動並執行指令碼或指令碼的目錄。
(2). /etc/passwd
使用者資料庫,其中的域給出了使用者名稱、真實姓名、使用者起始目錄、加密口令和使用者的其他資訊。
(3). /etc/fdprm
磁碟片參數表,用以說明不同的磁碟片格式。可用setfdprm 進行設定。更多的資訊見setfdprm的協助頁。
(4). /etc/fstab
指定啟動時需要自動安裝的檔案系統列表。也包括用swapon -a啟用的swap區的資訊。
(5). /etc/group
類似/etc/passwd ,但說明的不是使用者資訊而是組的資訊。包括組的各種資料。
(6). /etc/inittab
init 的設定檔。
(7). /etc/issue
包括使用者在登入提示符前的輸出資訊。通常包括系統的一段短說明或歡迎資訊。具體內容由系統管理員確定。
(