Linuxファイルシステム


13

Linuxでのファイルの場所の規則は何ですか?これまでのところ、私は何とか推測できました:

/ proc(実行中のプロセスへの参照)

/ dev(すべてのハードウェアへの参照)

/ etc(構成ファイル)

/ home(ホーム)

/ mnt(マウントされたデバイス)

/ media(CD、USBディスクなどのリムーバブルデバイス)

...しかし、他の部分はまだ不明です、例えば:

ダウンロードしたソースはどこに置きますか?

/ usr / src

/ usr / local / src

コンパイルされたプログラムはどこに置きますか?

/置き場

/ usr / bin

/ usr / local / bin

/ bin/ sbinの違いは何ですか?

分布はどう違いますか?

これらは一つの質問ではないことは承知していますが、すべて一緒に答えるべきだと思います。うまくいけば、他の人も混乱します。

回答:


14

Filesystem Hierarchy Standardを読むことをお勧めします。便利なリファレンスです。

あなたのホームディレクトリはそのほとんどが行くべき場所です。あなたがシステム管理者ではないふりをしてください。システムのアカウントを持っている別の人になりすます。あなたのホームディレクトリ内で、例えば/home/pufferfish、あなたは何でもしたいことができます。 /home/pufferfish/bin/home/pufferfish/lib、および/home/pufferfish/srcすべての従来の選択肢ですが、それのどれも本当に重要ません

コンパイルされたプログラムについては、どのディレクトリ/ディレクトリを使用する場合でも、スクリプト上または実行可能ファイルの完全なパスを入力せずに実際に実行できるように、PATH上にあることを確認してください。

ディストリビューションはそれほど違いはありません。1つのパッケージマネージャーがにバイナリをインストールし/usr/bin、一部のライブラリが別の場所に移動し、別のシステムが別の場所にインストールする可能性があることがわかりました。私は通常、毎回物事がどこに行くかを見つけるためにいくつかの研究を行う必要があります。


6

Unixシステムの世界には、ほとんどの Unixベンダーが従うベストプラクティスを説明するFilesystem Hierarchy Standardと呼ばれる標準があります。* nix環境で多くの時間を費やしている場合、それは良い読み物であり、十分に検討する価値があります。

ファイルシステム階層標準

質問への回答:

/ usr / srcと/ usr / local / srcの両方が機能します。あなたの選択。維持するだけで一貫しています。

/ binは、ユーザーに必要なコマンド用です。そこにカスタムバイナリを配置しません。

/ sbinはシステムバイナリ(通常はsysadminのもの)用です。ブート用のものとfsユーティリティが含まれています。

/ usr / binは、ほとんどのユーザーコマンドが存在する場所であり、通常、ほとんどのLinuxパッケージ管理システムは、ここにバイナリまたは少なくともバイナリへのシンボリックリンクを配置します。

/ usr / local / binは、そのマシンに固有の独自のコンパイル済みコードを置く安全な場所です。


6

たぶん、あなたはこれらを見てみる必要があります:

代替テキスト

代替テキスト


3

/ usr / local /は、このシステムでコンパイルされたソフトウェア用です。これは/ usr /に似ていますが、パッケージからはインストールされていません。

/ sbin / vs / bin /(および/ usr / sbin / vs / usr / bin):sはスーパーユーザーを表します。通常のユーザーが気にする必要のないプログラムであり、実行する権限を持たないことが多いプログラム

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.