whi*_*win 22 conventions filenames directory-structure
我想重构我系统上的文件和目录。但是我不确定什么是最佳实践。
阅读完这个问题及其答案后,我认为最重要的部分是保持一致。然而,这就是我被卡住的地方。例如,在 root 中,有诸如/bin
and 之类的目录/usr
,它们都使用小写字母。但是在我的用户目录中/home/foobar/
,已经有一堆目录,例如~/Pictures
,~/Documents
和~/Music
(大写)!
也许这只是因为我使用 Ubuntu,但什么被认为是最佳实践?
Gil*_*il' 16
系统文件的组织取决于操作系统制造商。Linux 发行版大体上遵循Linux 文件系统层次结构标准 (FHS)。作为用户或系统管理员,FHS(以及您的发行版的附加约定)在您需要定位文件或想了解文件在给定位置的情况下的角色时有时会很有用,但它不会限制您,您可以仍然做你想做的事(风险自负)。
在您的主目录中,您几乎可以做任何您想做的事情,但有一个例外:点文件,即.
您的主目录中名称以 a 开头的文件,是配置或状态文件,应用程序要求它们具有特定名称。例如,bash 将始终~/.bashrc
在启动时读取(除非它没有读取但那是另一回事),因此您最好不要将该名称用于其他目的。
该Freedesktop的项目,这主要是为一个共同点侏儒和KDE,定义了几个标准的路径$HOME
:Documents
,Music
,等一些应用程序,如果它们不存在创建这些目录,并使用它们作为默认位置。您可以更改它们的名称,实际上它们应该被翻译成您的语言。管理这些目录的软件组件是xdg-users-dirs
. 您可以通过在 中设置不同的值来更改目录名称~/.config/user-dirs.dirs
。
这里有几个相互矛盾的部分。关于能够为所欲为的评论是正确的,但从长远来看,它也会为您带来更多的工作。
如果您对重新安排主目录之外的任何内容有任何想法,请停止!这比你想象的要复杂得多,你应该不管它。如果你不喜欢它,你应该换一个不同的发行版甚至操作系统。如果都不适合你,你需要自己动手,但你不能只是移动系统目录而不被烧毁。请参阅此问题以了解如果您想走那条路会发生什么。
所以我们回到你的主目录。
首先,请记住,当您想到权限是分层的结构时。为了让某人拥有对给定文件夹的权限,他们至少需要对该文件夹上方的每个文件夹具有执行权限。如果你在你的主目录中有任何你共享的东西,它需要靠近顶部(例如 ~/Music),你想要限制的任何东西都应该在具有有限权限的子文件夹中(例如 ~/.ssh/id_rsa)。
其次,本身没有规则甚至最佳实践,但有约定。许多软件使用默认值,您可能会也可能无法更改这些默认值,但即使您可以更改它们,也很麻烦必须不断进行更改。Gnome,尤其是 Ubuntu 的东西,喜欢名称以大写开头的好文件夹。如果您尝试将“下载”移动到“下载”,您会发现原始文件可能会在过久之前被某些具有假定默认值的程序重新创建。在这些情况下,您必须决定要逆流而上的游泳次数。