1.\" Copyright (c) 1987, 1990, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by the University of 15.\" California, Berkeley and its contributors. 16.\" 4. Neither the name of the University nor the names of its contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.\" From: @(#)install.1 8.1 (Berkeley) 6/6/93 33.\" $FreeBSD$ 34.\" 35.Dd May 7, 2001 36.Dt INSTALL 1 37.Os 38.Sh NAME 39.Nm install 40.Nd install binaries 41.Sh SYNOPSIS 42.Nm 43.Op Fl bCcMpSsv 44.Op Fl B Ar suffix 45.Op Fl f Ar flags 46.Op Fl g Ar group 47.Op Fl m Ar mode 48.Op Fl o Ar owner 49.Ar file1 file2 50.Nm 51.Op Fl bCcMpSsv 52.Op Fl B Ar suffix 53.Op Fl f Ar flags 54.Op Fl g Ar group 55.Op Fl m Ar mode 56.Op Fl o Ar owner 57.Ar file1 ... fileN directory 58.Nm 59.Fl d 60.Op Fl v 61.Op Fl g Ar group 62.Op Fl m Ar mode 63.Op Fl o Ar owner 64.Ar directory ... 65.Sh DESCRIPTION 66The file(s) are copied 67to the target file or directory. 68If the destination is a directory, then the 69.Ar file 70is copied into 71.Ar directory 72with its original filename. 73If the target file already exists, it is 74either renamed to 75.Ar file Ns Pa .old 76if the 77.Fl b 78option is given 79or overwritten 80if permissions allow. 81An alternate backup suffix may be specified via the 82.Fl B 83option's argument. 84.Pp 85The options are as follows: 86.Bl -tag -width indent 87.It Fl b 88Back up any existing files before overwriting them by renaming 89them to 90.Ar file Ns Pa .old . 91See 92.Fl B 93for specifying a different backup suffix. 94.It Fl B Ar suffix 95Use 96.Ar suffix 97as the backup suffix if 98.Fl b 99is given. 100.It Fl C 101Copy the file. 102If the target file already exists and the files are the same, 103then don't change the modification time of the target. 104.It Fl c 105Copy the file. 106This is actually the default. 107The 108.Fl c 109option is only included for backwards compatibility. 110.It Fl d 111Create directories. 112Missing parent directories are created as required. 113.It Fl f 114Specify the target's file flags; see 115.Xr chflags 1 116for a list of possible flags and their meanings. 117.It Fl g 118Specify a group. 119A numeric GID is allowed. 120.It Fl M 121Disable all use of 122.Xr mmap 2 . 123.It Fl m 124Specify an alternate mode. 125The default mode is set to rwxr-xr-x (0755). 126The specified mode may be either an octal or symbolic value; see 127.Xr chmod 1 128for a description of possible mode values. 129.It Fl o 130Specify an owner. 131A numeric UID is allowed. 132.It Fl p 133Preserve the modification time. 134Copy the file, as if the 135.Fl C 136(compare and copy) option is specified, 137except if the target file doesn't already exist or is different, 138then preserve the modification time of the file. 139.It Fl S 140Safe copy. 141Normally, 142.Nm 143unlinks an existing target before installing the new file. 144With the 145.Fl S 146flag a temporary file is used and then renamed to be 147the target. 148The reason this is safer is that if the copy or 149rename fails, the existing target is left untouched. 150.It Fl s 151.Nm 152exec's the command 153.Xr strip 1 154to strip binaries so that 155.Nm 156can be portable over a large 157number of systems and binary types. 158.It Fl v 159Cause 160.Nm 161to be verbose, 162showing files as they are installed or backed up. 163.El 164.Pp 165By default, 166.Nm 167preserves all file flags, with the exception of the 168.Dq nodump 169flag. 170.Pp 171The 172.Nm 173utility attempts to prevent moving a file onto itself. 174.Pp 175Installing 176.Pa /dev/null 177creates an empty file. 178.Sh DIAGNOSTICS 179.Ex -std 180.Sh FILES 181.Bl -tag -width INS@XXXX -compact 182.It Pa INS@XXXX 183If either 184.Fl S 185option is specified, or the 186.Fl C 187or 188.Fl p 189option is used in conjuction with the 190.Fl s 191option, temporary files named 192.Pa INS@XXXX , 193where 194.Pa XXXX 195is decided by 196.Xr mkstemp 3 , 197are created in the target directory. 198.El 199.Sh COMPATIBILITY 200Historically 201.Nm 202moved files by default. 203The default was changed to copy in 204.Fx 4.4 . 205.Sh SEE ALSO 206.Xr chflags 1 , 207.Xr chgrp 1 , 208.Xr chmod 1 , 209.Xr cp 1 , 210.Xr mv 1 , 211.Xr strip 1 , 212.Xr mmap 2 , 213.Xr chown 8 214.Sh HISTORY 215The 216.Nm 217utility appeared in 218.Bx 4.2 . 219.Sh BUGS 220Temporary files may be left in the target directory if 221.Nm 222exits abnormally. 223.Pp 224File flags cannot be set by 225.Xr fchflags 2 226over a NFS file system. Other file systems do not have a concept of flags. 227The 228.Nm 229utility will only warn when flags could not be set on a file system 230that does not support them. 231.Pp 232The 233.Nm 234utility with 235.Fl v 236falsely says a file is copied when 237.Fl C 238snaps hard links. 239