![a.out ファイル (実行可能ファイル) をコピーすることとアプリケーションをインストールすることの違いは何ですか?](https://rvso.com/image/898931/a.out%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%20(%E5%AE%9F%E8%A1%8C%E5%8F%AF%E8%83%BD%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB)%20%E3%82%92%E3%82%B3%E3%83%94%E3%83%BC%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A8%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%AE%E9%81%95%E3%81%84%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%3F%20.png)
アプリケーション ソフトウェアをインストールすることと、アプリケーションの実行可能ファイル (例: a.out) をコピーすることの違いは何ですか? a.out ファイルを実行すると何らかの結果が得られますが、インストールされたアプリケーションを実行しても何らかの結果が得られます。誰かが「アプリケーションをインストールする」と言っているのと、実行可能ファイルをコピーすることの違いがわかりません。アプリケーションをインストールすると、実際に何が起こりますか? 実行可能ファイルを 1 台のコンピューターから別のコンピューター (同じ OS と類似のハードウェア) にコピーして、そこで実行するだけの場合とどう違うのですか?
答え1
さて、インストールアプリケーションの場合、通常はdpkg
または上位レベルのapt
ファミリーのようなパッケージ マネージャーを使用します。この場合、実行ファイルはパッケージで出荷され、実行ファイルを実行するために必要な追加のライブラリ、マニュアル ページ、開発者ファイル、構成ファイルなども含まれる場合があります。これの利点は、管理者がインストールされている内容を追跡できることと、新しいソフトウェアまたは更新をインストールするときに、新しいソフトウェアが既にインストールされている他のソフトウェアやライブラリと衝突して他のアプリケーションがクラッシュしないようにできることです。
したがって、実行可能ファイルを別のシステムにコピーするだけでもうまくいくかもしれませんが、破損する可能性があるため、お勧めできません。実行可能ファイルを、、、、などのシステム パス以外の場所にコピーするのは安全です。/bin/
この/sbin
ような目的には、およびを使用する/usr/bin
か、または実行可能ファイル用のディレクトリを下に作成してそこに配置することも できます。次に、フル パスで実行可能ファイルを呼び出すか、実行可能ファイルへのパスを環境変数に追加します。/usr/sbin
/usr/local/bin
/usr/local/sbin
/opt
PATH
$ mkdir -p /opt/myapp/bin
$ cp myexec /opt/myapp/bin/
$ /opt/myapp/bin/myexec
または
$ export PATH=$PATH:/opt/myapp/bin
$ myexec
答え2
すべてのUnix系オペレーティングシステム(Ubuntuなど)の基本原則はすべてがファイルですパッケージの内容を見ると、そこには実行ファイルも見つかります。そして、まったく同じ(または少なくとも非常に類似した)ソフトウェアとハードウェアの組み合わせを持つ2台のマシンで(プラットホーム) の場合は、実行可能ファイルを使用するだけで済みます。ただし、ほとんどのプログラムは 1 つの実行可能ファイルだけで構成されているわけではls -R /usr |grep libreoffice
ありません。より複雑なパッケージの例では、すべてのファイルを手動で個別の場所にコピーしたくないですよね。
場合によっては (特に小さなプログラムをテストする場合)、実行可能な実行ファイルを誰かに送信するだけでも意味がありますが、ほとんどの場合、完成品のパッケージを提供する必要があります。
パッケージ マネージャーは通常、依存関係のインストール、インストール済みアプリケーションと PATH のリストへのプログラムの追加も処理し、最後に、新しいバージョンがリリースされたときにプログラムを更新するオプションも提供します。