文件和目錄命名約定
我想重構我係統上的文件和目錄。但是我不確定什麼是最佳實踐。
在閱讀了這個問題及其答案後,我認為最重要的部分是保持一致。但是,這就是我卡住的地方。例如,在根目錄中,有 和 等目錄
/bin
,/usr
它們都使用小寫字母。但是在我的使用者目錄/home/foobar/
中,已經有一堆目錄,比如~/Pictures
,~/Documents
和~/Music
(都是大寫的)!也許這只是因為我使用 Ubuntu,但什麼是最佳實踐?
這裡有幾個相互矛盾的部分。關於能夠做任何你想做的事情的評論是真實的,但從長遠來看,它也會為你做更多的工作。
如果您對重新安排主目錄之外的任何內容有任何想法,請停止!這比你想像的要復雜得多,你應該不管它。如果您不喜歡它,您應該更改為不同的發行版甚至作業系統。如果沒有一個適合你,你需要自己動手,但你不能只是移動系統目錄而不被燒毀。請參閱此問題以了解如果您想這樣做會發生什麼。
所以我們來到你的主目錄。
首先,請記住,當您構想權限是分層的結構時。為了讓某人對給定文件夾具有權限,他們至少需要對該文件夾上方的每個文件夾具有執行權限。如果您共享的主目錄中有任何內容,則它需要靠近頂部(例如~/Music),您想要限制的任何內容都應該在具有有限權限的子文件夾中(例如~/.ssh/id_rsa)。
其次,本身沒有規則甚至最佳實踐,但有約定。許多軟體使用預設值,您可能會也可能無法更改,但即使您可以更改它們,也必須經常更改它們是很麻煩的。Gnome,尤其是 Ubuntu 的東西,喜歡以大寫字母開頭的好名字的文件夾。如果您嘗試將“下載”移動到“下載”,您會發現原始文件可能很快就會被某個假定預設值的程序再次創建。在這些情況下,您必須決定要逆潮游泳多少。
系統文件的組織由作業系統製造商決定。Linux 發行版大體上遵循Linux 文件系統層次標準 (FHS)。作為使用者或系統管理員,如果您需要定位一個文件,或者如果您想根據文件的位置了解文件的角色,FHS(以及您的發行版的附加約定)可能會偶爾有用,但它不會限制您,您可以仍然做你想做的事(風險自負)。
在您的主目錄中,您幾乎可以做任何您想做的事情,除了一個例外:點文件,即
.
在您的主目錄中名稱以 a 開頭的文件,是配置或狀態文件,應用程序要求它們具有特定的名稱。例如,bash 在啟動時總是會讀取~/.bashrc
(除非它不啟動,但那是另一回事),因此您最好不要將該名稱用於其他目的。Freedesktop 項目主要是Gnome和KDE的共同點,它在: 、等中定義了一些標準目錄。
$HOME
如果這些目錄不存在,一些應用程序將創建這些目錄,並將它們用作預設位置。您可以更改他們的名字,事實上他們應該被翻譯成您的語言。管理這些目錄的軟體組件是. 您可以通過在 中設置不同的值來更改目錄名稱。Documents``Music
xdg-users-dirs
~/.config/user-dirs.dirs