COHERENT manpages
This page displays the COHERENT manpage for install [Install a software update onto COHERENT].
List of available manpages
Index
install -- Command Install a software update onto COHERENT /etc/install [-c] id device ndisks The command install installs an update of the COHERENT system onto your hard disk. id identifies the update to be installed. device is the device from which the update disks will be read. ndisks is the number of disks that comprise the update. Option -c tells install to uncompress compressed files directly from the installation disks, rather than copy the compressed files onto disk and uncompress them there. install reads information about compression formats and options from file /etc/install.u. This switch permits software packages other than COHERENT to use compressed files. Third-Party Software install also provides a standard mechanism by which software developers can install their software onto systems that run COHERENT. The rest of this article discusses how to prepare a software release so that it can be installed using install. For install to be able to install a software distribution, the distribution must consist of a set of mountable floppy disks, each holding a COHERENT file system created by mkfs. This keeps the disks independent of each other and also lets the user to insert the disks in any order. install records the fact that it has read a given disk from the distribution, thus preventing the user from attempting to read a given disk more than once during an installation session. Floppy disks should be built using mkfs. Each disk in the distribution must hold in its root directory a file whose name is of the form: /id.sequence Here, id identifies the release, as described above. Note that id must be formed from the set of upper- and lower-case letters, digits, the period `.', and the underscore character `_', and not exceed nine characters in length. sequence indicates which disk in the distribution this disk is, from one through the total number of disks. install uses the command cpdir to copy each of the distribution disks to directory / on the current system. Therefore, every disk should be ``root based'' (i.e., full path names should be used). Because install is run by the superuser, cpdir preserves the date and time for each file, and preserves ownership and modes. To keep file ownership consistent with COHERENT conventions, make files that are neither setuid nor setgid owned by user bin and group bin. install recreates on your hard disk all directories that it finds on the distribution disks, as needed. Be careful when choosing the ownership and mode of directories because you could inadvertently compromise the security of your users' systems. Preprocessing When you load a disk, install seeks a file named id.disk.pre upon that disk. If it finds such a file, install assumes that that file is a script, copies it into directory /conf, and executes it from there before it copies any files from the disk onto your system. If you are installing COHERENT, it uses the command: id.disk.pre id.disk.arch If you are updating a package rather than installing it, install uses the command: id.disk.pre -u id.disk.arch install always gives the same argument to the .pre script. As its suffix .arch indicates, the argument usually names a file whose contents name files that should be archived install copies the contents of the disk onto your system. install merely passes the name of the .arch file that might exist on the installation disk to the .pre script: it is up to the .pre script to check for the existence of the .arch file, read it, and perform the archiving. Of course, the .pre script can ignore this argument should it choose. For example, if you are installing X Windows onto your COHERENT system, the identifier is CohX. When you load the first disk into your system, install looks for file CohX.1.pre on that disk. If it finds that file, install copies it into directory /conf on your root file system, and invokes it with the command: /conf/CohX.1.pre CohX.arch All of this occurs before install copies any files from that disk onto your system. In this way, files can be archived or otherwise backed up before they are overwritten by the package you are installing onto your system. One last behavior should be noted: if install finds a .pre file on the first disk of the installation kit, it also seeks on that disk a file that has the suffix .supp on that disk. The suffix .supp stands for ``suppression'': normally, it names files that are not to be copied from the release onto your system. It is the flip side of the .arch file. Note that you can mount the disks of a release and edit these .arch and .supp files before you install the package onto your system. In this way, you can protect your system from being damaged by installing new software onto your system. Postprocessing After all disks in a distribution have been successfully copied by the user, install checks for the existence of a file of the form /conf/id.post where id matches the id field found on the install command line. If found, install executes this file to allow special ``postprocessing,'' such as installing manual pages into directory /usr/man or executing installation- specific commands. Before an installation procedure completes its postprocessing, it should remove any id files of the following form from the target system: /conf/id.post /id.sequence Adding Manual-Page Entries As part of building a distribution, you usually must generate pre-processed or ``cooked'' manual-page entries for distribution with your upgrade or add-on package. These should be inserted into the subdirectories of /usr/man, with the name of the subdirectory being specific to your product. This naming convention avoids name-space collisions, should multiple applications use the same name for a manual-page entry. If you install new or additional manual pages, you must update the index file used by the man command to locate manual entries. File /usr/man/man.index on the target file system contains index entries for all manual pages on the system. As part of postprocessing, you must append index information for your manual pages to the end of the existing index file. In addition, file /usr/man/man.help contains the man command's help message. This includes a list of valid topics and some explanatory text. You should also append to this file a brief list of the manual page entries that you have added. For further information on manual pages, see the Lexicon entry for the command man. Logging install logs all partial as well as completed installations in file /etc/install.log. This information includes date/time stamps and the command-line arguments to install. Example The following installs COHERENT update coh.301, which consists of one disk, from a high-density 5.25-inch floppy drive: /etc/install coh.301 /dev/fha0 1 Files /etc/install.log See Also commands, man, mkfs