補充說明
依變動的程度隔開,自成體系。
Linux 的檔案系統階層,可分為三種:「系統管理用」「公用」「使用者私用」。依變動頻繁的程度,規劃在不同權限的體系下,避免破壞系統結構。
例如程式指令的存放位置有如下幾種:
sbin、etc、lib | 系統管理用的工具 |
bin | 系統內建的共用指令 |
/usr/local/bin | 額外安裝的公用程式 |
/home/[username]/.local/bin | 使用者安裝給自己用的軟體 |
越往上一層的資料夾,越不會被使用者更動。當系統因為使用者頻繁更動,導致運作不穩時,可由最下層開始砍掉重建,降低對上層的影響。
media 與 mnt
早期並沒有 media,現在則習慣用它取代 mnt……嗯,我覺得這樣很OK,不需要再吹毛求疵,硬要分別哪些裝置是可插拔或自動掛載?哪些裝置是已放著來手動掛載?
/usr/bin 與 /usr/local/bin 與 /opt
想裝載的應用軟體,是與 GPL 開源軟體格格不入的閉源軟體,就丟在 /opt 裡面,避免跟 /usr/bin 混放在一起。
不過 Kubuntu 的習慣,則是將 KDE 專屬的軟體放在 /opt 裡面,當與不相容的環境衝突時,方便使用者隔離開來使用。
所以這沒有絕對性,自己喜歡哪種做法就去做~
至於 /usr/bin 與 /usr/local/bin 的區別,前者有「照標準做法安裝起來、大家一致推薦使用的軟體」的意味,後者有「依自行喜好安裝進來、有興趣的人也能使用」的意味。
這也不是硬性規定,純粹只是說有這樣的「意味」而已。
不要把程式安裝在 /tmp 裡面就好,因為重灌或升級作業系統時,大家共識就是裡面的東西可以移除。