MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


System Administration Commands                        patchrm(1M)



NAME
     patchrm - remove a Solaris patch package and restore  previ-
     ously saved files

SYNOPSIS
     patchrm [-f] [-G] [-B backoutdir]
          [-C netinstallimage  -R clientrootpath  -S service]
          [-t] patchid


DESCRIPTION
     patchrm removes a  patch  package  and  restores  previously
     saved  files  to  a system running the Solaris 2.x operating
     environment or later Solaris environments (such  as  Solaris
     8)  that  are compatible with Solaris 2.x. patchrm cannot be
     used with Solaris 1 patches. patchrm must be run as root.


     With respect to zones(5), when invoked in the  global  zone,
     by  default, patchrm patches all appropriate packages in all
     zones. Patch removal behavior in a zones environment  varies
     according to the following factors:

         o    use of the -G option (described below)

         o    setting of the SUNWPKGALZONES  variable  in  the
              pkginfo file (see pkginfo(4)).

         o    type of  zone,  global  or  local  (non-global)  in
              patchrm which is invoked


     The  interaction  of  the  factors  above  is  specified  in
     "Interaction of -G and pkginfo Variable in Zones," below.


     When you remove patches from packages on  a  Solaris  system
     with  zones  installed,  you will see numerous zones-related
     messages, the frequency  and  content  of  which  depend  on
     whether  you  invoke  patchrm in a global or local zone, the
     setting of SUNWPKGALZONES, and the use of the -G option.

OPTIONS
     The following options are supported:

     -B backoutdir

         Removes a patch whose backout data has been saved  to  a
         directory  other  than the package database. This option
         is only needed if the original backout  directory,  sup-
         plied  to the patchadd command at installation time, has
         been moved. Specify  backoutdir  as  an  absolute  path



SunOS 5.11          Last change: 20 Jun 2007                    1






System Administration Commands                        patchrm(1M)



         name.


     -C netinstallimage

         Removes the patched files located on the mini root on  a
         Net   Install  Image  created  by  setupinstallserver.
         Specify netinstallimage as the absolute path name to a
         Solaris  2.6  or  compatible version boot directory. See
         EXAMPLES.


     -f

         Forces the patch removal regardless of whether the patch
         was superseded by another patch.


     -G

         Remove patch(es) to packages in the current  zone  only.
         When  used in the global zone, the patch is removed from
         packages in the global zone only and is not removed from
         packages in any existing non-global zone. When used in a
         non-global zone, the patch is removed from  packages  in
         the  non-global  zone  only.  See "Interaction of -G and
         pkginfo Variable in Zones,", below.


     -R clientrootpath

         Locates all patch files generated by patchrm  under  the
         directory   clientrootpath.  clientrootpath  is  the
         directory that contains the bootable root  of  a  client
         from  the server's perspective. Specify clientrootpath
         as the absolute path name to the beginning of the direc-
         tory  tree  under  which  all patch files generated from
         patchrm will be located. -R cannot be specified with the
         -S option.

         Note -

           The root file system of any non-global zones must  not
           be  referenced with the -R option. Doing so might dam-
           age the global zone's file  system,  might  compromise
           the  security of the global zone, and might damage the
           non-global zone's file system. See zones(5).


     -S service

         Specifies   an   alternate   service    (for    example,



SunOS 5.11          Last change: 20 Jun 2007                    2






System Administration Commands                        patchrm(1M)



         Solaris2.3).  This  service  is  part of the server and
         client model, and can only be  used  from  the  server's
         console.  Servers  can  contain shared /usr file systems
         that are created by smosservice(1M). These service areas
         can then be made available to the clients they serve. -S
         cannot be specified with the -R option.


     -t

         Maintains the patchrm  return  codes  from  the  Solaris
         release  prior to Solaris 10. On a system with  zones(5)
         installed, a return code of  0  indicates  success.  Any
         other return code indicates failure.


  Interaction of -G and pkginfo Variable in Zones
     The following list specifies the interaction between the  -G
     option  and  the SUNWPKGALZONES variable (see pkginfo(4))
     when removing a  patch  in  global  and  local  (non-global)
     zones.

     global zone, -G specified

         If any packages  have  SUNWPKGALZONES  set  to  true:
         Error; nothing changes.

         If no  packages  have  SUNWPKGALZONES  set  to  true:
         Remove patch from package(s) in global zone only.


     global zone, -G not specified

         If any packages  have  SUNWPKGALZONES  set  to  true:
         Remove patch from appropriate package(s) in all zones.

         If no  packages  have  SUNWPKGALZONES  set  to  true:
         Remove patch from appropriate package(s) in all zones.


     local zone, -G specified or not specified

         If any packages  have  SUNWPKGALZONES  set  to  true:
         Error; nothing changes.

         If no  packages  have  SUNWPKGALZONES  set  to  true:
         Remove patch from package(s) in local zone only.


