Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
removef [ [-M] -R root_path] [-V fs_file] pkginst path...
removef [ [-M] -R root_path] [-V fs_file] -f pkginst
removef informs the system that the user, or software, intends to remove a pathname. Output from removef is the list of input pathnames that may be safely removed (no other packages have a dependency on them).
The following options are supported:
-f
After all files have been processed, removef should be invoked with the -f option to indicate that the removal phase is complete.
-M
Instruct removef not to use the $root_path/etc/vfstab file for determining the client's mount points. This option assumes the mount points are correct on the server and it behaves consistently with Solaris 2.5 and earlier releases.
-R root_path
Define the full path name of a directory to use as the root_path. All files, including package system information files, are relocated to a directory tree starting in the specified root_path. The root_path may be specified when installing to a client from a server (for example, /export/root/client1). removef inherits the value of the PKG_INSTALL_ROOT environment variable. (See ENVIRONMENT VARIABLES, below.) If PKG_INSTALL_ROOT is set, such as when the -R option is used with pkgadd(1M) or pkgrm(1M), there is no need to use the removef -R option.
Note -
The root file system of any non-global zones must not be referenced with the -R option. Doing so might damage 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).
-V fs_file
Specify an alternative fs_file to map the client's file systems. For example, used in situations where the $root_path/etc/vfstab file is non-existent or unreliable.
The following operands are supported:
path
The pathname to be removed.
pkginst
The package instance from which the pathname is being removed.
Example 1 Using removef
The following example uses the removef command in an optional pre-install script:
echo "The following files are no longer part of this package and are being removed." removef $PKGINST /myapp/file1 /myapp/file2 | while read pathname do echo "$pathname" rm -f $pathname done removef -f $PKGINST || exit 2
removef inherits the value of the following environment variable. This variable is set when pkgadd(1M) or pkgrm(1M) is invoked with the -R option.
PKG_INSTALL_ROOT
If present, defines the full path name of a directory to use as the system's PKG_INSTALL_ROOT path. All product and package information files are then looked for in the directory tree, starting with the specified PKG_INSTALL_ROOT path. If not present, the default system path of / is used.
0
Successful completion.
>0
An error occurred.
pkginfo(1), pkgmk(1), pkgparam(1), pkgproto(1), pkgtrans(1), installf(1M), pkgadd(1M), pkgask(1M), pkgchk(1M), pkgrm(1M), attributes(5), largefile(5)
Package commands are largefile(5)-aware. They handle files larger than 2 GB in the same way they handle smaller files. In their current implementations, pkgadd(1M), pkgtrans(1) and other package commands can process a datastream of up to 4 GB.