web-dev-qa-db-ja.com

すべてのユーザーのソフトウェアと実行可能ファイルをインストールする場所

デフォルトでは、一部のアプリケーションは/ usr/local/binにインストールされますが、ユーザーを変更すると、そのユーザーはこのアプリケーションにアクセスできますか?/optを使用する必要があることをここで読んでいます(別の質問)。しかし、デフォルトで/ usr/local/binに入るバイナリーは?/opt/binはありませんか?

15
Jiew Meng

通常、手動で何かをインストールしようとする必要はありません。ほとんどすべての場合、.debパッケージがあります。提案用のグーグルが1つもない場合(buntuにOracle JDKをインストールする方法)。これがあなた自身のソフトウェアである場合、 buntu Packaging Guide をチェックして、Ubuntuに適切なものを入れる方法のヘルプを参照してください。

とにかくする必要がある場合、バイナリを/ opt/myappに入れ、実行可能ファイルをln -s /opt/myapp/myappbinary /usr/local/bin/myappbinaryとリンクします。トピックの詳細を知りたい場合は、ターミナルでman hierと入力します。 / usr/bin/ usr/local/binの違いはそこで説明されています。いずれにせよ、両方のパスは$ PATH環境変数にあります。つまり、そこに置いたバイナリは、完全なパスではなく、バイナリの名前を与えるだけで誰でも実行可能になります。したがって、上記の例を使用すると、フルパス/opt/myapp/myappbinaryを指定する代わりに、myappbinaryを使用してプログラムを実行できます。

19
mniess

/ usrは誰でも読めるので、いいえ、他のユーザーがプログラムを実行できるという問題はありません。/usr/localは、ソースコードから自分でコンパイルするアプリケーションの場所です。パッケージマネージャーを介してインストールされたプログラムは他の場所に移動します。/optの目的を見たことはありませんが、それは80年代の古いAT&T Sys V時代のキャリーオーバーだと思います。

7
psusi

Linux-flavourに応じて、手動で何かをインストールするのに適した場所は異なる場合があります。手作業で行う場合は、READMEが示唆することを実行してください。

新しいユーザーを作成し、古いユーザーが新しいプログラムにアクセスするために何もする必要がなかった場合、新しいユーザーもそうしません。

ただし、自由に/ opt/binを作成し、それをpathに含めることができますが、なぜそうする必要があるのでしょうか?または/ flip/flop/funky/bin。または、どこかから、すでにPATHに含まれているディレクトリにリンクします。

0
user unknown