OPERANDS
     The following operands are supported:




SunOS 5.11          Last change: 20 Jun 2007                    3






System Administration Commands                        patchrm(1M)



     patchid

         The patch number of a given patch. 104945-02 is an exam-
         ple of a patchid.


EXAMPLES
     The examples in this section assume that patch 104945-02 has
     been  installed  to  the system prior to removal. All of the
     examples are relative to the /usr/sbin directory.

     Example 1 Removing a Patch From a Stand-alone System


     The following example removes a patch from a standalone sys-
     tem:


       example# patchrm 104945-02



     Example 2 Removing a Patch From a Client's System  From  the
     Server's Console


     The following example removes a patch from a client's system
     from the server's console:


       example# patchrm -R /export/root/client1 104945-02




     Note the caveat on the use of the -R option in the  descrip-
     tion of that option, above.


     Example 3 Removing a Patch From a Server's Service Area


     The following example removes a patch from a  server's  ser-
     vice area:


       example# patchrm -S Solaris2.3 104945-02



     Example 4 Removing a Patch From a Net Install Image




SunOS 5.11          Last change: 20 Jun 2007                    4






System Administration Commands                        patchrm(1M)



     The following example removes a patch  from  a  Net  Install
     Image:


       example# patchrm -C /export/Solaris2.6/Tools/Boot 104945-02



EXIT STATUS
     The following exit values are returned:

     0

         Successful completion.


     >0

         An error occurred.


ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Availability                 SUNWswmt, SUNWcsu           
    


DIAGNOSTICS
     The following messages may help in determining some  of  the
     most common problems associated with backing out a patch.

     Message


           prebackout patch exited with return code code.
           patchrm exiting.



         Explanation and Recommended Action

             The prebackout script supplied with the patch exited
             with  a  return code other than 0. Generate a script
             trace of the prebackout script to determine why  the
             prebackout  script  failed. Add the -x option to the



SunOS 5.11          Last change: 20 Jun 2007                    5






System Administration Commands                        patchrm(1M)



             first line of the prepatch script to fix the problem
             and run patchadd again.



     Message


           postbackout patch exited with return code code.
           patchrm exiting.



         Explanation and Recommended Action

             The  postbackout  script  supplied  with  the  patch
             exited  with a return code other than 0. Look at the
             postbackout script to determine why it  failed.  Add
             the  -x  option  to  the  first line of the prepatch
             script to fix the problem, and,  if  necessary,  re-
             exececute the postbackout script only.



     Message


           Only one service may be defined.



         Explanation and Recommended Action

             You have attempted to specify more than one  service
             from  which  to  backout a patch. Different services
             must have their patches backed  out  with  different
             invocations of patchrm.



     Message


           The -S and -R arguments are mutually exclusive.



         Explanation and Recommended Action

             You have specified both a non-native service  and  a
             clientrootpath  from  which  to  backout  a patch.
             These  two  arguments  are  mutually  exclusive.  If



SunOS 5.11          Last change: 20 Jun 2007                    6






System Administration Commands                        patchrm(1M)



             backing out a patch from a non-native usr partition,
             the -S option should be used. If backing out a patch
             from  a  client's  root  partition (either native or
             non-native), the -R option should be used.



     Message


           The service service cannot be found on this system



         Explanation and Recommended Action

             You have specified a non-native service  from  which
             to backout a patch, but the specified service is not
             installed on your system. Correctly specify the ser-
             vice when backing out the patch.



     Message


           Only one clientrootpath may be defined.



         Explanation and Recommended Action

             You have specified more  than  one  clientrootpath
             using  the -R option. The -R option may be used only
             once per invocation of patchrm.



     Message


           The dir directory cannot be found on this system.



         Explanation and Recommended Action

             You have specified a directory using the  -R  option
             which  is  either  not mounted, or does not exist on
             your system.  Verify  the  directory  name  and  re-
             backout the patch.




SunOS 5.11          Last change: 20 Jun 2007                    7






System Administration Commands                        patchrm(1M)



     Message


           Patch patchid has not been successfully installed to this system.




         Explanation and Recommended Action

             You have attempted to backout a patch  that  is  not
             installed on this system. If you must restore previ-
             ous versions of  patched  files,  you  may  have  to
             restore  the original files from the initial instal-
             lation CD.



     Message


           Patch patchid has not been successfully applied to this system.
           Will remove directory dir.



         Explanation and Recommended Action

             You have attempted to back out a patch that  is  not
             applied to this system. While the patch has not been
             applied,   a    residual    /var/sadm/patch/patchid
             (perhaps  from  an  unsuccessful patchadd) directory
             still exists. The patch cannot be backed out. If you
             must  restore old versions of the patched files, you
             may have to restore them from the initial  installa-
             tion CD.



     Message


           This patch was obsoleted by patch patchid.
           Patches must be backed out in the reverse order in
           which they were installed. Patch backout aborted.



         Explanation and Recommended Action

             You are attempting to backout patches out of  order.
             Patches  should never be backed-out out of sequence.



