|
» |
|
|
|
NAMEswremove — unconfigure and remove software products SYNOPSISswremove
[XToolkit Options]
[-d|-r]
[-i]
[-p]
[-v]
[-C
session_file]
[-f
software_file]
[-J
jobid]
[-Q
date]
[-S
session_file]
[-t
target_file]
[-x
option=value]
[-X
option_file]
[software_selections]
[@
target_selections] Remarksswremove
supports an interactive user interface (GUI) that can be invoked alone
or by the
sd
command. See
Interactive Operation
below. This command supports operations on remote systems. See
Remote Operation
below. For an overview of all SD commands, see the
sd(5)
man page by
typing
man 5 sd
on the command line.
DESCRIPTIONThe
swremove
command removes
software_selections
from
target_selections
(e.g. root file systems). When removing installed software,
swremove
also unconfigures the software
before it is removed.
The software is not unconfigured when removed from an alternate root directory
since it was not configured during installation.
When removing available software (within a depot),
swremove
also does not perform the unconfiguration task. NOTE :
Selecting a bundle for removal does not always remove all filesets in
that bundle. If a particular fileset is required by another bundle,
that fileset will not be removed. For example, if the bundles
Pascal
and
FORTRAN
both use the fileset
Debugger.Run
and you try to remove
FORTRAN,
the fileset
Debugger.Run
will not be removed because it is also used by the bundle
Pascal.
This prevents the removal of one bundle from inadvertently causing the
removal of filesets needed by another bundle. Remote OperationYou can enable Software Distributor (SD) to manage software on remote
systems. To let the root user from a central SD
controller
(also called the
central management server
or
manager node)
perform operations on a remote
target
(also called the
host
or
agent): - 1)
Set up the root, host, and template Access Control Lists (ACLs) on the
remote machines to permit root access from the controller system. To do
this, run the following command on each remote system: /usr/lib/sw/mx/setaccess controller NOTES:
controller
is the name of the central management server. If remote system is 11.00, make sure SD patch PHCO_22526 or a
superseding patch is installed on remote system before running
setaccess. If remote system is older than 11.00 or for some other
reason does not have
setaccess
in place, copy
setaccess
script from an
11.11 or higher system to the remote system.
- 2)
swinstall,
swcopy,
and
swremove
have enhanced GUI interfaces for remote operations. Enable
the enhanced GUIs by creating the
.sdkey
file on the controller. Use this command: touch /var/adm/sw/.sdkey
NOTE: You can also set up remote access by using the
swacl
directly on the remote machines to grant root or non-root access to
users from the controller system. Interactive Operationswremove
supports a graphical user interface (GUI) or a terminal user interface
(in which screen navigation is done with the keyboard and no mouse) if
your terminal or display cannot support the GUI. To invoke the GUI, type
swremove
on the command line (without command-line arguments) or include
-i
with any other command-line options when you invoke
swremove
from the command line.
The
sd
command provides an interactive interface for monitoring software
jobs. You can also use it to invoke the
swinstall,
swcopy,
or
swremove
GUIs. If you have enabled SD's central management features,
swinstall,
swcopy,
and
swremove
provide enhanced GUIs to support operations on remote machines. See
Remote Operations
above. Removing Patches or Patch Rollback FilesTo remove patch software, rollback files corresponding to the patch
must
be available for rollback. You must remove the base software modified
by the patch. (Removing the base software also removes the patches
associated with that software.) To commit (make permanent) a patch, use the
swmodify
command's
patch_commit
option to remove the files saved for patch rollback, or use the
swinstall
command's
save_patch_files
option to not save them initially. See
swmodify(1M)
and
swinstall(1M)
for more information. Control ScriptsWhen removing installed software, the
swremove
command executes several vendor-supplied scripts (if they exist) during
the removal of the
software_selections.
The
swremove
command supports the following scripts:
- checkremove
a script executed during the analysis of each
target_selection,
it checks to make sure the removal can be attempted.
If this check fails, the software product will not be removed. - preremove
a script executed immediately before the software files are removed. - postremove
a script executed immediately after the software files are removed. - unconfigure
a script executed during the unconfiguration of each
target_selection,
it unconfigures the host for the software (and the software for the host).
The
preremove
and
postremove
scripts are not intended for unconfiguration tasks.
They are to be used for simple file management needs such as
restoring files moved during install.
The
unconfigure
script allows the
swremove
command to unconfigure the hosts on which it has been running
before removing the software specified.
OptionsThe
swremove
supports the following options:
- XToolKit Options
The
swremove
command
supports a subset of the standard
X Toolkit options to control the appearance of the GUI.
The supported options are:
-bg,
-background,
-fg,
-foreground,
-display,
-name,
-xrm,
and
-synchronous.
See the
X(1)
manual page for a definition of these options. - -d
Operate on a depot rather than installed software.
- -r
Operates on an alternate root directory, which must be specified in the
@ target_selections
option. Note that unconfigure scripts are not run when removing
software from an alternate root directory. (This option is not
required for alternate root operations but is maintained for backward
compatibility. See the
Alternate Root Directory and Depot Directory
heading in
sd(5)
for more information.) - -i
Runs the command in interactive mode (Graphical User Interface).
See the
Interactive Operation
and
Remote Operation
headings above for additional details. - -p
Previews a remove task by running the session through the analysis
phase only. - -v
Turns on verbose output to stdout.
(The
swremove
log file is not affected by this option.) Verbose output is controlled
by the default
verbose=x. - -C session_file
Save the current options and operands to
session_file.
You can enter a relative or absolute path with the file name.
The default directory for session files is
$HOME/.sw/sessions/.
You can recall a session file with the
-S
option. - -f software_file
Read the list of
software_selections
from
software_file
instead of (or in addition to) the command line. - -J jobid
Executes a previously scheduled job. This is the syntax used by the
daemon to start the job. - -Q date
Schedules a job for the specified date. You can change the date
format by modifying the file
/var/adm/sw/getdate.templ. - -S session_file
Execute
swremove
based on the options and operands saved from a previous session,
as defined in
session_file.
You can save session information to a file with the
-C
option. - -t target_file
Read the list of
target_selections
from
target_file
instead of (or in addition to) the command line. - -x option=value
Set the session
option
to
value
and override the default value (or a value in an alternate
option_file
specified with
the
-X
option).
Multiple
-x
options can be specified. - -X option_file
Read the session options and behaviors from
option_file.
Operandsswremove
supports two types of operands:
software selections
followed by
target selections.
These operands are separated by the "at"
(@)
character. This syntax
implies that the command operates on "software selections at targets". Software SelectionsThe
selections
operands consist of
software_selections. swremove
supports the following syntax for each
software_selection:
bundle[.product[.subproduct][.fileset]][,version]
product[.subproduct][.fileset][,version]
The
=
(equals) relational operator lets you specify selections
with the following
shell wildcard and pattern-matching notations:
For example, the following expression removes all bundles and
products with tags that end with "man":
Bundles
and
subproducts
are recursive.
Bundles
can contain other
bundles
and
subproducts
can contain other
subproducts.
For example:
swremove bun1.bun2.prod.sub1.sub2.fset,r=1.0
or (using expressions):
swremove bun[12].bun?.prod.sub*,a=HP-UX
The
\*
software specification selects all products. Use this specification
with caution.
The
version
component has the form:
[,r <op> revision][,a <op> arch][,v <op> vendor]
[,c <op> category][,q=qualifier][,l=location]
[,fr <op> revision][,fa <op> arch]
location
applies only to installed software and refers to software installed to
a location other than the default product directory. fr
and
fa
apply only to filesets. r
,
a
,
v
,
c
, and
l
apply only to bundles and products. They are applied to the
leftmost bundle or product in a software specification. The
<op>
(relational operator) component can be of the form:
=,
==,
>=,
<=,
<,
>,
or
!=
which performs individual comparisons on dot-separated fields. For example,
r>=B.10.00
chooses all revisions greater than or equal to
B.10.00.
The system compares each dot-separated field to find
matches. Shell patterns are not allowed with these operators. The
=
(equals) relational operator lets you specify selections with the
shell wildcard and pattern-matching notations:
For example, the expression
r=1[01].*
returns any revision in version 10 or version 11. All version components are repeatable within a single specification (e.g.
r>=A.12,
r<A.20).
If multiple components are used, the selection must match all
components. Fully qualified software specs include the
r=,
a=,
and
v=
version components even if they contain empty strings. No space or tab characters are allowed in a software selection. The software
instance_id
can take the place of the version component. It has the form:
within the context of an exported catalog, where
instance_id
is an integer that distinguishes versions of products and bundles with
the same tag.
Target Selectionsswremove
supports the following syntax for each
target_selection:
The colon
(:)
is required if both a host and directory are specified. EXTERNAL INFLUENCESDefault OptionsIn addition to the standard options, you can change
swremove
behavior and policy options by editing the default values found in:
- /var/adm/sw/defaults
the system-wide default values. - $HOME/.swdefaults
the user-specific default values.
Values must be specified in the defaults file using this syntax: [command_name.]option=value The optional
command_name
prefix denotes one of the SD commands. Using the prefix limits the
change in the default value to that command. If you leave the prefix
off, the change applies to all commands. You can also override default values from the command line with the
-x
or
-X
options: command -x option=value
command -X option_file The following section lists all of the keywords supported by
swremove.
If a default value exists, it is listed after the "=". The policy options that apply to
swremove
are:
- admin_directory=/var/adm/sw (for normal mode)
- admin_directory=/var/home/LOGNAME/sw (for nonprivileged mode)
The location for SD logfiles and the default parent directory for the
installed software catalog. The default value is
/var/adm/sw
for normal SD operations. When SD operates in nonprivileged mode
(that is, when the
run_as_superuser
default option is set to
true):
The default value is forced to
/var/home/LOGNAME/sw. The path element
LOGNAME
is replaced with the name of the invoking user, which SD reads from
the system password file. If you set the value of this option to
HOME/path,
SD replaces
HOME
with the invoking user's home directory (from the system password
file) and resolves
path
relative to that directory. For example,
HOME/my_admin
resolves to the
my_admin
directory in your home directory. If you set the value of the
installed_software_catalog
default option to a relative path, that path is resolved relative to
the value of this option.
SD's nonprivileged mode is intended only for managing applications
that are specially designed and packaged. This mode cannot be used to
manage the HP-UX operating system or patches to it. For a full
explanation of nonprivileged SD, see the
Software Distributor Administration Guide,
available at the
http://docs.hp.com
web site. See also the
installed_software_catalog
and
run_as_superuser
options. - agent_auto_exit=true
Causes the target agent to automatically exit after Execute phase, or after
a failed Analysis phase. This is forced to
false
when the controller is using an interactive user interface, or when
-p
(preview) is used. This enhances network reliability and performance.
The default value of
true
causes the target agent to automatically exit when appropriate. When
set to
false,
the target agent will not exit until the controller ends the session. - agent_timeout_minutes=10000
Causes a target agent to exit if it has been inactive for the
specified time. This can be used to make target agents more quickly
detect lost network connections since RPC can take as long as 130
minutes to detect a lost connection. The recommended value is the
longest period of inactivity expected in your environment. For command
line invocation, a value between 10 minutes and 60 minutes is
suitable. A value of 60 minutes or more is recommended when the GUI
will be used. The default of 10000 is slightly less than 7 days. - allow_split_patches=false
Permits the use of single patch filesets without "sibling" filesets.
In the default state of
false,
removal of a single fileset from a multi-fileset patch automatically
includes any other fileset that are part of the patch, based on the
ancestor filesets of the target fileset. (This behavior applies to
filesets selected directly by the user and to filesets automatically
selected by SD to resolve software dependencies.) When set to
true,
SD allows a single patch fileset to be removed without including the
sibling filesets. This allows a target to contain a patch that has
been "split" into its component filesets. WARNING: Splitting a patch
can create a situation in which one fileset in a sibling group would
be removed by a patch, while the other filesets would not. - auto_kernel_build=true
Normally set to true. Specifies whether the removal of a kernel
fileset should rebuild the kernel or not. If the kernel rebuild succeeds,
the system automatically reboots. If set to false, the system
continues to run the current kernel. If the
auto_kernel_build
option is set to
true,
the
autoreboot
option must also be set to
true.
If the
auto_kernel_build
option is set to
false,
the value of the
autoreboot
option does not matter. - autoreboot=false
Prevents the removal of software requiring a reboot from the
non-interactive interface.
If set to
true,
then this software can be removed and the target system(s) will be
automatically rebooted. An interactive session always asks for confirmation before software requiring
a reboot is removed. If the
auto_kernel_build
option is set to
true,
the
autoreboot
option must also be set to
true.
If the
auto_kernel_build
option is set to
false,
the value of the
autoreboot
option does not matter. - autoremove_job=false
Controls automatic job removal. If the job is automatically removed,
job information (job status or controller/agent log files) cannot be
queried with
swjob. - autoselect_dependents=false
Automatically selects all software that depends on the specified
software. When set to
true,
and any software that other software depends on is selected for removal,
swremove
automatically selects that other software.
If set to
false,
automatic selections are not made to resolve requisites. - autoselect_reference_bundles=true
If
true,
bundles that have the is_sticky attribute set to
true
will be automatically removed when the last of its contents is removed.
If
false,
the sticky bundles will not be automatically removed. - compress_index=false
Determines whether SD commands create compressed INDEX and INFO
catalog files when writing to target depots or roots. The default of
false
does not create compressed files. When set to
true,
SD creates compressed and uncompressed INDEX and INFO files. The
compressed files are named
INDEX.gz
and
INFO.gz,
and reside in the
same directories as the uncompressed files. Compressed files can enhance performance on slower networks, although
they may increase disk space usage due to a larger Installed Products
Database and depot catalog. SD controllers and target agents for
HP-UX 11.01 and higher automatically load the compressed INDEX and
INFO files from the source agent when:
The source agent supports this feature. INDEX.gz
or
INFO.gz
exist on the source depot. INDEX.gz
or
INFO.gz
are not older than the corresponding uncompressed
INDEX or INFO files.
The uncompressed INDEX or INFO file is accessed by the source agent if
any problem occurs when accessing, transferring, or uncompressing the
INDEX.gz
or
INFO.gz
file. - controller_source=
Specifies the location of a depot for the controller to access to
resolve selections. Setting this option can reduce network traffic
between the controller and the target. Use the target selection
syntax to specify the location:
This option has no effect on which sources the target uses and is
ignored when used with the Interactive User Interface. - distribution_target_directory=/var/spool/sw
Defines the default location of the target depot. - enforce_dependencies=true
Requires that all dependencies specified by the
software_selections
be resolved at the
target_selections.
For
swremove,
if a selected fileset has dependents (i.e. other software depends on the
fileset) and they are not selected, do not remove the selected filesets.
If set to
false,
dependencies will still be checked, but not enforced. - enforce_scripts=true
Controls the handling of errors generated by scripts. If
true,
and a script returns an error, the
swremove
operation halts. An error
message appears reporting that the execution phase failed. If
false,
all script errors are treated as warnings, and
swremove
attempts to continue operation. A warning message appears reporting
that the execution succeeded. The message wording identifies whether
the failure occurred in the configure/unconfigure, checkremove,
preremove, or postremove phases. - force_single_target=false
This option applies only to the Interactive User Interface when no
SD-OV license is in effect on a system that is a diskless server. It causes
swremove
to run in a single target mode, even though a diskless server normally causes
swremove
to run in multi-target mode. - installed_software_catalog=products
Defines the directory path where the Installed Products Database (IPD)
is stored. This information describes installed software. When set to
an absolute path, this option defines the location of the IPD. When
this option contains a relative path, the SD controller appends the
value to the value specified by the
admin_directory
option to determine the path to the IPD. For alternate roots, this
path is resolved relative to the location of the alternate root. This
option does not affect where software is installed, only the IPD
location. This option permits the simultaneous installation and removal of
multiple software applications by multiple users or multiple
processes, with each application or group of applications using a
different IPD. Caution: use a specific
installed_software_catalog
to manage a
specific application. SD does not support multiple descriptions of the
same application in multiple IPDs. See also the
admin_directory
and
run_as_superuser
options, which control SD's nonprivileged mode. (This mode is intended
only for managing applications that are specially designed and
packaged. This mode cannot be used to manage the HP-UX operating
system or patches to it. For a full explanation of nonprivileged SD,
see the
Software Distributor Administration Guide,
available at the
http://docs.hp.com
web site.) - job_title=
Specifies an ASCII string giving a title to a job. It is displayed
along with the job ID to provide additional identifying information
about a job when
swjob
is invoked. - log_msgid=0
Adds numeric identification numbers at the beginning of SD logfile
messages:
- 0
(default) No identifiers are attached to messages. - 1
Adds identifiers to ERROR messages only. - 2
Adds identifiers to ERROR and WARNING messages. - 3
Adds identifiers to ERROR, WARNING, and NOTE messages. - 4
Adds identifiers to ERROR, WARNING, NOTE, and certain other
informational messages.
- logdetail=false
Controls the amount of detail written to the log file. When set
to
true,
this option adds detailed task information (such as options specified,
progress statements, and additional summary information) to the
log file. This information is in addition to log information controlled
by the
loglevel
option. See the
loglevel
option and the
sd(5)
manual page for more information. - logfile=/var/adm/sw/swremove.log
This is the default command log file for
the
swremove
command. - loglevel=1
Controls the log level for the events logged to the command logfile, the
target agent logfile, and the source agent logfile. This information
is in addition to the detail controlled by the
logdetail
option.
- 0
provides no information to the logfile. - 1
enables verbose logging to the log files. - 2
enables very verbose logging to the log files.
See the
logdetail
option and the
sd(5)
manual page for more information. - mount_all_filesystems=true
By default, the
swremove
command attempts to automatically mount all filesystems
in the
/etc/fstab
file at the beginning of the analysis phase,
to ensure that all listed filesystems are mounted before proceeding.
This policy helps to ensure
that files which may be on mounted filesystems are available to be
removed. If set to
false,
the mount operation is not attempted, and no check of the current mounts
is performed. - polling_interval=2
Defines the polling interval used by the Interactive UI of the controller. It
specifies how often each target agent will be polled to obtain status
information about the task being performed. When operating across
wide-area networks, the polling interval can be increased to reduce
network overhead. - remove_empty_depot=true
Controls whether a depot is removed once the last product/bundle has been
removed. If the depot is removed, the depot's
swagent.log
and
directory structure are not removed by default. If the
swagent.log
and directory should be removed, the
remove_empty_depot_directory
option must also be set to
true.
Useful to set to false if you want
to retain existing depot ACLs for subsequent depot reuse. - remove_empty_depot_directory=false
Controls whether a depot's
swagent.log
file and directory
are also removed when the depot itself is removed. The
swagent.log
and directory will be removed if this option is set to
true,
the
remove_empty_depot
option is set to
true
and the last product/bundle has been removed from the depot. - rpc_binding_info=ncacn_ip_tcp:[2121] ncadg_ip_udp:[2121]
Defines the protocol sequence(s) and endpoint(s) on which the daemon
listens and the other commands contact the daemon. If the connection
fails for one protocol sequence, the next is attempted. SD supports
both the tcp
(ncacn_ip_tcp:[2121])
and udp
(ncadg_ip_udp:[2121])
protocol sequence on most platforms. See the
sd(5)
manual page (type
man 5 sd)
for more information. - rpc_timeout=5
Relative length of the communications timeout. This is a value in the
range from 0 to 9 and is interpreted by the DCE RPC. Higher values
mean longer times; you may need a higher value for a slow or busy
network. Lower values give faster recognition on attempts to contact
hosts that are not up or not running
swagentd.
Each value is approximately twice as long as the preceding value.
A value of 5 is about 30 seconds for the
ncadg_ip_udp
protocol sequence. This option may not have any noticeable impact
when using the
ncacn_ip_tcp
protocol sequence. - run_as_superuser=true
This option controls SD's nonprivileged mode. This option is ignored
(treated as true) when the invoking user is super-user. When set to the default value of true, SD operations are performed
normally, with permissions for operations either granted to a local
super-user or set by SD ACLs. (See
swacl(1M)
for details on ACLs.) When set to false and the invoking user is local and is
not
super-user, nonprivileged mode is invoked:
Permissions for operations are based on the user's file system
permissions. Files created by SD have the uid and gid of the invoking user, and the
mode of created files is set according to the invoking user's umask.
SD's nonprivileged mode is intended only for managing applications
that are specially designed and packaged. This mode cannot be used to
manage the HP-UX operating system or patches to it. For a full
explanation of nonprivileged SD, see the
Software Distributor Administration Guide,
available at the
http://docs.hp.com
web site. See also the
admin_directory
and
installed_software_catalog
options. - software=
Defines the default
software_selections.
There is no supplied default.
If there is more than one software selection, they must be separated by spaces. - software_view=products
Indicates the software view to be used by the Interactive UI of the
controller. It can be set to
products,
all_bundles,
or a bundle
category tag to indicate to show only bundles of that category. - targets=
Defines the default
target_selections.
There is no supplied default (see
select_local
above).
If there is more than one target selection, they must be separated by spaces. - target_shared_root=
This option applies to HP-UX 10.X only.
Defines the default location of the alternate root directory. - verbose=1
Controls the verbosity of the output (stdout). A value of:
- 0
disables output to stdout. (Error and warning messages
are always written to stderr). - 1
enables verbose messaging to stdout.
- write_remote_files=false
Prevents the removal of files from a remote (NFS) file system. When
set to
false,
files on a remote file system are not removed. If set to
true
and if the superuser has write permission on the remote file system,
the remote files are removed.
Session FileEach invocation of
swremove
defines a task session. The command automatically saves options,
source information, software selections, and target selections before
the task actually commences. This lets you re-execute the command even
if the session ends before the task is complete. You can also save
session information from interactive or command-line sessions. Session information is saved to the file
$HOME/.sw/sessions/swremove.last.
This file is overwritten by each invocation of the command. The file
uses the same syntax as the defaults files. From an interactive session, you can save session information
into a file at any time by selecting the
Save Session
or
Save Session As
option from the
File
menu. From a command-line session, you can save session information by
executing the command with the
-C session__file
option. You can specify an absolute path for a session file. If you do
not specify a directory, the default location is
$HOME/.sw/sessions/. To re-execute a saved session from an interactive session, use the
Recall Session
option from the
File
menu. To re-execute a session from a command-line, specify the session file
as the argument for the
-S
option. When you re-execute a session file, the values in the session file
take precedence over values in the system defaults file. Likewise,
any command-line options and parameters take precedence over the
values in the session file. Software and Target ListsThe
swremove
command supports software and target selection from separate input
files. You can specify software and target selection lists with the
-f
and
-t
options. Software and targets specified in these files are selected
for operation instead of (or in addition to) files listed in the
command line. (See the
-f
and
-t
options for more information.) Additionally, the
swremove
interactive user interface reads a default list of hosts on which to
operate. The list is stored in:
- /var/adm/sw/defaults.hosts
the system-wide default list of hosts - $HOME/.swdefaults.hosts
the user-specific default list of hosts
For each interactive command, target hosts containing roots or depots
are specified in separate lists
(hosts and hosts_with_depots
respectively.) The list of hosts are enclosed in { } braces and
separated by white space (blank, tab and newline). For example:
swremove.hosts={hostA hostB hostC hostD hostE hostF}
swremove.hosts_with_depots={hostS} Environment VariablesThe environment variables that affect the
swremove
command are:
- LANG
Determines the language in which messages are displayed.
If LANG is not specified or is set to the empty string, a
default value of
C
is used.
See the
lang(5)
man page by typing
man 5 sd
for more information. NOTE: The language in which the SD agent and daemon log messages
are displayed is set by the system configuration variable script,
/etc/rc.config.d/LANG.
For example,
/etc/rc.config.d/LANG,
must be set to
LANG=ja_JP.SJIS
or
LANG=ja_JP.eucJP
to make the agent and daemon log messages display in Japanese. - LC_ALL
Determines the locale to be used to override any values for locale
categories specified by the settings of
LANG
or any environment variables beginning with
LC_. - LC_CTYPE
Determines the interpretation of sequences of bytes of text data as
characters (e.g., single-versus multibyte characters in values for
vendor-defined attributes). - LC_MESSAGES
Determines the language in which messages should be written. - LC_TIME
Determines the format of dates
(create_date
and
mod_date)
when displayed by
swlist.
Used by all utilities when displaying dates and times in
stdout,
stderr,
and
logging. - TZ
Determines the time zone for use when displaying dates and times.
Environment variables that affect scripts are: - SW_CATALOG
Holds the path to the Installed Products Database (IPD), relative to
the path in the
SW_ROOT_DIRECTORY
environment variable. Note that you
can specify a path for the IPD using the
installed_software_catalog
default option. - SW_CONTROL_DIRECTORY
Defines the current directory of the script being executed, either
a temporary catalog directory, or a directory within in the
Installed Products Database (IPD).
This variable tells scripts where other control scripts for the software
are located (e.g. subscripts). - SW_CONTROL_TAG
Holds the tag name of the control_file being executed. When packaging
software, you can define a physical name and path for a control file
in a depot. This lets you define the control_file with a name other
than its tag and lets you use multiple control file definitions to
point to the same file. A control_file can query the
SW_CONTROL_TAG
variable to determine which tag is being executed. - SW_LOCATION
Defines the location of the product, which may have been changed from
the default product directory. When combined with the
SW_ROOT_DIRECTORY,
this variable tells scripts where the product files are located. - SW_PATH
A PATH variable which defines a minimum set of commands available for
use in a control script (e.g.
/sbin:/usr/bin). - SW_ROOT_DIRECTORY
Defines the root directory in which the session is operating, either
"/" or an alternate root directory.
This variable tells control scripts the root directory in which the
products are installed. A script must use this directory as a prefix to
SW_LOCATION
to locate the product's installed files.
The configure script is only run when
SW_ROOT_DIRECTORY
is
/. - SW_SESSION_OPTIONS
Contains the pathname of a file containing the value of every option
for a particular command, including software and target
selections. This lets scripts retrieve any command
options and values other than the ones provided explicitly by
other environment variables. For example, when the file pointed to by
SW_SESSIONS_OPTIONS
is made available to a
request
script, the
targets
option contains a list of
software_collection_specs
for all targets specified for the command. When the file pointed to by
SW_SESSIONS_OPTIONS
is made available to other scripts, the
targets
option contains the single
software_collection_spec
for the targets on which the script is being executed. - SW_SOFTWARE_SPEC
This variable contains the fully qualified software specification of
the current product or fileset. The software specification allows the
product or fileset to be uniquely identified.
Additional environment variables that affect scripts for
swremove
are: - PRE_UNIX95
This variable and the
UNIX95
variable are exported with a value that forces "classic" behavior of
swremove
instead of
UNIX95
behavior. For HP-UX 10.30 and later versions, this variable is set to
"1". - SW_SESSION_IS_KERNEL
Indicates whether a kernel build is scheduled for the current
install/remove session. A
TRUE
value indicates that the selected kernel fileset is scheduled for
a kernel build and that changes to
/stand/system
are required.
A null value indicates that a kernel build is not scheduled and that
changes to
/stand/system
are not required. The value of this variable is always equal to the value of
SW_SESSION_IS_REBOOT. - SW_SESSION_IS_REBOOT
Indicates whether a reboot is scheduled for a fileset selected for
removal. Because all HP-UX kernel filesets are also reboot filesets,
the value of this variables is always equal to the value of
SW_SESSION_IS_KERNEL. - SW_SESSION_IS_UPDATE
A value of
1
indicates the SD command was invoked during
an Operating System update.
This variable is set by the
update-ux
command. - UNIX95
This variable, along with the
PRE_U95
variable, is exported with a value that forces "classic" behavior of
swremove
instead of
UNIX95
behavior. For the 10.30 or later release of HP-UX, this variable is
cleared.
SignalsThe
swremove
command catches the signals SIGQUIT, SIGINT, and SIGUSR1. If
these signals are received, the command prints a message, sends a
Remote Procedure Call (RPC) to the agents to wrap up after completion,
and then exits. The agent ignores SIGHUP, SIGINT, and SIGQUIT. It immediately exits
gracefully after receiving SIGTERM, SIGUSR1, or SIGUSR2. Killing the
agent may leave corrupt software on the system, and thus should only
be done if absolutely necessary. Note that when an SD command is
killed, the agent does not terminate until completing the task in
progress. The daemon ignores SIGHUP, SIGINT and SIGQUIT. It immediately exits
gracefully after receiving SIGTERM and SIGUSR2. After receiving
SIGUSR1, it waits for completion of a copy or remove from a depot
session before exiting, so that it can register or unregister depots
if necessary. Requests to start new sessions are refused during this wait. Each agent will complete the removal task (if the execution phase has
already started) before it wraps up. This avoids leaving software in a
corrupt state. Terminal SupportFor in-depth information about terminal support refer to:
The
Software Distributor Administration Guide. Start the GUI or TUI, select the
Help
menu, then select the
Keyboard...
option to access the
Keyboard Reference Guide.
RETURN VALUESAn interactive
swremove
session always returns 0.
A non-interactive
swremove
session returns:
- 0
The
software_selections
were successfully removed. - 1
The remove operation failed on
all
target_selections. - 2
The remove operation failed on
some
target_selections.
DIAGNOSTICSThe
swremove
command writes to stdout, stderr, and to specific log files. Standard OutputAn interactive
swremove
session does not write to stdout.
A non-interactive
swremove
session writes messages for significant events.
These include:
a begin and end session message, selection, analysis, and execution task messages for each
target_selection.
Standard ErrorAn interactive
swremove
session does not write to stderr.
A non-interactive
swremove
session writes messages for all WARNING and ERROR
conditions to stderr. LoggingBoth interactive and non-interactive
swremove
sessions log summary events at the host where the command was invoked.
They log detailed events to the
swagent
logfile associated with each
target_selection. - Command Log
A non-interactive
swremove
session logs all stdout and stderr messages to the the logfile
/var/adm/sw/swremove.log.
Similar messages are logged by an interactive
swremove
session.
The user can specify a different logfile by
modifying the
logfile
option. - Target Log
A
swagent
process performs the actual remove operation at each
target_selection.
When removing installed software,
the
swagent
logs messages to the file
var/adm/sw/swagent.log
beneath the root directory (e.g.
/
or an alternate root directory).
When removing available software (within a depot),
the
swagent
logs messages to the file
swagent.log
beneath the depot directory (e.g.
/var/spool/sw).
You can view command and target log files using the
sd
or
swjob
command. swagentd DisabledIf the
swagentd
daemon has been disabled on the host, it can be enabled
by the host's system administrator by setting the
SW_ENABLE_SWAGENTD
entry in
/etc/rc.config.d/swconfig
to
1
and executing
/usr/sbin/swagentd -r. EXAMPLESPreview the remove of the C and Pascal products installed at the local host:
Remove the C and Pascal products from several remote hosts:
swremove cc pascal @ hostA hostB hostC Remove a particular version of HP Omniback:
swremove Omniback,l/opt/Omniback_v2.0 Remove the entire contents of a local depot:
swremove -d \* @ /var/spool/sw FILES- $HOME/.swdefaults
Contains the user-specific default values for some or all SD
options. If this file does not exist, SD looks for user-specific
defaults in
$HOME/.sw/defaults. - $HOME/.sw/defaults.hosts
Contains the user-specific default list of hosts to manage. - $HOME/.sw/sessions/
Contains session files automatically saved by the SD commands, or
explicitly saved by the user. - /usr/lib/sw/sys.defaults
Contains the master list of current SD options with their default values. - /var/adm/sw/
The directory which contains all of the configurable
and non-configurable data for SD.
This directory is also the default location of log files. - /var/adm/sw/defaults
Contains the active system-wide default values for some or all SD options. - /var/adm/sw/defaults.hosts
Contains the system-wide default list of hosts to manage. - /var/adm/sw/getdate.templ
Contains the set of date/time templates used when scheduling jobs. - /var/adm/sw/products/
The Installed Products Database (IPD), a catalog of all products
installed on a system. - /var/spool/sw/
The default location of a target software depot.
AUTHORswremove
was developed by the Hewlett-Packard Company. SEE ALSOswacl(1M),
swagentd(1M),
swask(1M),
swconfig(1M),
swcopy(1M),
swinstall(1M),
swjob(1M),
swlist(1M),
swmodify(1M),
swpackage(1M),
swreg(1M),
swverify(1M),
install-sd(1M),
sd(4),
swpackage(4),
sd(5). Software Distributor Administration Guide,
available at
http://docs.hp.com. SD customer web site at
http://docs.hp.com/en/SD/.
|