答え1
ソースからコンパイルされたバイナリを「インストール」するには、次のディレクトリにバイナリを配置するのが最善です。
/usr/local/bin
一部のシステムでは、このパスはすでにPATH変数にあります。そうでない場合は、構成ファイルの1つでPATH変数を調整して追加できます。~/.bashrc ~/.profile
PATH=${PATH}:/usr/local/bin
dd
ファイルやデバイスなど、ソースの正確なサイズのブロックをコピーするために主に使用される低レベルコピーツールです。
cp
-r
権限を保持するオプションを使用してファイルとディレクトリを繰り返しコピーする一般的なコマンドです-p
。
install
ほとんどと似ていますcp
が、個別に使用することなく、ターゲットファイルのプロパティを直接設定するオプションを提供しますchmod
。
cp
ファイルを作成し、/usr/local/bin
必要に応じて変数を調整します。PATH
これが私がすることです。
答え2
install
との主な違いcp
は、ターゲットファイルがすでに存在する場合、install
最初にリンクが解除されることです。
この違いはマニュアルページに記載されていません。他の回答に記載されている内容も重要です。どちらのプログラムもオプションが異なり、GNUにはinstall
BSDとは異なるオプションがあるため、install
ポータブルMakefileは共通のサブセットに制限されます。
切断(rm
beforeを介しても実行できますcp
)が重要な理由は何ですか? 2つのハードリンクを持つファイルがあり、ハードリンクのいずれかを使用して変更すると、ファイルシステムの他の場所でも変更されます。ただし、ハードリンクの1つを最初に削除して変更されたファイルに置き換えると、元のバージョンは別の場所に残ります。
より可能性の高いシナリオは、使用しているプログラムまたはライブラリを更新することです。まず、バイナリのリンクを解除しても、実行中のプログラムには影響しません。詳細を含む良い記事は次のとおりです。 http://en.chys.info/2009/05/install-vs-cp-and-mmap/
答え3
コピーファイルをインストールするには、デフォルトモード755を使用します。
ファイルの所有者、グループ、および/またはファイルのモードを設定するようにインストールを構成できます。
ソースファイルを交換する前にバックアップするようにインストールを構成できます。