目錄 | 應放置檔案內容 |
/ | 根目錄 root (/),一般建議在根目錄底下只接目錄,不要直接有檔案在 / 底下。 根目錄是開機的時候系統第一個掛載的 partition ,所以,所有開機過程會用到的檔案, 應該都要放置在這個 partition 當中。舉例來說, /etc, /bin, /dev, /lib, /sbin 這五個次目錄都應該要與根目錄連在一起,不可獨立成為某個 partition 呢! |
/bin, /usr/bin, /usr/local/bin | 除了 /bin 之外, /usr/local/bin, /usr/bin 也是放置『使用者可執行的 binary file 的目錄』喔!舉例來說, ls, mv, rm, mkdir, rmdir, gzip, tar, cat, cp, mount 等等重要指令都放在這個目錄當中。 |
/boot | 這個目錄主要的目的是放置 Linux 系統開機會用到的檔案。 開機會用到什麼呢?沒錯~就是 Linux 的核心檔案。這個目錄底下檔名為 vmlinuz 的就是 Linux 的 Kernel 啦!粉重要的東西! 而如果你的開機管理程式 (loader) 選擇 grub 的話,那麼這個目錄內還有 /boot/grub 這個次目錄呦! |
/dev | 在 Linux 系統上,任何裝置與周邊設備都是以檔案的型態存在於這個目錄當中的。 您只要透過存取這個目錄底下的某個檔案,就等於存取某個裝置囉~ 主要又分為周邊設備 (character device),例如鍵盤、滑鼠等;以及儲存設備 (block device), 例如硬碟、光碟等等。在此目錄下的檔案會多出兩個屬性,分別是 major device number , 與 minor device number 。我們的系統核心就是透過這兩個 number 來判斷裝置的呢! 比要重要的檔案有 /dev/null, /dev/tty[1-6], /dev/ttyS*, /dev/lp*, /dev/hd*, /dev/sd* 等等 |
/etc | 系統主要的設定檔幾乎都放置在這個目錄內,例如人員的帳號密碼檔、 各種服務的啟始檔等等。一般來說,這個目錄下的各檔案屬性是可以讓一般使用者查閱的, 但是只有 root 有權力修改。並且在此目錄下的檔案幾乎都是 ASCII 的純文字檔案哩。 不過, FHS 建議不要放置可執行檔在這個目錄中喔。比較重要的檔案有: /etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11, /etc/fstab, /etc/sysconfig/ 等等。另外,其下重要的目錄有:
|
/home | 這是系統預設的使用者家目錄 (home directory)。在你新增一個一般使用者帳號時, 預設的使用者家目錄都會規範到這裡來。比較重要的是,家目錄有兩種代號喔: ~:代表目前這個使用者的家目錄,而 ~dmtsai :則代表 dmtsai 的家目錄! |
/lib, /usr/lib, /usr/local/lib | 系統會使用到的函式庫放置的目錄。 程式在運作的過程中,可能會呼叫一些額外的功能參數,那需要函式庫的協助! 這些函式庫就放在此處。比較重要的是 /lib/modules 這個目錄內會擺放 kernel 的相關模組喔! |
/lost+found | 系統不正常產生錯誤時,會將一些遺失的片段放置於此目錄下, 通常這個目錄會自動出現在某個 partition 最頂層的目錄下。例如你加裝一棵硬碟於 /disk 中, 那在這個目錄下就會自動產生一個這樣的目錄 /disk/lost+found |
/mnt /media | 這是軟碟與光碟預設掛載點的地方;通常軟碟掛在 /mnt/floppy 下,而光碟掛在 /mnt/cdrom 下,不過也不一定啦!只要你高興,隨便找一個地方來掛載也可以呀!另外,目前也規劃出另一個 /media 的目錄呢!與 /mnt 有點類似啦~ |
/opt | 這是給主機額外安裝軟體所擺放的目錄。舉例來說, FC4 使用的是 Fedora 社群開發的軟體, 如果您今天想要自行安裝新的 KDE 桌面軟體的話,可以將該軟體安裝在這個目錄下的意思。 不過,以前的 Linux 系統中,我們還是習慣放置在 /usr/local 目錄下呢! |
/proc | 這個目錄本身是一個『虛擬檔案系統』喔!他放置的資料都是在記憶體當中, 例如系統核心、形成資訊、周邊設備的狀態及網路狀態等等。因為這個目錄下的資料都是在記憶體當中, 所以本身不佔任何硬碟空間啊!比較重要的檔案例如:/proc/cpuinfo, /proc/dma, /proc/interrupts, /proc/ioports, /proc/net/* 等等。 |
/root | 系統管理員 (root) 的家目錄。之所以放在這裡, 是因為我們提過,系統第一個開機就被掛載的 partition 為 / , 而我們希望 /root 能夠與 / 放在同一塊 partition 上面之故。 |
/sbin, /usr/sbin, /usr/local/sbin | 放置一些系統管理員才會動用到的執行指令,例如: fdisk, mke2fs, fsck, mkswap, mount 等等。與 /bin 不太一樣的地方,這幾個目錄是給 root 等系統管理用的。但是本目錄下的執行檔還是可以讓一般使用者用來『察看』而不能設定喔! |
/srv | 一些服務啟動之後,這些服務所需要取用的資料目錄。舉例來說,WWW 伺服器需要的網頁資料就可以放置在 /srv/www 裡面。 |
/tmp | 這是讓一般使用者或者是正在執行的程序暫時放置檔案的地方。 這個目錄是任何人都能夠存取的,所以您需要定期的清理一下。當然,重要資料不可放置在此目錄啊! |
/usr | 由 FHS 規範的第二層內容,在 /usr 此目錄下,包含系統的主要程式、 圖形介面所需要的檔案、額外的函式庫、本機端所自行安裝的軟體,以及共享的目錄與文件等等, 都可以在這個目錄當中發現。事實上,他有點像是 Windows 作業系統當中的『Program files』與 『WinNT』這兩個目錄的結合!在此目錄下的重要次目錄有:
|
/var | 這個目錄也很重要,也是 FHS 規範的第二層目錄內容。他主要放置的是針對系統執行過程中, 常態性變動的檔案放置的目錄。舉例來說,例如快取檔案 (cache) 或者是隨時變更的登錄檔 (log file) 都是放在這個目錄中的。此外,某些軟體執行過程中會寫入的資料庫檔案, 例如 MySQL 資料庫,也都寫入在這個目錄中!很重要吧!他底下的重要目錄有:
|
你或許可以將你的系統做成這樣的 partition 分佈:
-
/
/boot
/usr
/home
/var
這是比較常見的磁碟分佈情況,其中:
- / 根目錄可以分配約 1 GB 以內;
- /boot 大概在 50 MB 就可以了,因為開機檔案並不大;
- /var 就至少需要 1GB 以上,因為你的 mail 、 proxy 預設的儲存區都在這個目錄中,除非你要將一些設定改變!
- /home 與 /usr 通常是最大的,因為你所安裝的資料都是在 /usr/ 當中,而用戶資料則放置在 /home 當中,因此通常大家都會建議你將所剩下的磁碟空間平均分配給這兩個目錄說! 不過也不一定啦! /usr 大概給個 10G 就很多了~其他的可以都給 /home ,也可以保留一些剩餘空間來作為以後的安裝與設定用啊!
需要特別注意的目錄
在上一節當中我們大約瞭解了各個目錄下所放置的檔案的用途。或許您會看得很吃力,不過,不要擔心, 等到後面的章節看完後,再回來這裡瞧一瞧,就會很清楚的知道每個目錄的意義囉!而這些目錄當中, 有幾個比較有趣的目錄還是需要特別來提醒一下的:
- 建議不可與 root partition 分開的目錄
我們在 安裝 FC4 那個章節裡面,有提到磁碟分割 (partition) 的概念對吧!在 Linux 的安裝裡面,最重要的就是根目錄 / 所在的那個 partition 了。 我們也可以將其他的例如 /home 放在不同的 partition 裡面。那麼是否有『一定』要放在 root partition 內的目錄呢?有啊!那就是: /etc/, /sbin/, /bin/, /dev/ 以及 /lib/ 這幾個目錄了。
為什麼呢?因為我們的 Linux 系統在開機的時候,一開始進行核心載入時, 只會掛載一個 partition ,那就是 / 。但是開機的時候會用到很多的指令與函式庫,舉例來說,要掛載, 就得需要 mount 這支程式,而且我們也需要 init 這支程式,還需要用到很多的設定檔,例如 /etc/inittab 等等。而我們核心的模組則是放置在 /lib 裡面。當然, /dev 是所有裝置放置的目錄, 也需要在開機的時候使用到的。因此,這些目錄都需要跟 / 綁在一起喔! 先有概念即可,下面兩章會跟您介紹所謂的 partition 概念的!
- 建議最好獨立成為單一 partition 的目錄
上面提到的是最好不要跟 / 這個 partition 分離的目錄。至於有些目錄則是因為安全性與特殊功能性, 而希望能夠獨立成為一個自己的 partition 呢!例如: /home, /usr, /var, /tmp 等等。
我們必須要先知道的,系統上的使用者個人家目錄在 /home 裡面, 這個目錄也是可能被使用的最頻繁的目錄之一。此外,為了資源分配較為平均, 我們可能會希望針對每個人限制他可以使用的最大硬碟總量 (quota),在這個前提之下, 您就必須要將 /home 獨立出來,而且最好這個 partition 能夠大一點,尤其是您的 Linux 是作為檔案伺服器 (file server) 時,就更形重要了。
至於 /usr 則是一些程式安裝的目錄,也可以獨立出來的;還有 /var/, 這個目錄由於記錄了相當多的常用資料,讀取真的是很頻繁,所以是『很容易掛點的 partition 一!』 如果能夠將他獨立出來,那麼當 /var/ 真的、萬一、不小心掛點時,就不會影響到其他的 partition , 最起碼能有一定程度的安全性啦!
- 特別重要的幾個目錄
除了針對 partition 的觀念來談目錄的重要性之外,有幾個比較重要的目錄您也需要瞭解一下:
- /etc:這個目錄是系統設定檔放置的地方, 包括您系統上的帳號與密碼 (/etc/passwd, /etc/shadow),還有開機時所要用到的各項設定值 (/etc/sysconfig/*) ,還有各主要的網路服務的設定檔,都在這個目錄中。 意思就是說,如果這個目錄底下的檔案被刪除或者是死掉了,嘿嘿~ 您的系統大概也就需要『很花功夫』的重建了~ ^_^。因此, 一般鳥哥都會定期將這個目錄的所有檔案給他備份下來, 反正這個目錄的大小應該不會超過 50MB 才對,多多備份,有備無患啊!
- /usr/local:雖然說目前已經將這個目錄的重要性移動到 /opt 了, 但是鳥哥還是比較習慣將我自己開發或自行額外安裝的軟體放置在這個 /usr/local 目錄下。 如果您的 Linux 系統是多人共管的話,那麼,養成一個良好的操作習慣是有必要的。 那麼安裝軟體的習慣也要好好建立起來啊~不要隨意安裝呢! 統一放置在 /usr/local 或者是 /opt 底下吧! ^_^
- /var:在上面提過一次,這裡再次強調。 這個目錄是在管理系統運作過程中的重要中間暫存資料的,例如 /var/lib 與 /var/run 。 此外,最終的資料例如郵件 /var/spool/mail 也是放置在這個目錄中~ 另外,幾乎所有服務的登錄檔 (可以記錄誰、什麼時候、由哪裡登入主機、做了什麼事等等資訊!) 都放在 /var/log 這個目錄下,因此,這個目錄也很重要。記得常常去檢查 /var/log/messages 這個檔案是否有異常啊~
- /etc:這個目錄是系統設定檔放置的地方, 包括您系統上的帳號與密碼 (/etc/passwd, /etc/shadow),還有開機時所要用到的各項設定值 (/etc/sysconfig/*) ,還有各主要的網路服務的設定檔,都在這個目錄中。 意思就是說,如果這個目錄底下的檔案被刪除或者是死掉了,嘿嘿~ 您的系統大概也就需要『很花功夫』的重建了~ ^_^。因此, 一般鳥哥都會定期將這個目錄的所有檔案給他備份下來, 反正這個目錄的大小應該不會超過 50MB 才對,多多備份,有備無患啊!