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