SunOS 5.11          Last change: 20 Jun 2007                    8






System Administration Commands                        patchrm(1M)



             This could  undermine  the  integrity  of  the  more
             current patch.



     Message


           Patch patchid is required to be installed by an already
           installed patchid.
           It cannot be backed out until the required patch is backed out first.



         Explanation and Recommended Action

             Backout the patch that is required to  be  installed
             then backout the desired patch.



     Message


           The installation of patch patchid was interrupted.



         Explanation and Recommended Action

             A previous installation was interrupted. The  inter-
             rupted  patch  needs  to be installed before backing
             out the desired patch.



     Message


           Patch patchid was installed without backing up the original
           files. It cannot be backed out.



         Explanation and Recommended Action

             Either the -d option of patchadd was  set  when  the
             patch was applied, or the save area of the patch was
             deleted to regain space. As a result,  the  original
             files  are not saved and patchrm cannot be used. The
             original files can only be recovered from the origi-
             nal installation CD.



SunOS 5.11          Last change: 20 Jun 2007                    9






System Administration Commands                        patchrm(1M)



     Message


           pkgadd of pkgname package failed return code code.
           See /var/sadm/patch/patchid/log for reason for failure.



         Explanation and Recommended Action

             The installation of one of  patch  packages  failed.
             See the log file for the reason for failure. Correct
             the problem and run the backout script again.



     Message


           Restore of old files failed.



         Explanation and Recommended Action

             The backout script uses the cpio command to  restore
             the   previous  versions  of  the  files  that  were
             patched. The output of the cpio command should  have
             preceded  this  message.  The  user  should take the
             appropriate action to correct the cpio failure. This
             is for Solaris 2.4 or previous versions.



SEE ALSO
     cpio(1), pkginfo(1), patchadd(1M),  pkgadd(1M),  pkgchk(1M),
     pkgrm(1M), showrev(1M), pkginfo(4), attributes(5), zones(5)

NOTES
     On client server machines the patch package is  not  removed
     from  existing  clients  or from client root template space.
     Therefore, when appropriate, all client machines  will  need
     the patch removed directly using this same patchrm method on
     the client. A bug affecting a package utility (for  example,
     pkgadd,  pkgrm,  pkgchk)  could  affect  the  reliability of
     patchadd or patchrm which use package utilities  to  install
     and  backout  the  patch package. It is recommended that any
     patch that fixes package utility problems be  reviewed  and,
     if  necessary,  applied  before  other  patches are applied.
     Existing patches are:





SunOS 5.11          Last change: 20 Jun 2007                   10






System Administration Commands                        patchrm(1M)



     Solaris 2.1:

         patch 100901


     Solaris 2.2:

         101122


     Solaris 2.3:

         10133


     Solaris 2.4 Sparc Platform Edition:

         102039


     Solaris 2.4 Intel Platform Edition:

         102041


     Solaris 2.5.1 Sparc Platform Edition:

         104578


     Solaris 2.51 Intel Platform Edition:

         104579


     Solaris 2.6 Sparc Platform Edition:

         106292


     Solaris 2.6 Intel Platform Edition:

         106293


WARNINGS
     Certain patches  are  classified  as  "deferred  activation"
     patches  (sometimes  with  initial  capitals,  as  "Deferred
     Activation" patches). Under conditions indicated below, such
     patches  require  special  treatment.  A patch's README file
     specifies whether that patch is of the  deferred  activation
     variety.  (Search  on  "Deferred   Activation" in the README



SunOS 5.11          Last change: 20 Jun 2007                   11






System Administration Commands                        patchrm(1M)



     file.)


     If you are installing or removing a patch that uses deferred
     activation patching, you must check on the following:

         o    On a system running  zones,  all  non-global  zones
              must  be in a halted state for adding or removing a
              patch.

         o    Deferred activation patching requires the  loopback
              file  system  (lofs)  in  order to complete safely.
              Systems running Sun Cluster 3.1 or Sun Cluster  3.2
              are  likely to have lofs turned off because of res-
              trictions on  HA-NFS  functionality  when  lofs  is
              enabled.  Therefore,  before  a deferred activation
              patch is installed or removed, you  must  re-enable
              the loopback file system by commenting out the fol-
              lowing line in the /etc/system file:

                exclude:lofs


              Then, reboot your system and install or remove  the
              patch.  After  you  have completed the patch opera-
              tion, uncomment the line cited above,  then  reboot
              to resume normal operation.




























SunOS 5.11          Last change: 20 Jun 2007                   12



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™