mirror of
git://slackware.nl/current.git
synced 2024-12-27 09:59:16 +01:00
75a4a592e5
Mon Apr 25 13:37:00 UTC 2011 Slackware 13.37 x86_64 stable is released! Thanks to everyone who pitched in on this release: the Slackware team, the folks producing upstream code, and linuxquestions.org for providing a great forum for collaboration and testing. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. As always, thanks to the Slackware community for testing, suggestions, and feedback. :-) Have fun!
330 lines
12 KiB
HTML
330 lines
12 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta name="generator" content="HTML Tidy, see www.w3.org" />
|
|
<title>Package Utilities</title>
|
|
<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.7" />
|
|
<link rel="HOME" title="Slackware Linux Essentials" href="index.html" />
|
|
<link rel="UP" title="Slackware Package Management" href="package-management.html" />
|
|
<link rel="PREVIOUS" title="Slackware Package Management"
|
|
href="package-management.html" />
|
|
<link rel="NEXT" title="Making Packages"
|
|
href="package-management-making-packages.html" />
|
|
<link rel="STYLESHEET" type="text/css" href="docbook.css" />
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
</head>
|
|
<body class="SECT1" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#840084"
|
|
alink="#0000FF">
|
|
<div class="NAVHEADER">
|
|
<table summary="Header navigation table" width="100%" border="0" cellpadding="0"
|
|
cellspacing="0">
|
|
<tr>
|
|
<th colspan="3" align="center">Slackware Linux Essentials</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td width="10%" align="left" valign="bottom"><a href="package-management.html"
|
|
accesskey="P">Prev</a></td>
|
|
<td width="80%" align="center" valign="bottom">Chapter 18 Slackware Package
|
|
Management</td>
|
|
<td width="10%" align="right" valign="bottom"><a
|
|
href="package-management-making-packages.html" accesskey="N">Next</a></td>
|
|
</tr>
|
|
</table>
|
|
|
|
<hr align="LEFT" width="100%" />
|
|
</div>
|
|
|
|
<div class="SECT1">
|
|
<h1 class="SECT1"><a id="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES"
|
|
name="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES">18.2 Package Utilities</a></h1>
|
|
|
|
<p>There are four main utilities for package management. They perform installation,
|
|
removal, and upgrades of packages.</p>
|
|
|
|
<div class="SECT2">
|
|
<h2 class="SECT2"><a id="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-PKGTOOL"
|
|
name="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-PKGTOOL">18.2.1 pkgtool</a></h2>
|
|
|
|
<p><tt class="COMMAND">pkgtool</tt>(8) is a menu-driven program that allows installation
|
|
and removal of packages. The main menu is shown in <a
|
|
href="package-management-package-utilities.html#PKGTOOL-MAIN-MENU">Figure 18-1</a>.</p>
|
|
|
|
<div class="FIGURE"><a id="PKGTOOL-MAIN-MENU" name="PKGTOOL-MAIN-MENU"></a>
|
|
<p><b>Figure 18-1. Pkgtool's main menu.</b></p>
|
|
|
|
<p><img src="package-management/pkgtool-w.png" /></p>
|
|
</div>
|
|
|
|
<p>Installation is offered from the current directory, another directory, or from floppy
|
|
disks. Simply select the installation method you want and pkgtool will search that
|
|
location for valid packages to install.</p>
|
|
|
|
<p>You may also view a list of installed packages, as shown in <a
|
|
href="package-management-package-utilities.html#PKGTOOL-VIEW-MODE">Figure 18-2</a>.</p>
|
|
|
|
<div class="FIGURE"><a id="PKGTOOL-VIEW-MODE" name="PKGTOOL-VIEW-MODE"></a>
|
|
<p><b>Figure 18-2. Pkgtool view mode</b></p>
|
|
|
|
<p><img src="package-management/pkgtool-view-w.png" /></p>
|
|
</div>
|
|
|
|
<p>If you want to remove packages, select the remove option and you will be presented
|
|
with a checklist of all the installed packages. Flag the ones you want to remove and
|
|
select OK. <tt class="COMMAND">pkgtool</tt> will remove them.</p>
|
|
|
|
<p>Some users prefer this utility to the command line utilities. However, it should be
|
|
noted that the command line utilities offer many more options. Also, the ability to
|
|
upgrade packages is only offered through the command line utilities.</p>
|
|
</div>
|
|
|
|
<div class="SECT2">
|
|
<h2 class="SECT2"><a id="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-INSTALLPKG"
|
|
name="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-INSTALLPKG">18.2.2 installpkg</a></h2>
|
|
|
|
<p><tt class="COMMAND">installpkg</tt>(8) handles installation of new packages on the
|
|
system. The syntax is as follows:</p>
|
|
|
|
<table border="0" bgcolor="#E0E0E0" width="100%">
|
|
<tr>
|
|
<td>
|
|
<pre class="SCREEN">
|
|
<samp class="PROMPT">#</samp> <kbd class="USERINPUT">installpkg option package_name</kbd>
|
|
</pre>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p>Three options are provided for <tt class="COMMAND">installpkg</tt>. Only one option
|
|
can be used at a time.</p>
|
|
|
|
<div class="TABLE"><a id="AEN6446" name="AEN6446"></a>
|
|
<p><b>Table 18-1. <tt class="COMMAND">installpkg</tt> Options</b></p>
|
|
|
|
<table border="0" frame="void" class="CALSTABLE">
|
|
<col width="1*" />
|
|
<col width="3*" />
|
|
<thead>
|
|
<tr>
|
|
<th align="LEFT">Option</th>
|
|
<th align="LEFT">Effects</th>
|
|
</tr>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<tr>
|
|
<td>-m</td>
|
|
<td>Performs a makepkg operation on the current directory.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>-warn</td>
|
|
<td>Shows what would happen if you installed the specified package. This is useful for
|
|
production systems so you can see exactly what would happen before installing
|
|
something.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>-r</td>
|
|
<td>Recursively install all packages in the current directory and down. The package name
|
|
can use wildcards, which would be used as the search mask when recursively
|
|
installing.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<p>If you pass the <tt class="ENVAR">ROOT</tt> environment variable before <tt
|
|
class="COMMAND">installpkg</tt>, that path will be used for the root directory. This is
|
|
useful for setting up new drives for your root directory. They will typically be mounted
|
|
to <tt class="FILENAME">/mnt</tt> or something other than <tt
|
|
class="FILENAME">/</tt>.</p>
|
|
|
|
<p>The installed package database entry is stored in <tt
|
|
class="FILENAME">/var/log/packages</tt>. The entry is really just a plain text file, one
|
|
for each package. If the package has a postinstallation script, it is written to <tt
|
|
class="FILENAME">/var/log/scripts/</tt>.</p>
|
|
|
|
<p>You may specify several packages or use wildcards for the package name. Be advised
|
|
that <tt class="COMMAND">installpkg</tt> will not tell you if you are overwriting an
|
|
installed package. It will simply install right on top of the old one. If you want to
|
|
ensure that old files from the previous package are safely removed, use <tt
|
|
class="COMMAND">upgradepkg</tt>.</p>
|
|
</div>
|
|
|
|
<div class="SECT2">
|
|
<h2 class="SECT2"><a id="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-REMOVEPKG"
|
|
name="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-REMOVEPKG">18.2.3 removepkg</a></h2>
|
|
|
|
<p><tt class="COMMAND">removepkg</tt>(8) handles removing installed packages from the
|
|
system. The syntax is as follows:</p>
|
|
|
|
<table border="0" bgcolor="#E0E0E0" width="100%">
|
|
<tr>
|
|
<td>
|
|
<pre class="SCREEN">
|
|
<samp class="PROMPT">#</samp> <kbd class="USERINPUT">removepkg option package_name</kbd>
|
|
</pre>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p>Four options are provided for <tt class="COMMAND">removepkg</tt>. Only one option may
|
|
be used at a time.</p>
|
|
|
|
<div class="TABLE"><a id="AEN6491" name="AEN6491"></a>
|
|
<p><b>Table 18-2. <tt class="COMMAND">removepkg</tt> Options</b></p>
|
|
|
|
<table border="0" frame="void" class="CALSTABLE">
|
|
<col width="1*" />
|
|
<col width="3*" />
|
|
<thead>
|
|
<tr>
|
|
<th>Option</th>
|
|
<th>Effects</th>
|
|
</tr>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<tr>
|
|
<td>-copy</td>
|
|
<td>The package is copied to the preserved packages directory. This creates a tree of the
|
|
original package without removing it.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>-keep</td>
|
|
<td>Saves temporary files created during the removal. Really only useful for debugging
|
|
purposes.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>-preserve</td>
|
|
<td>The package is removed, but copied to the preserved packages directory at the same
|
|
time.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>-warn</td>
|
|
<td>Shows what would happen if you removed the package.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<p>If you pass the <tt class="ENVAR">ROOT</tt> environment variable before <tt
|
|
class="COMMAND">removepkg</tt>, that path will be used for the root directory. This is
|
|
useful for setting up new drives for your root directory. They will typically be mounted
|
|
to <tt class="FILENAME">/mnt</tt> or something other than <tt
|
|
class="FILENAME">/</tt>.</p>
|
|
|
|
<p><tt class="COMMAND">removepkg</tt> looks at the other installed packages and only
|
|
removes files unique to the package you specify. It will also scan the postinstallation
|
|
script for the specified package and remove any symbolic links that were created by
|
|
it.</p>
|
|
|
|
<p>During the removal process, a status report is displayed. After the removal, the
|
|
package database entry is moved to <tt class="FILENAME">/var/log/removed_packages</tt>
|
|
and the postinstallation script is moved to <tt
|
|
class="FILENAME">/var/log/removed</tt>_scripts.</p>
|
|
|
|
<p>Just as with <tt class="COMMAND">installpkg</tt>, you can specify several packages or
|
|
use wildcards for the package name.</p>
|
|
</div>
|
|
|
|
<div class="SECT2">
|
|
<h2 class="SECT2"><a id="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-UPGRADEPKG"
|
|
name="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-UPGRADEPKG">18.2.4 upgradepkg</a></h2>
|
|
|
|
<p><tt class="COMMAND">upgradepkg</tt>(8) will upgrade an installed Slackware package.
|
|
The syntax is as follows:</p>
|
|
|
|
<table border="0" bgcolor="#E0E0E0" width="100%">
|
|
<tr>
|
|
<td>
|
|
<pre class="SCREEN">
|
|
<samp class="PROMPT">#</samp> <kbd class="USERINPUT">upgradepkg package_name</kbd>
|
|
</pre>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p>or</p>
|
|
|
|
<table border="0" bgcolor="#E0E0E0" width="100%">
|
|
<tr>
|
|
<td>
|
|
<pre class="SCREEN">
|
|
<samp class="PROMPT">#</samp> <kbd
|
|
class="USERINPUT">upgradepkg old_package_name%new_package_name</kbd>
|
|
</pre>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><tt class="COMMAND">upgradepkg</tt> works by first installing the new package and then
|
|
removing the old package so that old files are no longer around on the system. If the
|
|
upgraded package name has changed, use the percent sign syntax to specify the old package
|
|
(the one that is installed) and the new package (the one you are upgrading it to).</p>
|
|
|
|
<p>If you pass the <tt class="ENVAR">ROOT</tt> environment variable before <tt
|
|
class="COMMAND">upgradepkg</tt>, that path will be used for the root directory. This is
|
|
useful for setting up new drives for your root directory. They will typically be mounted
|
|
to <tt class="FILENAME">/mnt</tt> or something other than <tt
|
|
class="FILENAME">/</tt>.</p>
|
|
|
|
<p><tt class="COMMAND">upgradepkg</tt> is not flawless. You should always back up your
|
|
configuration files. If they get removed or overwritten, you'll want a copy of the
|
|
originals for any needed repair work.</p>
|
|
|
|
<p>Just as with <tt class="COMMAND">installpkg</tt> and <tt
|
|
class="COMMAND">removepkg</tt>, you can specify several packages or use wildcards for the
|
|
package name.</p>
|
|
</div>
|
|
|
|
<div class="SECT2">
|
|
<h2 class="SECT2"><a id="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-RPM"
|
|
name="PACKAGE-MANAGEMENT-PACKAGE-UTILITIES-RPM">18.2.5 <tt
|
|
class="COMMAND">rpm2tgz</tt>/<tt class="COMMAND">rpm2targz</tt></a></h2>
|
|
|
|
<p>The Red Hat Package Manager is a popular packaging system available today. Many
|
|
software distributors are offering their products in RPM format. Since this is not our
|
|
native format, we do not recommend people rely on them. However, some things are only
|
|
available as an RPM (even the source).</p>
|
|
|
|
<p>We provide a program that will convert RPM packages to our native <tt
|
|
class="FILENAME">.tgz</tt> format. This will allow you to extract the package (perhaps
|
|
with <tt class="COMMAND">explodepkg</tt>) to a temporary directory and examine its
|
|
contents.</p>
|
|
|
|
<p>The <tt class="COMMAND">rpm2tgz</tt> program will create a Slackware package with a
|
|
<tt class="FILENAME">.tgz</tt> extension, while <tt class="FILENAME">rpm2targz</tt>
|
|
creates an archive with a <tt class="FILENAME">.tar.gz</tt> extension.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="NAVFOOTER">
|
|
<hr align="LEFT" width="100%" />
|
|
<table summary="Footer navigation table" width="100%" border="0" cellpadding="0"
|
|
cellspacing="0">
|
|
<tr>
|
|
<td width="33%" align="left" valign="top"><a href="package-management.html"
|
|
accesskey="P">Prev</a></td>
|
|
<td width="34%" align="center" valign="top"><a href="index.html"
|
|
accesskey="H">Home</a></td>
|
|
<td width="33%" align="right" valign="top"><a
|
|
href="package-management-making-packages.html" accesskey="N">Next</a></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td width="33%" align="left" valign="top">Slackware Package Management</td>
|
|
<td width="34%" align="center" valign="top"><a href="package-management.html"
|
|
accesskey="U">Up</a></td>
|
|
<td width="33%" align="right" valign="top">Making Packages</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</body>
|
|
</html>
|
|
|