install コマンドは、ファイルを指定した場所にコピーし、パーミッションや所有者、タイムスタンプを設定できる コマンドです。
主にプログラムやスクリプトをシステムディレクトリに配置する際(ソフトウェアのインストール作業)に使われます。
構文(Syntax)
install [オプション] コピー元 コピー先
install [オプション] コピー元... 目的ディレクトリ
install [オプション] -d ディレクトリ...
主なオプション一覧
| オプション | 説明 | 使用例 |
|---|---|---|
| (なし) | ファイルをコピー | install file.sh /usr/local/bin/ |
-m MODE | パーミッションを指定 | install -m 755 script.sh /usr/local/bin/ |
-o OWNER | 所有者を指定(root権限が必要) | sudo install -o root file /usr/bin/ |
-g GROUP | グループを指定 | sudo install -g staff file /usr/bin/ |
-d | ディレクトリを作成 | install -d -m 755 /usr/local/myapp |
-p | 元ファイルのタイムスタンプを保持 | install -p config.conf /etc/myapp/ |
-s | 実行ファイルをストリップ(不要なシンボル情報を削除してサイズ削減) | install -s myprog /usr/local/bin/ |
-v | 実行した操作を表示 | install -v file /usr/local/bin/ |
実行例
スクリプトをコピーして実行権限を付与
install -m 755 script.sh /usr/local/bin/myscript
所有者を root にしてインストール
sudo install -o root -g root program /usr/bin/
設定ファイルをコピー(タイムスタンプ保持)
install -p config.conf /etc/myapp/
ディレクトリを作成
install -d -m 755 /opt/myapp/data
実行内容を表示
install -v file.txt /usr/local/share/
出力例:
'file.txt' -> '/usr/local/share/file.txt'
エラー例(存在しないファイルをコピー)
install notfound.txt /usr/local/bin/
出力例:
install: cannot stat 'notfound.txt': No such file or directory
関連コマンド
cp: ファイルやディレクトリをコピー(シンプル版)mv: ファイルを移動またはリネームchmod: パーミッションを変更chown: 所有者を変更
備考
installはパッケージ管理システムではなく、ファイルをシステムに配置するための低レベルツール です。- 実行ファイルを
/usr/local/binなどに配置する際に使うのが典型的な用途です。 -sオプションはプログラムサイズを削減できますが、デバッグ情報も削除されるため注意が必要です。
参考
- manページ: man7.org install(1)
- GNU Coreutils: https://www.gnu.org/software/coreutils/

コメント