This is info/swbis_swremove.info, produced by makeinfo version 4.13
from stdin.

INFO-DIR-SECTION Individual utilities
START-INFO-DIR-ENTRY
* swremove: (swbis).               list POSIX format packages
END-INFO-DIR-ENTRY

\.  \\!%PB \\!/showpage{}def \\!/tempdict 200 dict def tempdict begin
\\!end % tempdict % \\!PE \\!.  '	br \} '	br \} '	br \} '	br \}


File: swbis_swremove.info,  Node: Top,  Next: NAME,  Up: (dir)

1 swremove" "8
**************

* Menu:

* NAME::
* SYNOPSIS::
* DESCRIPTION::
* OPTIONS::
* USAGE EXAMPLES::
* EXTENDED OPTIONS::
* RETURN VALUE::
* NOTES::
* REQUISITE UTILITIES::
* FILES::
* APPLICABLE STANDARDS::
* SEE ALSO::
* IDENTIFICATION::
* BUGS::


File: swbis_swremove.info,  Node: NAME,  Next: SYNOPSIS,  Prev: Top,  Up: Top

1.1 NAME
========

swremove -- Remove installed software


File: swbis_swremove.info,  Node: SYNOPSIS,  Next: DESCRIPTION,  Prev: NAME,  Up: Top

1.2 SYNOPSIS
============

     swremove  [-d|-r] [-v] [-t targetfile] \\
     [-x option=value]  [-X options_file]  [-W option] \\
     [software_selections]  [@targets]

     swremove -cleansh [options] [@targets]


File: swbis_swremove.info,  Node: DESCRIPTION,  Next: OPTIONS,  Prev: SYNOPSIS,  Up: Top

1.3 DESCRIPTION
===============

swremove removes installed software.  swremove is a distributed utility.
Neither swremove nor any component of swbis is required on the target
host, however, the target host must look like a Unix system at the
shell and command-line utility level.  Remote network connections are
made by ssh.  Ssh is the default but rsh can be selected by a command
line option.

swremove operates on installed software identified by a software
selection and target.


File: swbis_swremove.info,  Node: OPTIONS,  Next: USAGE EXAMPLES,  Prev: DESCRIPTION,  Up: Top

1.4 OPTIONS
===========


-d

     Specify the target is a distribution.

          Note:  This is currently not supported by this implementation.



-f FILE

     Read the list of software selections from FILE.


-p

     Preview mode, establish contact with target host, however, modify
     nothing.


-r

     Indicates that the operation is on installed software at a
     location indicated by the the target.

          Note:  This is the default mode among -d and -r



-t targetfile

     Specify a file containing a list of targets (one per line).


-v

     Increment the verbose level.


-x option=value

     Specify the extended option overriding the defaults file value.


-X FILE

     Specify the extended options filename, FILE,  overriding the
     default filenames.  This option may be given more then once. If
     the resulting specified value is an empty string then reading of
     any options file is disabled.


--help

     Show help (Implementation extension)


