UPDATEP(8,C) AIX Commands Reference UPDATEP(8,C)
-------------------------------------------------------------------------------
updatep
PURPOSE
Updates one or more Licensed Program Products (LPPs).
SYNTAX
one of
+------+
+-| -a |-+
| | -ac | |
| | -ai | | +---------------+ +-----------------+ +------+
+--| | -aci | |--| +-----------+ |--| +-------------+ |--| |--|
| | +------+ | +-| |-+ +-| |-+ +- -q -+
| | +----+ | +- -n user -+ +- -d device -+
| +--| -s |--+
| +----+
|
| one of
updatep ---| +-----+
| | -r |
|---| -rx |---|
| | -c |
| +-----+
|
| one of
| +-----+ +---------------+
+---| -u |--- lpp.name --- vv.rr.llll.ffff ---| +-----------+ |---|
| -ur | +---------------+ +-| |-+
+-----+ vv = version +- -n user -+
rr = release
llll = level
ffff = fix
DESCRIPTION
Warning: Under no circumstances attempt to run more than one installation or
update process at the same time. The primary site must be up when executing
updatep.
Failure to perform these steps may result in a failure in the installation or
update of the active files being serviced.
The updatep command controls the update process for one or more LPPs. It also
lets you determine the status of pending LPP updates and provides documentation
Processed November 8, 1990 UPDATEP(8,C) 1
UPDATEP(8,C) AIX Commands Reference UPDATEP(8,C)
about the updates. You must be a operating with superuser authority to run
this command.
The updatep command supports an apply/commit/reject philosophy. To apply one
or more LPPs, you use the -a or the -ai flags. You must then use either the -c
flag to commit the LPP or the -r flag to reject the LPP. Normally you should
not use -r until you have tested the LPP on your system. If you specify -ac or
-aci, you can apply and commit in one operation. The -r flag must be used
separately. During an apply, updatep normally saves the current versions of
files that are being updated. If needed, these files can be used to do a
recovery or reject.
You are responsible for reserving update save space in the /usr file system.
updatep checks to insure that there is adequate save space in /usr before it
applies an update. If there is insufficient free space, updatep gives you the
option of either ending the command or of allowing it to continue. If you end
the command, you can take action to increase the free space in your /usr file
system. If you continue, no current versions of files are saved and updatep
automatically commits the update, even though you may not have requested a
commit originally. Normally, you should reserve 4000 blocks (2 megabytes) of
free space in the /usr file system for updates.
You cannot use INTERRUPT to stop the updatep command. To stop updatep, press
QUIT WITH DUMP. This should be used only in extreme circumstances since the
state of the system cannot be predicted. For example, some update control
files may need to be deleted. If the program is interrupted, you must run
/etc/lpp/inuconfig to reset the status of the system to what it was before
updatep was issued.
FLAGS
-a[i] Applies the updates for one or more LPPs. If there is a pending
update for any LPP on the system, updatep does not permit an apply.
You must either commit or reject all pending updates before it accepts
another update apply.
The updatep command asks you to select the LPP you wish to update.
After you select a LPP, updatep runs the inudocm command for any
specific update instructions. If it finds any, it copies them into
the file /usr/lpp/lpp_idd/ui.vv.rr.llll., where vv is the version, rr
the release, and llll the level of the LPP. For fixes, this is
/usr/lpp/lpp_idd/ui.vv.rr.llll.ffff, where ffff is the fix number.
Normally you should review instructions before continuing. To restart
the update procedure and ignore the check for existing update
instructions, enter updatep -ai or updatep -aci.
The updatep command applies the update for each LPP by running inuupdt
for each name. After each update, it deletes the
/usr/lpp/lpp_idd/inst_updt directory. It then runs inudocm to check
for any update documentation. If there are changes to any documents
shipped with this update, updatep copies it into the file
/usr/lpp/lpp_idd/me.vv.rr.llll and writes a message.
Processed November 8, 1990 UPDATEP(8,C) 2
UPDATEP(8,C) AIX Commands Reference UPDATEP(8,C)
-c Commits a previous update apply. updatep presents selection
information for LPPs that have pending updates. You select the LPPs
that you want to commit.
Any LPPs that you apply as a group must be committed as a group.
Management control information about the update changes to indicate
that the LPP is committed. updatep deletes the directory that
contains the update recovery information,
/usr/lpp/lpp_idd/inst_updt.save.
-d device
Specifies the input device name. The default input device is
/dev/rfd0. If this is a tape device, it must be the rewind device,
/dev/rmt0rh.
-n user Lets you specify a name in the LPP history file that is responsible
for the LPP. The default is the value of the system variable
$LOGNAME. If you specify user, the first 8 nonblank characters are
stored in the LPP history file.
-q Runs in quiet mode suppressing most of the interactive queries.
-r Rejects a previous update apply for one or more LPPs. updatep
presents selection information for the LPPs that have pending updates.
You select the LPPs to reject.
Any LPPs that are grouped together by the system must be rejected or
applied as a group. Specify -r without -x if you want automatic
recovery of saved files. If you do specify the -x flag, the
management control information about the update reflects that the
update is rejected, but updatep does not recover saved files. To
recover the necessary files, look at the information in
/usr/lpp/lpp_id/inst_updt.save. This flag should be used only by
someone very knowledgeable about the system.
-s Writes status information about all pending LPP commits.
-u lpp_idd vv.rr.llll.ffff
Uncommit takes a committed update to the lpp_idd with version,
release, level and fix numbers equal to vv.rr.llll.ffff and puts it
back in the applied state where it can be either committed or
rejected. Uncommit is only permitted if the requested uncommit is for
the last committed update on the system. Otherwise, if there have
been any updates or installp(s) of any LPP since the requested
uncommit, a list of lpps installed/updated after the requested one is
displayed and the user is asked to first uncommit them.
-x Cancels the automatic recovery of saved files (use with -r).
When the update completes, it is sometimes necessary for the service tools to
take special actions, such as build the kernel or reboot. In these cases, a
Processed November 8, 1990 UPDATEP(8,C) 3
UPDATEP(8,C) AIX Commands Reference UPDATEP(8,C)
special code must be returned to the installation tools via the installation
scripts update or inst_updt.loc. described in the AIX Operating System
Programming Tools and Interfaces. Some codes with local implications are
returned by inst_updt.loc (for example 2, 3, 4, and 5). Codes 5 and 7 are
specific to update. Code 0 and error codes may be returned by either script.
This return code signals the end of the update LPP, and determines what actions
the installation tools perform next. Use one of the following values for a
return code.
Code Description
0 Successful completion. No additional action is needed.
2 Successful completion. The service tools update superblocks and the
inode list and flush the buffers (sync).
3 Successful completion. The service tools build a new kernel. Then
they update superblocks and the inode list and flush the buffers.
Then they instruct the user to reboot the system.
4 Successful completion. The service tools build a new kernel. Then
they update superblocks and the inode list and flush the buffers
before they perform an IPL on the operating system.
5 Update cancelled by the update procedure without errors.
6 Successful completion. The service tools update superblocks and the
inode list and flush the buffers (sync). Then they instruct the user
to reboot the system.
7 The update was cancelled by the update procedure with errors. The
service tools recover the previous state of the system.
Internal Commands
The updatep command uses the inudocm command for update documentation control.
It uses the inuupdt command to apply an update to a single program. inuupdt
runs a program-provided update procedure, update. updatep passes the following
parameters to update procedure:
o The full path name of the apply-list.
o The full path name of the device (file) where the update information is
stored in backup format.
In addition to the commands discussed here, program-provided update procedures
can use all of the internal commands discussed under "installp" Since they are
internal commands, they do a minimum validation of input parameters. Their
purpose is to provide common code for functions frequently needed by most
program-provided procedures. Since these internal commands function as
subcommands, they return exit values rather than issue error messages.
Processed November 8, 1990 UPDATEP(8,C) 4
UPDATEP(8,C) AIX Commands Reference UPDATEP(8,C)
However, messages may come from other system commands that they run. C
Language programmers of update procedures that call these commands can use the
/usr/include/inu21.h file to define the return codes for them.
inudocm
The inudocm command is normally used as an internal command to get copies of
specific update instructions or manual errata information that you can print
out. There may be cases, however, when you would enter this command from the
command line (for example, if you have misplaced the manual errata information
that came with a previous update). You must be a member of the system group to
run this command.
The inudocm command has the following syntax:
inudocm -cu {-d device} {lpp_idd} {level} {-f file}
where lpp_idd specifies the name of the program being checked. It must be
specified unless you use the -f flag. It can be a maximum of 8 characters.
level specifies the current level of lpp_idd. This value must be identical to
the level value for the last committed entry in "/usr/lpp/lpp_idd/lpp.hist".
It must be specified unless you use the -f flag.
FLAGS
-d device
Restores file from this device. device must be the full path name of a
device special file. The default device is /dev/rfd0. You must not
specify this flag if you use the -f flag.
-e Requests the existing manual errata information for lpp_idd from level.
If you select this flag, inudocm uses the ar x command to extract the
archive file /usr/sys/inst_updt/lpp_idd_erata. (If this file is not
present, no information is available.) inudocm extracts any
level-dependent manual errata information files if there are any more
recent than the current level. Selected files are moved to
/usr/lpp/lpp_idd/me.vv.rr.llll.
-f file
Identifies a file that already contains the lpp_idd and the level. Only
updatep itself should use this flag.
-u Requests the existing specific update instructions for lpp_idd from
level. If you select this flag, inudocm uses the ar x command to
extract the archive file /usr/sys/inst_updt/lpp_idd_instr. (If this
file is not present, no information is available.) inudocm extracts any
level-dependent specific update instruction files if there are any more
recent than the current level. Selected files are moved to
/usr/lpp/lpp_idd/ui.vv.rr.llll.
The inudocm command returns the following exit values:
Processed November 8, 1990 UPDATEP(8,C) 5
UPDATEP(8,C) AIX Commands Reference UPDATEP(8,C)
0 Normal return, no error occurred.
1 The system cannot run inudocm.
2 Specific update instruction files were requested but not found.
4 Manual errata information was requested, but none were found.
6 Specific update instructions and manual errata were both requested but not
found.
201
An invalid flag was specified, or the first argument was not e, -eu, or -u.
202
One or more parameters were missing.
204
Too many parameters were entered.
250
The level parameter did not contain exactly 4 characters, or they were not
numeric.
251
An error occurred while attempting to restore /usr/sys/inst_updt/control.
253
The directory /usr/lpp/lpp_idd does not exist.
inuupdt
The inuupdt command provides a common interface for applying an update to a
single program. Normally, updatep runs inuupdt.
The inuupdt command has the following format:
inuupdt -d device current-level new-level lpp_idd
where lpp_idd is the name of a program and current-level specifies the current
maintenance level. new-level is the level of the update to be applied.
lpp_idd can be a maximum of 8 characters and current-level must be identical to
the level value in the /usr/lpp/lpp_idd/lpp.hist file.
/etc/lpp/qproc onsite sitenumber /etc/lpp/qproc
Program to trigger the processing of all pending queue entries on an
individual site. qproc runs on each individual site and processes all
pending updatep or installp actions for that site. qproc first
compares the local queue pointer to the global queue pointer. If local
queue pointer file is not found, it is assumed that the local queue
pointer value is null meaning the site is new and all queue entries are
to be processed. If local queue pointer is less than global queue
Processed November 8, 1990 UPDATEP(8,C) 6
UPDATEP(8,C) AIX Commands Reference UPDATEP(8,C)
pointer, a "local" action is pending. qproc processes the entries one
by one from the entry beginning with entry after the one pointed to by
the local pointer and ending by processing the last queue entry.
/etc/lpp/qinvoke
Program to coordinate when qproc is to run on each site of the
multisite cluster. On the multisite system, this program uses the
command at to set up jobs for each site's qproc to run.
On the single site systems, qproc is run as a part of installp/updatep
because to time synchronization is required for a one site system. In
such cases, qinvoke simply calls qproc.
FILES
See installp command for internal command files.
/usr/include/inu21.h Error code definitions for internal routines.
/usr/lpp/lpp_idd/inst_updt Temporary directory.
/usr/lpp/lpp_idd/inst_updt.save
Directory for saved files.
/usr/lpp/lpp_idd/inst_updt/arp
Program specific control library.
/usr/lpp/lpp_idd/me.vv.rr.llll
Document change file.
/usr/lpp/lpp_idd/ui.vv.rr.llll
Update instruction file.
/usr/lpp/lpp_idd/me.vv.rr.llll.ffff
Document change file for fixes.
/usr/lpp/lpp_idd/ui.vv.rr.llll.ffff
Update instruction file for fixes.
/usr/sys/inst_updt Temporary directory.
/usr/sys/inst_updt/control Update control library.
/usr/sys/inst_updt/inutemp.xx...x
Temporary files.
/usr/sys/inst_updt/lpp_idd_erata
Document change library.
/usr/sys/inst_updt/lpp_idd_instr
Update instruction library.
/usr/sys/inst_updt/updt_cntrl
Temporary file.
RELATED INFORMATION
See the following command: "installp."
See the lpp.hist file in AIX Operating System Technical Reference.
See the discussion of updating programs in AIX Operating System Programming
Tools and Interfaces.
Processed November 8, 1990 UPDATEP(8,C) 7