web-dev-qa-db-ja.com

ファイルとディレクトリの命名規則

システムのファイルとディレクトリをリファクタリングしたい。しかし、私はベストプラクティスが何かはわかりません。

読んだ後 この質問とその回答 最も重要な部分は一貫性を持つことだと思います。しかし、これは私が行き詰まっているところです。例えば。ルートには、/bin/usrなどのディレクトリがあり、すべて小文字を使用しています。しかし、私のユーザーのディレクトリ/home/foobar/には、すでに~/Pictures~/Documents~/Musicなどのディレクトリが多数あります(大文字で表記されています)。

たぶんこれは私がUbuntuを使用しているからかもしれませんが、ベストプラクティスと見なされるものは何ですか

22
whirlwin

ここにはいくつかの矛盾する部分があります。やりたいことは何でもできるというコメントは真実ですが、長期的にはもっと多くの仕事をしてくれるでしょう。

ホームディレクトリの外に何かを再配置することについて考えがある場合は、stop!それはあなたが考えるよりずっと複雑であり、あなたはそれをそのままにしておくべきです。気に入らない場合は、別のディストリビューションまたはオペレーティングシステムに変更する必要があります。自分に適さない場合は、自分でロールする必要がありますが、システムディレクトリを移動することはできません。もしあなたがその方法で行きたければ何が起こるかについての考えについては この質問 を参照してください。

だから私たちはあなたのホームディレクトリにダウンしています。

まず最初に、権限が階層的である構造を考えるときに覚えておいてください。誰かが特定のフォルダに対する権限を持つためには、少なくともそのフォルダより上のすべてのフォルダに対する実行権限を持つ必要があります。共有するホームディレクトリに何かがある場合は、それを一番上(たとえば〜/ Music)に置く必要があり、制限するものはすべて、権限が制限されたサブフォルダーにある必要があります(たとえば〜/ .ssh/id_rsa)。

第二に、ルールやベストプラクティス自体はありませんが、慣例があります。多くのソフトウェアはデフォルト値を使用していますが、変更できる場合と変更できない場合がありますが、それらを変更できる場合でも、絶えず行う必要があるのは面倒です。 Gnome、特にUbuntuのものは、大文字で始まる素敵な名前のフォルダーが好きです。 「ダウンロード」を「ダウンロード」に移動しようとすると、おそらくデフォルトが想定されているプログラムによって、元のものが再び作成されすぎてしまう可能性があります。あなたはこれらの場合にあなたがしたい潮に対してどれだけ泳ぐかを決めなければならないでしょう。

8
Caleb

システムファイルの構成は、オペレーティングシステムの作成者次第です。 Linuxディストリビューションは、概して Linuxファイルシステム階層標準(FHS) に従います。ユーザーまたはシステム管理者として、FHS(およびディストリビューションの追加の規則)は、ファイルを見つける必要がある場合、またはファイルの場所を指定してファイルの役割を理解したい場合に役立つことがありますが、制約はありません。それでも、自分の責任で自分のやりたいことをしてください。

ホームディレクトリ内では、ほとんど何でもできますが、1つの例外があります。ドットファイル、つまりホームディレクトリ内の.で始まる名前のファイルは、構成ファイルまたは状態ファイルであり、アプリケーションはそれらを必要とします。特定の名前。たとえば、bashは起動時に常に~/.bashrcを読み取ります(起動しない場合は別の話です)。そのため、その名前を別の目的に使用しない方がよいでしょう。

Freedesktopプロジェクト は、主に Gnome[〜#〜] kde [〜#〜] の共通の基盤であり、いくつか定義されています。 $HOMEの標準ディレクトリDocumentsMusicなど。一部のアプリケーションでは、これらのディレクトリが存在しない場合は作成され、デフォルトとして使用されます場所。あなたは彼らの名前を変えることができ、実際彼らはあなたの言語に翻訳されることになっています。これらのディレクトリを管理するソフトウェアコンポーネントは xdg-users-dirs です。 ~/.config/user-dirs.dirsに異なる値を設定することにより、ディレクトリ名を変更できます。

GNU/Linuxでは、関連する標準はFilesystem Hierarchy Standard(FHS)です。ただし、ユーザーのホームディレクトリ内のディレクトリの命名規則は対象外です。

2
fpmurphy