-W option[,option,...]

     Specify the implementation extension option.  Syntax: -W
     option[=option_argument[,option...]  Options may be separated by a
     comma.  The implementation extension options may also be given
     individually using the '--long-option[=option_arg]' syntax.


-allow-ambig

     Allows swremove to act on all matching entries.  Without this
     option a software selection that matches more than one installed
     software entry is an error.


-sig-level=N

     Specify number of required GPG signatures, N equal to 0 means don't
     require the catalog to be signed.


-cleansh

     Kill stray or zombied processes that match the pattern "sh
     -s.*_swbis".  These may be caused by a distributed utility
     segfaulting or a signal handling defect in the swbis utility.


-W remote-shell=SHELL

     Defaults File Option: swbis_remote_shell_client Supported shells
     are "ssh" and "rsh", ssh is the default.


-W show-options-files

     Show the complete list of options files and if they are found.


-W show-options

     Show the options after reading the files and parsing the command
     line options.


-W pax-command={tar|pax|star|gtar}

     Set the portable archive command for all operations.  The default
     is "pax".


-W pax-read-command={tar|pax|star|gtar}

     Set the read command for local and remote hosts.


-W remote-pax-read-command={tar|pax|star|gtar}

     Defaults File Option: swbis_remote_pax_read_command


     Set the read command for remote hosts.  This is the command that
     runs on the target (e.g. pax -r, tar xpf -).  The default is "pax".


-W local-pax-read-command={tar|pax|star|gtar}

     Defaults File Option: swbis_local_pax_read_command


     Set the read command for local hosts.  This is the command that
     runs on the target (e.g. pax -r, tar xpf -).  The default is "pax".


-W pax-write-command={tar|pax|star|gtar|swbistar}

     Set the write command for local and remote hosts.  This is the
     command that runs on the target (e.g. pax -w, tar cf -).


-W remote-pax-write-command={tar|pax|star|gtar|swbistar}

     Defaults File Option: swbis_remote_pax_write_command


     Set the write command for remote hosts.


-W local-pax-write-command={tar|pax|star|gtar|swbistar}

     Defaults File Option: swbis_local_pax_write_command


     Set the portable archive write command for local host operations.
     This is the command that runs on the source (e.g. pax -w, tar cf
     -).  The default is "pax".


-W remote-pax-write-command={tar|pax|star|gtar|swbistar}

     Defaults File Option: swbis_remote_pax_write_command


     Set the portable archive write command for remote host operations.
     This is the command that runs on the source (e.g. pax -w, tar cf
     -).  The default is "pax".


-W no-defaults

     Do not read any defaults files.


-W no-getconf

     Defaults File Option: swbis_no_getconf Makes the remote command be
     '/bin/sh -s' instead of the default 'PATH=`getconf PATH` sh -s'.


-W shell-command=NAME

     Defaults File Option: swbis_shell_command NAME may be one of
     "bash", "sh" or "posix" and specifies the remote command run by
     the remote shell.  "posix" is 'PATH=`getconf PATH` sh -s', "bash"
     is "/bin/bash -s", "sh" is "/bin/sh -s", and "ksh" is "ksh -s".
     The default is "posix".


-W use-getconf

     Opposite of --no-getconf.


-W source-script-name=NAME

     Write the script that is written into the remote shell's stdin to
     NAME.  This is useful for debugging.


-W target-script-name=NAME

     Write the script that is written into the remote shell's stdin to
     NAME.  This is useful for debugging.


software_selections

     Refer to the software objects (products, filesets) using software
     spec syntax. (See sw(5) for syntax).


target

     Refers to the software_collection where the software selections
     are to be applied.  Allows specification of host and pathname
     where the software collection is located.  A target that contains
     only one part is assumed to be a hostname.  To force
     interpretation as a path, use a absolute path or prefix with ':'.


     Source and Target Specification and Logic

          Synopsis:
               Posix:
                    host[:path]
                    host
                    host:
                    /path  # Absolute path

               Swbis Extension:
                    [user@]host[:path]
                    [user@]host_port[:path]
                    :path

               Swbis Multi-hop Target Extension:
                    # ':' is the target delimiter
     	       # '_' delimits a port number in the host field

                    [user@]host[@@[user@]host[@@...]][:file]
                    [user@]host_port[@@[user@]host[@@...]][:file]

                    # Using ':', a trailing colon is used to
                    # disambiguate between a host and file.
     	       # For Example,
                    :file
                    host:
                    host
                    host:file
                    host:host:
                    host_port:host_port:
                    host:host:file
                    user@host:user@host:
                    user@host:user@host:host:
                    user@host:user@host:file

          A more formal description:

          target : HOST_CHARACTER_STRING ':' PATHNAME_CHARACTER_STRING
                 | HOST_CHARACTER_STRING ':'
                 | HOST_CHARACTER_STRING
                 | PATHNAME_CHARACTER_STRING
                 | ':' PATHNAME_CHARACTER_STRING   # Impl extension
                 ;

            PATHNAME_CHARACTER_STRING must be an absolute path unless
                            a HOST_CHARACTER_STRING is given.  Allowing
                            a relative path is a feature of the swbis
                            implementation.

                     NOTE: A '.' as a target is an implementation
                           extension and means extract in current
                           directory.

                     NOTE: A '-' indicating stdout/stdin is an
                           implementation extension.

                     NOTE: A ':' in the first character indicates a filename.
                           This is an implementation extension.

            HOST_CHARACTER_STRING is an IP or hostname.

         Examples:
            Copy the  distribution /var/tmp/foo.tar.gz at 192.168.1.10
                   swcopy -s /var/tmp/foo.tar.gz @192.168.1.10:/root


     Implementation Extension Syntax (multi ssh-hop) :
         Syntax:
         %start   wtarget    # the Implementation Extension Target
                             # Note: a trailing ':' forces interpretation
                             # as a host, not a file.
         wtarget   : wtarget DELIM sshtarget
                   | sshtarget
                   | sshtarget DELIM
                   ;
         sshtarget : user '@' target # Note: only the last target
                   | target          # may have a PATHNAME, and only a host
                   ;                 * may have a user
         target   : HOST_CHARACTER_STRING
                  | PATHNAME_CHARACTER_STRING
                  ;
         user     : PORTABLE_CHARACTER_STRING  # The user name

         DELIM    : ':'   # The multi-hop delimiter.
                  ;


File: swbis_swremove.info,  Node: USAGE EXAMPLES,  Next: EXTENDED OPTIONS,  Prev: OPTIONS,  Up: Top

1.5 USAGE EXAMPLES
==================

* Menu:

* Remove everything at 192 168 1 2 from the root directory::
* Preview removal of every package listing every file but modify nothing::
* Remove everything at 192 168 1 2 from the home directory of user 'jailbird' ::
* Remove package foo from the root '/' or elevate your credentials via ssh::
* Show the options::


File: swbis_swremove.info,  Node: Remove everything at 192 168 1 2 from the root directory,  Next: Preview removal of every package listing every file but modify nothing,  Up: USAGE EXAMPLES

1.5.1 Remove everything at 192.168.1.2 from the root directory
--------------------------------------------------------------



       swremove -allow-ambig \\* @ root@192.168.1.2:/


File: swbis_swremove.info,  Node: Preview removal of every package listing every file but modify nothing,  Next: Remove everything at 192 168 1 2 from the home directory of user 'jailbird',  Prev: Remove everything at 192 168 1 2 from the root directory,  Up: USAGE EXAMPLES

1.5.2 Preview removal of every package listing every file, but modify nothing
-----------------------------------------------------------------------------

       swremove -vv -p -allow-ambig \\* @ root@192.168.1.2:/


File: swbis_swremove.info,  Node: Remove everything at 192 168 1 2 from the home directory of user 'jailbird',  Next: Remove package foo from the root '/' or elevate your credentials via ssh,  Prev: Preview removal of every package listing every file but modify nothing,  Up: USAGE EXAMPLES

1.5.3 Remove everything at 192.168.1.2 from the home directory of user 'jailbird'.
----------------------------------------------------------------------------------



       swremove -allow-ambig \\* @ jailbird@192.168.1.2:.


File: swbis_swremove.info,  Node: Remove package foo from the root '/' or elevate your credentials via ssh,  Next: Show the options,  Prev: Remove everything at 192 168 1 2 from the home directory of user 'jailbird',  Up: USAGE EXAMPLES

1.5.4 Remove package foo from the root '/', or elevate your credentials via ssh
-------------------------------------------------------------------------------

       swremove foo @ /
       swremove foo @ root@localhost:/


File: swbis_swremove.info,  Node: Show the options,  Prev: Remove package foo from the root '/' or elevate your credentials via ssh,  Up: USAGE EXAMPLES

1.5.5 Show the options
----------------------



       swremove -show-options


File: swbis_swremove.info,  Node: EXTENDED OPTIONS,  Next: RETURN VALUE,  Prev: USAGE EXAMPLES,  Up: Top

1.6 EXTENDED OPTIONS
====================

Extended options can be specified on the command line using the -x
option or from the defaults file, swdefaults.  Shown below is an actual
portion of a defaults file which show default values.

* Menu:

* POSIX::
* Swbis Implementation::


File: swbis_swremove.info,  Node: POSIX,  Next: Swbis Implementation,  Up: EXTENDED OPTIONS

1.6.1 POSIX
-----------

These options are set in the /usr/lib/swbis/swdefaults or the
~/.swdefaults on the local (management host, host where swremove is
invoked).  These files on the target host are not used.

       autoselect_dependencies       = false
       distribution_target_directory = /
       enforce_dependencies          = false
       enforce_scripts               = true
       installed_software_catalog    = var/lib/swbis/catalog/
       logfile                       = /var/log/sw.log
       loglevel                      = 1
       select_local                  = true
       verbose                       = 1


File: swbis_swremove.info,  Node: Swbis Implementation,  Prev: POSIX,  Up: EXTENDED OPTIONS

1.6.2 Swbis Implementation
--------------------------

These options are set in the /usr/lib/swbis/swbisdefaults or the
~/.swbis/swbisdefaults file.

        swremove.swbis_no_getconf = true # true or false
       swremove.swbis_shell_command = posix # {sh|bash|posix|ksh}
       swremove.swbis_no_remote_kill = false # true or false
       swremove.swbis_local_pax_write_command=tar #{pax|tar|star|gtar}
       swremove.swbis_remote_pax_write_command=tar #{pax|tar|star|gtar}
       swremove.swbis_local_pax_read_command=tar #{pax|tar|gtar|star}
       swremove.swbis_remote_pax_read_command=tar #{pax|tar|gtar|star}
       swremove.swbis_local_pax_remove_command=tar
       swremove.swbis_remote_pax_remove_command=tar
       swremove.swbis_remote_shell_client=ssh
       swremove.swbis_forward_agent=True
       swremove.swbis_sig_level=0


       swremove.swbis_enforce_all_signatures=false


File: swbis_swremove.info,  Node: RETURN VALUE,  Next: NOTES,  Prev: EXTENDED OPTIONS,  Up: Top

1.7 RETURN VALUE
================

0 if all targets succeeded, 1 if all targets failed or internal error,
2 if some targets failed and some succeeded.


File: swbis_swremove.info,  Node: NOTES,  Next: REQUISITE UTILITIES,  Prev: RETURN VALUE,  Up: Top

1.8 NOTES
=========

Multiple ssh-hops is an implementation extension.


File: swbis_swremove.info,  Node: REQUISITE UTILITIES,  Next: FILES,  Prev: NOTES,  Up: Top

1.9 REQUISITE UTILITIES
=======================

The swbis distributed utilities require bash, public domain ksh, or
Sun's /usr/xpg4/bin/sh to be present on the target host.  If the
swbis_shell_command extended option is set to 'detect' you don't have
to know which one is present, otherwise you may specify one explicitly.

A POSIX awk is required, and with the ability to specify several
thousand bytes of program text as a command argument.  GNU awk  works,
as does the ATT Awk book awk, and the awk on BSD systems.  See the
INSTALL file for further details regarding a small issue with the
OpenSolaris (c.2006) awk.

GNU Privacy Guard, gpg is required for verification of package
signatures.

swremove uses rm and rmdir for file and directory removal.

Other utilities required to be in $PATH on the remote host are: dd, pax
(or tar|star|gtar), mkdir, echo, test, sleep, read (if not builtin).


File: swbis_swremove.info,  Node: FILES,  Next: APPLICABLE STANDARDS,  Prev: REQUISITE UTILITIES,  Up: Top

1.10 FILES
==========

     /var/lib/swbis/catalog # Location of installed catalog
     /usr/lib/swbis/swdefaults
     /usr/lib/swbis/swbisdefaults
     $HOME/.swbis/swdefaults
     $HOME/.swbis/swbisdefaults


File: swbis_swremove.info,  Node: APPLICABLE STANDARDS,  Next: SEE ALSO,  Prev: FILES,  Up: Top

1.11 APPLICABLE STANDARDS
=========================

ISO/IEC 15068-2:1999, Open Group CAE C701


File: swbis_swremove.info,  Node: SEE ALSO,  Next: IDENTIFICATION,  Prev: APPLICABLE STANDARDS,  Up: Top

1.12 SEE ALSO
=============

info swbis

swbis(7), sw(5), swlist(8)


File: swbis_swremove.info,  Node: IDENTIFICATION,  Next: BUGS,  Prev: SEE ALSO,  Up: Top

1.13 IDENTIFICATION
===================

swremove(8): The package removal utility of the swbis project.
Author: Jim Lowe   Email: jhlowe at acm.org  Version: 1.12  Last
Updated: 2008-04-18  Copying: GNU Free Documentation License


File: swbis_swremove.info,  Node: BUGS,  Prev: IDENTIFICATION,  Up: Top

1.14 BUGS
=========

swremove is subject to breakage if a user's account on an intermediate
(or terminal) host in a target spec is not configured to use a Bourne
compatible shell. (This breakage may be eliminated by use of the
-no-getconf option as explained above.) swremove does not support
rollback if an error occurs during processing.



Tag Table:
Node: Top357
Node: NAME681
Node: SYNOPSIS820
Node: DESCRIPTION1126
Node: OPTIONS1703
Node: USAGE EXAMPLES10184
Node: Remove everything at 192 168 1 2 from the root directory10651
Node: Preview removal of every package listing every file but modify nothing11029
Node: Remove everything at 192 168 1 2 from the home directory of user 'jailbird'11526
Node: Remove package foo from the root '/' or elevate your credentials via ssh12048
Node: Show the options12513
Node: EXTENDED OPTIONS12749
Node: POSIX13139
Node: Swbis Implementation13865
Node: RETURN VALUE14856
Node: NOTES15107
Node: REQUISITE UTILITIES15281
Node: FILES16275
Node: APPLICABLE STANDARDS16595
Node: SEE ALSO16790
Node: IDENTIFICATION16967
Node: BUGS17290

End Tag Table
