LinuxとUnixだけでなく、Windowsでも、プログラム|アプリケーション|ソフトウェアを任意のディレクトリにインストールできることを理解しています。また、パッケージがディストリビューションのパッケージシステムを使用してインストールされている場合、ファイルは正しい場所に配置されます。
ただし、ソフトウェアのインストール時に、ファイルを配置するためのパスを要求する場合があります。 Linuxディストリビューションの場合、このデフォルトの場所はどこですか(C:\Program Files
またはC:\progra~1
相当)?さまざまなディストリビューションでは違いますか?はいの場合、これはRHEL
、Suse
およびUbuntu
のどこにありますか?
Linux Documentation Project には Linuxファイルシステム階層の説明 があり、さまざまなフォルダーとその(部分的に歴史的な)意味を説明しています。
Xenoterracideがすでに指摘したように/bin
および/opt
は、Windowsの「Program Files」と比較できる標準のディレクトリです。
/bin
には、システム管理者と非特権ユーザーの両方に役立ついくつかの便利なコマンドが含まれています。通常、bash
、csh
などのシェルと、cp
、mv
、rm
などの一般的に使用されるコマンドが含まれます。 、cat
、ls
。
( TLDPから引用 )
/opt
は、デフォルトのインストールに含まれていないすべてのソフトウェアおよびアドオンパッケージ用に予約されています。たとえば、StarOffice、Kylix、Netscape Communicator、WordPerfectのパッケージは通常ここにあります。
( TLDPから引用 )
直接対応するものはありません。ディレクトリ構造は大きく異なります。 Windowsでは、関連するすべてのファイル(C:\Program Files\MyProgram
など)を含むインストール済みのパッケージ/ソフトウェアごとに1つのディレクトリがあります。 Linuxでは、各ソフトウェアは、ファイルタイプやその他のルールに従って、多くのディレクトリに「分散」しています。
例として、xscreensaver
プログラムに関連するさまざまなファイルがインストールされている場所を調べることができます。
/etc/pam.d/xscreensaver
/etc/xscreensaver
/etc/xscreensaver/README
/usr/bin/xscreensaver
/usr/bin/xscreensaver-command
/usr/bin/xscreensaver-demo
/usr/bin/xscreensaver-gl-helper
/usr/share/X11/app-defaults/XScreenSaver
/usr/share/applications/xscreensaver-properties.desktop
/usr/share/doc/packages/xscreensaver
/usr/share/doc/packages/xscreensaver/README
/usr/share/locale/ca/LC_MESSAGES/xscreensaver.mo
/usr/share/locale/da/LC_MESSAGES/xscreensaver.mo
/usr/share/locale/de/LC_MESSAGES/xscreensaver.mo
[ ... ]
/usr/share/locale/zh_TW/LC_MESSAGES/xscreensaver.mo
/usr/share/man/man1/xscreensaver-command.1.gz
/usr/share/man/man1/xscreensaver-demo.1.gz
/usr/share/man/man1/xscreensaver.1.gz
/usr/share/man/man6/xscreensaver-gl-helper.6x.gz
/usr/share/pixmaps/xscreensaver.xpm
/usr/share/xscreensaver
/usr/share/xscreensaver/glade
/usr/share/xscreensaver/glade/screensaver-cmndln.png
/usr/share/xscreensaver/glade/screensaver-colorselector.png
[ ... ]
心配しないでください。通常、インストーラーがどこにインストールするかを尋ねるとき、正しい答えは次のいずれかです:/
、/opt
、/usr
、/usr/local
ご覧のとおり、xscreensaver
のほとんどすべての(1)ファイルは、/usr
の実行可能ファイル、/usr/bin
のマニュアルページ、/usr/share/man
のドキュメントなど、いくつかの単純なルールに従って/usr/share/doc/packages/PROGRAMNAME
の下にインストールされます。
インストーラーがインストールを要求する場合、prefix
、通常はインストール先のbaseパスにする必要がありますプログラム。私のxscreensaver
の例では、/usr
です。
単純なルールとして、/
には、システムの起動に必要なプログラムのみを含める必要があります(C:\windows\system32
として)。/usr/local
には、その一意のコンピューターでのみ必要なプログラムを含める必要があります。/opt
(2)すべてオプションプログラム非標準のディレクトリ構造と/usr
すべてのstandardソフトウェアがあります。
いずれにせよ、これらすべてのルールを詳細に定義するstandardが存在します。 Filesystem Hierarchy Standard
(1)システム全体の構成ファイルは/etc
に存在する必要があります
(2)Linuxではかなり時代遅れ
通常、/bin
、/usr/bin
、/usr/local/bin
、または/opt/bin
。 /usr/bin
と/opt/bin
はプログラムファイルに最も近いと思います。通常、これらはシステム管理者によってインストールされるシステムクリティカルでないバイナリ用ですが、ウィンドウとは異なり、これらの両方にはパッケージマネージャーでインストールされたプログラムが含まれています。ここで、/usr/local/bin
は、ディストリビューション以外のパッケージソフトウェア用です。 /bin
は、/bin/sh
などのシステムクリティカルなバイナリ用です。
man hier
「ファイルシステム階層の説明」です。
他の人が指摘したように、パッケージマネージャを介してインストールされたプログラムは、いくつかのディレクトリに分散しています。通常、バイナリは/usr/bin
にありますが、システム全体の構成ファイルは/etc
にあります。
アプリケーションがパッケージマネージャー経由でインストールされていない場合、ファイルはパッケージマネージャーに干渉しない場所にインストールする必要があります。この場所は/usr/local
です。
インストールパスを求められた場合、最も一般的な選択肢は/usr/local/appname
です。
タイプecho $PATH
ターミナルで、シェルがコマンドを見つけるために探すパスを確認します。印刷順にファイルをチェックします。
まあ、/bin
とsbin
にすべてのソリューションが含まれているわけではありません。これらは主にシステムコマンド(つまり、システムで使用されるコマンド)を保持しているためです。
/usr/bin
は、理想的にはUNIXの世界の"Program Files"
と呼ぶことができます。 /opt
については、インストールにその場所を使用することを選択したパッケージはほとんどありません。同じことは、/etc/
または/var
を場所として使用するパッケージに適用されます