.\" Copyright (c) 1987, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" From: @(#)install.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/xinstall/install.1,v 1.16.2.9 2002/07/01 21:01:23 des Exp % .\" .\" $FreeBSD$ .Dd May 7, 2001 .Dt INSTALL 1 .Os .Sh 名称 .Nm install .Nd バイナリのインストール .Sh 書式 .Nm .Op Fl bCcMpSsv .Op Fl B Ar suffix .Op Fl f Ar flags .Op Fl g Ar group .Op Fl m Ar mode .Op Fl o Ar owner .Ar file1 file2 .Nm .Op Fl bCcMpSsv .Op Fl B Ar suffix .Op Fl f Ar flags .Op Fl g Ar group .Op Fl m Ar mode .Op Fl o Ar owner .Ar file1 ... fileN directory .Nm .Fl d .Op Fl v .Op Fl g Ar group .Op Fl m Ar mode .Op Fl o Ar owner .Ar directory ... .Sh 解説 ファイルを指定したファイルもしくはディレクトリへコピーします。 もしもターゲットがディレクトリであれば、 .Ar file は元のファイル名のままで .Ar directory の中にコピーされます。もし指定ファイルがすでに存在している場合、 .Fl b オプションが指定されていれば .Ar file Ns Pa .old にリネームし、そうでない場合には パーミッションが許せば上書きされます。 バックアップ用の別のサフィックスを、 .Fl B オプションの引数で指定可能です。 .Pp 次のオプションを使用可能です: .Bl -tag -width indent .It Fl b 既存のファイルに上書きする前に、 .Ar file Ns Pa .old へリネームして、バックアップします。 バックアップ用の別のサフィックスについては .Fl B を参照してください。 .It Fl B Ar suffix .Fl b 指定時に、 .Ar suffix をバックアップのサフィックスとして使用します。 .It Fl C ファイルをコピーします。 コピー先ファイルがすでに存在しかつ内容が同一である場合には、 ターゲットの修正時刻を変更しません。 .It Fl c ファイルをコピーします。 これがデフォルトです。 .Fl c オプションは、後方互換性のためだけに含まれています。 .It Fl d ディレクトリを作成します。 必要であれば、無い親ディレクトリも作成されます。 .It Fl f ターゲットファイルのファイルフラグを指定します; 指定可能なフラグのリストとその意味は .Xr chflags 1 を参照して下さい。 .It Fl g グループを指定します。数値指定の GID が利用できます。 .It Fl M .Xr mmap 2 の使用を全面的に禁止します。 .It Fl m モードを指定します。デフォルトのモードは rwxr-xr-x (0755) にセットされます。モード指定は 8 進数もしくは シンボリックな値のどちらでも可能です; 指定可能なモードの値については .Xr chmod 1 を参照して下さい。 .It Fl o 所有者を指定します。数値指定の UID が利用できます。 .It Fl p 修正時刻を保存します。 .Fl C (比較してコピー) オプションが指定された場合のようにコピーを行いますが、 ターゲットファイルが存在しないもしくは内容が異なる場合、 ファイルの修正時刻を保存します。 .It Fl S 安全モード。 通常、 .Nm は、新規ファイルをインストールする前に、 既存のターゲットをアンリンクします。 .Fl S フラグを付けると、一時ファイルを使用し、これがターゲットにリネームされます。 こちらの方が安全な理由は、コピーまたはリネームが失敗した場合、 既存のターゲットはそのまま残ることです。 .It Fl s .Nm は .Xr strip 1 コマンドを実行してバイナリをストリップします。 .Nm strip コマンドを別に起動するため、多くのシステムやバイナリ形式に対して 移植性のある方法となっています。 .It Fl v .Nm を冗長にし、インストールもしくはバックアップされるファイルを表示します。 .El .Pp デフォルトでは .Nm は全てのファイルフラグを保存します。ただし .Dq nodump フラグは例外です。 .Pp .Nm ユーティリティは、ファイルをそれ自身に移動しないように試みます。 .Pp .Pa /dev/null をインストールすると、空のファイルを作ります。 .Pp 正常終了時は 0 が返ります。他の場合は 1 が返ります。 .Sh 診断 .Ex -std .Sh 関連ファイル .Bl -tag -width INS@XXXX -compact .It Pa INS@XXXX .Fl S , .Fl C , .Fl p オプションのいずれが使われている時は、一時ファイル名を .Pa INS@XXXX とします。 ここで、 .Pa XXXX 部分は .Xr mkstemp 3 で決定され、ターゲットディレクトリに作成されます。 .El .Sh 互換性 歴史的に、デフォルトでは .Nm はファイルを移動していました。 デフォルトがコピーに変更されたのは、 .Fx 4.4 です。 .Sh 関連項目 .Xr chflags 1 , .Xr chgrp 1 , .Xr chmod 1 , .Xr cp 1 , .Xr mv 1 , .Xr strip 1 , .Xr mmap 2 , .Xr chown 8 .Sh 歴史 .Nm ユーティリティは .Bx 4.2 から登場しました。 .Sh バグ .Nm が異常終了した場合に、 一時ファイルがターゲットディレクトリに残るかも知れません。 .Pp NFS ファイルシステム経由では .Xr fchflags 2 でファイルフラグを設定できません。 他のファイルシステムはフラグの概念がありません。 フラグをサポートしないファイルシステムにおいてフラグ設定に失敗した場合には、 .Nm ユーティリティは警告だけ行います。 .Pp .Nm ユーティリティに .Fl v を指定すると、 .Fl C がハードリンクを扱うときに、コピーをしたと嘘をつきます。