install コマンドは、ファイルをインストールするためのコマンドです。主にファイルをコピーして、必要に応じてそのアクセス権を設定するために使用されます。Linux では GNU版が、FreeBSD では BSD版が提供されています。基本的な動作は共通していますが、細かなオプションの違いがあります。

基本的な使い方

編集
install [オプション] ソースファイル ターゲットパス

主なオプション(GNU coreutils版)

編集
主なオプション
オプション 説明
-d ディレクトリを作成
-m, --mode=モード コピーしたファイルにアクセス権を設定
-o, --owner=所有者 所有者を設定
-g, --group=グループ グループを設定
-t, --target-directory=ディレクトリ ターゲットディレクトリを指定してインストール
-v, --verbose 詳細情報を表示

ファイルをコピーしてインストール

編集
install file.txt /usr/local/bin

file.txt/usr/local/bin にコピーしてインストール。

アクセス権を設定してインストール

編集
install -m 755 file.txt /usr/local/bin

file.txt/usr/local/bin にコピーし、アクセス権を 755 に設定してインストール。

所有者とグループを指定してインストール

編集
install -o root -g wheel file.txt /usr/local/bin

file.txt/usr/local/bin にコピーし、所有者を root、グループを wheel に設定してインストール。

ディレクトリを作成してインストール

編集
install -d /usr/local/mydir

/usr/local/mydir ディレクトリを作成。

ターゲットディレクトリを指定してインストール

編集
install -t /usr/local/bin file.txt

file.txt を指定したターゲットディレクトリ /usr/local/bin にコピーしてインストール。

FreeBSD 版との違い

編集

FreeBSD でも install コマンドは提供されていますが、GNU coreutils 版といくつか違いがあります。

主な違い:

編集
  1. -o(所有者を設定)オプションの動作が異なる
    • FreeBSD では、install は、-o オプションを使って所有者を変更するには root 権限が必要。
    • 一方、GNU版では、一般ユーザーが所有者を変更することができる場合がある。
  2. -g(グループを設定)オプションの動作が異なる
    • FreeBSD では、-g オプションを使ってグループを変更するには root 権限が必要。
    • GNU版では、一般ユーザーがグループを変更することができる場合がある。
  3. GNU coreutils 版を FreeBSD で使う方法
    • coreutils パッケージをインストールすると ginstall という名前で GNU版 install が使える。
    pkg install coreutils
    ginstall -m 755 file.txt /usr/local/bin  # GNU版の install を使用
    

詳しくは、それぞれの環境で man install を確認してください。