Author: kwade
Update of /cvs/docs/software-management-guide/devel/en_US In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv23183/devel/en_US
Added Files: concepts.xml configuring-repositories.xml customizing-yum.xml doc-entities.ent doc-entities.ent~ doc-entities.xml fdp-entities.ent fdp-info.xml introduction.xml isolated-install.xml manage-with-yum.xml pirut.xml pup.xml rpm-info.xml search-with-yum.xml software-management-guide.xml tools.xml update-with-yum.xml yum-caching.xml yum-plugins.xml yum-proxy.xml Log Message: branching for development; will create F-9 branch after initial XML style edit is done, where final polish work happens.
--- NEW FILE concepts.xml --- <?xml version="1.0" encoding="utf-8"?> <!-- $Id: --> <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-Concepts"> <title>Software Management Concepts</title> <section id="sn-AboutPackages"> <title>About Packages</title> <para>Fedora software and documentation is supplied in the form of files called RPM <firstterm>packages</firstterm>. Each package is a compressed archive containing product information, program files, icons, documentation and management scripts. Management applications use these files to safely locate, install, update and remove software. For example, the Fedora installation process uses the packages supplied with Fedora to build or upgrade a system to your requirements.</para> <para>Packages also include a digital signature to prove their source. Software management utilities verify this digital signature by using a GPG <firstterm>public key</firstterm>. The <command>yum</command> and <command>rpm</command> utilities share a common <firstterm>keyring</firstterm> that stores all of the public keys for approved package sources. The system administrator configures these approved package sources.</para> <note> <title>All Fedora Packages are Free and Open Source Software</title> <para>All of the software provided by the Fedora Project is Free and open source software. You may download and install Fedora packages on as many systems as desired.</para> </note> </section> <section id="sn-AboutRepositories"> <title>About Repositories</title> <para>A <firstterm>repository</firstterm> is a prepared directory or Web site that contains software packages and index files. Software management utilities such as <package>yum</package> automatically locate and obtain the correct RPM packages from these repositories. This method frees you from having to manually find and install new applications or updates. You may use a single command to update all system software, or search for new software by specifying criteria.</para> <para>A network of servers provide several repositories for each version of Fedora. The package management utilities in Fedora are already configured to use three of these repositories:</para> <para>Base</para> <itemizedlist> <listitem> <para>The packages that make up a Fedora release, as it is on disc</para> </listitem> </itemizedlist> <para>Updates</para> <itemizedlist> <listitem> <para>Updated versions of packages that are provided in Base</para> </listitem> </itemizedlist> <para>Extras</para> <itemizedlist> <listitem> <para>Packages for a large selection of additional software</para> </listitem> </itemizedlist> <warning> <title>Fedora Development Repositories</title> <para>Fedora also includes settings for several alternative repositories. These provide packages for various types of test system, and replace one or more of the standard repositories. Only enable support for one of the following repositories if you test or develop Fedora software: <systemitem>fedora-devel</systemitem> (Rawhide), <systemitem>fedora-extras-devel</systemitem>, and <systemitem>updates-testing</systemitem>.</para> </warning> <para>Third-party software developers also provide repositories for their Fedora compatible packages. To learn how to configure your Fedora system to use third-party repositories, read <xref linkend="sn-ConfiguringRepositories" />.</para> <para>You may also use the <firstterm>package groups</firstterm> provided by the Fedora repositories to manage related packages as sets. Some third-party repositories add packages to these groups, or provide their packages as additional groups.</para> <tip> <title>Available Package Groups</title> <para>To view a list of all of the available package groups for your Fedora system, run the command <command>su -c 'yum grouplist'</command>.</para> </tip> <para>Use repositories to ensure that you always receive current versions of software. If several versions of the same package are available, your management utility automatically selects the latest version.</para> <warning> <title>Manually Installing Software</title> <para>Install software using manual methods only when you are confident there is no repository which can currently provide it. You may have to manage that software with manual methods, instead of with Fedora software management utilities.</para> </warning> <para>The <command>yum</command> commands shown in this document use repositories as package sources. Refer to <xref linkend="sn-IsolatedInstall" />for details of using <command>yum</command> to install software from a package file.</para> <para /> </section> <section id="sn-AboutDependencies"> <title>About Dependencies</title> <para>Some of the files installed on a Fedora distribution are <firstterm>libraries</firstterm> which may provide functions to multiple applications. When an application requires a specific library, the package which contains that library is a <firstterm>dependency</firstterm>. To properly install a package, Fedora must first satisfy its dependencies. The dependency information for a RPM package is stored within the RPM file.</para> <para>The <application>yum</application> utility uses package dependency data to ensure that all of requirements for an application are met during installation. It automatically installs the packages for any dependencies not already present on your system. If a new application has requirements that conflict with existing software, <application>yum</application> aborts without making any changes to your system.</para> </section> <section id="sn-UnderstandingPackageNames"> <title>Understanding Package Names</title> <para>Each package file has a long name that indicates several key pieces of information. For example, this is the full name of a <package>tsclient</package> package:</para> <para> <filename>tsclient-0.132-6.i386.rpm</filename> </para> <para>Management utilities commonly refer to packages with one of three formats:</para> <itemizedlist> <listitem> <para>Package name: <literal>tsclient</literal></para> </listitem> <listitem> <para>Package name with version and release numbers: <literal>tsclient-0.132-6</literal></para> </listitem> <listitem> <para>Package name with hardware architecture: <literal>tsclient.i386</literal></para> </listitem> </itemizedlist> <para>For clarity, <command>yum</command> lists packages in the format <package>name.architecture</package>. Repositories also commonly store packages in separate directories by architecture. In each case, the hardware architecture specified for the package is the <emphasis>minimum</emphasis> type of machine required to use the package.</para> <segmentedlist> <segtitle>Architecture</segtitle> <segtitle>Compatibility</segtitle> <seglistitem> <seg>i386</seg> <seg>Suitable for any current Intel-compatible computer</seg> </seglistitem> <seglistitem> <seg>noarch</seg> <seg>Compatible with all computer architectures</seg> </seglistitem> <seglistitem> <seg>ppc</seg> <seg>Suitable for PowerPC systems, such as Apple Power Macintosh</seg> </seglistitem> <seglistitem> <seg>x86_64</seg> <seg>Suitable for 64-bit Intel-compatible processors, such as Opterons</seg> </seglistitem> </segmentedlist> <para>Some software may be optimized for particular types of Intel-compatible machine. Separate packages may be provided for <systemitem>i386</systemitem>, <systemitem>i586</systemitem>, <systemitem>i686</systemitem> and <systemitem>x86_64</systemitem> computers. A machine with at least an Intel Pentium, VIA C3 or compatible CPU may use <systemitem>i586</systemitem> packages. Computers with an Intel Pentium Pro and above, or a current model of AMD chip, may use <systemitem>i686</systemitem> packages.</para> <para>Use the short name of the package for <command>yum</command> commands. This causes <command>yum</command> to automatically select the most recent package in the repositories that matches the hardware architecture of your computer.</para> <para>Specify a package with other name formats to override the default behavior and force <command>yum</command> to use the package that matches that version or architecture. Only override <command>yum</command> when you know that the default package selection has a bug or other fault that makes it unsuitable for installation.</para> <important> <title>Package Names</title> <para>You may use any of the following formats to specify a package in a <application>yum</application> operation: <literal>name</literal>, <literal>name.architecture</literal>, <literal>name-version</literal>, <literal>name-version-release</literal>, <literal>name-version-release.architecture</literal>, and <literal> epoch:name-version-release.architecture</literal>.</para> </important> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE configuring-repositories.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-ConfiguringRepositories"> <title>Configuring Access to Software Repositories</title> <para>Fedora systems automatically use the Fedora Project repositories. If the Fedora Project does not supply packages for a product, the manufacturer may provide or recommend a separate repository. Members of the community also maintain repositories to provide packages for Fedora systems. For example, <ulink url="http://www.jpackage.org/"> http://www.jpackage.org/</ulink> distributes popular Java software as packages.</para> <para /> <section id="sn-AddingRepository"> <title>Adding a Repository as a Package Source</title> <para>To add an extra repository, place a definition file in the <filename class="directory">/etc/yum.repos.d/</filename> directory on your system. Package providers make the definition files for their repositories available on their web sites.</para> <note> <title>Definition File Extension</title> <para>The names of repository definition files end with <filename class="extension">.repo</filename>.</para> </note> <para>You must have <systemitem class="username">root</systemitem> access to add a file to the definitions directory. To copy the definition file <filename>example.repo</filename>, type this command:</para> <para> <command>su -c 'cp example.repo /etc/yum.repos.d/'</command> </para> <para>At the prompt, enter the password for the <systemitem class="username">root</systemitem> account.</para> <para>The configuration file for each repository should include a <literal>gpgkey</literal> setting. This setting specifies the location of a public key that verifies the packages provided by that repository. This public key is automatically imported the first time that you install software from the repository. If the configuration file provided does not include this setting, refer to
<xref linkend="sn-ManuallyAuthorizing" />.</para> </section> <section id="sn-ManuallyAuthorizing"> <title>Manually Authorizing Package Sources</title> <para>To manually add a public key to your <application>rpm</application> keyring, use the import feature of the <application>rpm</application> utility. To import the file <filename>GPG-PUB-KEY.asc</filename>, type the following command:</para> <para> <command>su -c 'rpm --import GPG-PUB-KEY.asc'</command> </para> <para>At the prompt, enter the password for the <systemitem class="username">root</systemitem> account.</para> <para>You may also import public keys directly from a web site. For example, to import the file <filename>GPG-PUB-KEY.asc</filename> on the web site <replaceable>www.therepository.com</replaceable>, use this command:</para> <para> <command>su -c 'rpm --import http://<replaceable>www.therepository.com</replaceable>/GPG-PUB-KEY.asc'</command> </para> <para>At the prompt, enter the <systemitem class="username">root</systemitem> password.</para> <important> <title>Importing the Fedora Key</title> <para>To add the Fedora public key to the <application>rpm</application> keyring on Fedora systems, run the command <command>su -c 'rpm --import /usr/share/rhn/RPM-GPG-KEY-fedora'</command>.</para> </important> <para /> </section> <section id="sn-UnderstandingRepositoryCompatibility"> <title>Understanding Repository Compatibility</title> <para>The Fedora Package Collection includes several thousands of packages which are compatible with each other. Third-party packages should be compatible with these Fedora Project packages, unless the provider specifically states otherwise.</para> <para>Always read the web site of the repository for information on package compatibility before you add it as a package source. Separate repository providers may offer different and incompatible versions of the same software. Third-party repositories may also provide alternative packages for software that is included in Fedora repositories.</para> <para>Alternative packages may contain versions of the software that function differently from the version in the Fedora Project packages. Determine the benefits and potential incompatibilities before replacing Fedora Project packages with alternative versions.</para> <warning> <title>Incompatible Repositories</title> <para>If you configure your system to use incompatible repositories yum operations may fail.</para> </warning> <para>Packages built for one version of Fedora are usually not compatible with other versions of Fedora. The web site of the provider should specifically state which versions of Fedora they support.</para> <note> <title>Old Versions of yum and Current Repositories</title> <para>The data format for repository indexes changed with version 2.1 of <application>yum</application>. This was the version supplied with Fedora Core 3. Repository providers should specify the versions of Fedora that they support. To confirm that an unlabeled repository is compatible with current versions of <application>yum</application>, check that it has a sub-directory called <filename class="directory">repodata/</filename>.</para> </note> <para /> </section> <section id="sn-DisablingSources"> <title>Disabling or Removing Package Sources</title> <para>Set <literal>enable=0</literal> in a definition file to prevent <application>yum</application> from using that repository. The <application>yum</application> utility ignores any definition file with this setting.</para> <para>To completely remove access to a repository:</para> <orderedlist numeration="arabic"> <listitem> <para>Delete the relevant file from <filename class="directory">/etc/yum.repos.d/</filename>.</para> </listitem> <listitem> <para>Delete the cache directory from <filename class="directory">/var/cache/yum/</filename>.</para> </listitem> </orderedlist> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE customizing-yum.xml --- <?xml version="1.0" encoding="utf-8"?> <!-- $Id: --> <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-CustomizingYum"> <title>Customizing <application>yum</application></title> <para>To change the behavior of <application>yum</application>, you may either edit the configuration files, or install <firstterm>plugins</firstterm>. Plugins enable developers to add new features to <application>yum</application>.</para> <anchor id="editing_the_yum_configuration" /> <section id="sn-EditingYumConfig"> <title>Editing the yum Configuration</title> <para>The file <filename>/etc/yum.conf</filename> provides the main configuration for <application>yum</application>. Settings in a repository definition file override the main configuration for those operations that use the defined repository.</para> <para>To edit <filename>/etc/yum.conf</filename>, run a text editor with <systemitem class="username">root</systemitem> privileges. This command opens <filename>/etc/yum.conf</filename> with <application>gedit</application>, the default text editor for Fedora desktop systems:</para> <para> <command>su -c 'gedit /etc/yum.conf'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <para>The main configuration file provides the settings that apply to all <application>yum</application> operations. These include caching options, and proxy server settings. The directory <filename class="directory">/etc/yum.repos.d/</filename> holds definition files for each repository that <application>yum</application> uses. Plugins use the configuration files in the directory <filename class="directory">/etc/yum/pluginconf.d/</filename>.</para> <para>The following sections in this document provide further information on configuring yum:</para> <itemizedlist> <listitem> <para> <xref linkend="sn-ConfiguringRepositories" /> </para> </listitem> <listitem> <para> <xref linkend="sn-CustomizingYum" /> </para> </listitem> <listitem> <para> <xref linkend="sn-YumCaching" /> </para> </listitem> <listitem> <para> <xref linkend="sn-YumProxy" /> </para> </listitem> </itemizedlist> <note> <title>Further Documentation</title> <para>Refer to the <application>man</application> page for <filename>yum.conf</filename> for a complete list of the configuration options supported by <application>yum</application>.</para> </note> <para> <anchor id="working_with_yum_plugins" /> </para> </section> <section id="sn-YumPlugins"> <title>Working with yum Plugins</title> <para>Each yum plugin is a single file, written in the Python programming language. You may download plugins from the yum project Web site, or from third-party providers. The yum project maintains a list of plugins on the page <ulink url="http://wiki.linux.duke.edu/YumPlugins"> http://wiki.linux.duke.edu/YumPlugins</ulink>.</para> <note> <title role="strong">Plugin File Extension</title> <para>The names of <application>yum</application> plugin files end with <filename class="extension">.py</filename>, the standard extension for Python scripts.</para> </note> <para>To install a plugin, copy it to the directory <filename class="directory">/usr/lib/yum-plugins/</filename>. Create a configuration file for the plugin in the directory <filename class="directory">/etc/yum/pluginconf.d/</filename>. Save the configuration file with the same name as the plugin, but with the extension <filename class="extension">.conf</filename>.</para> <note> <title> <systemitem class="username">root</systemitem> Privileges Required</title> <para>You must have <systemitem class="username">root</systemitem> access to add files to the directories <filename class="directory">/usr/lib/yum-plugins/</filename> and <filename class="directory">/etc/yum/pluginconf.d/</filename>.</para> </note> <para>For example, to copy the plugin <filename>exampleplugin.py</filename>, enter the command:</para> <para> <command>su -c 'cp exampleplugin.py /usr/lib/yum-plugins/'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <para>You may then create a configuration file for the plugin with a text editor. This example uses <application>gedit</application>, the default text editor for Fedora desktop systems:</para> <para> <command>su -c 'gedit /etc/yum/pluginconf.d/exampleplugin.conf'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <para>Each plugin configuration file includes the enabled setting. Some plugins also require additional settings. To determine the correct settings, either refer to the documentation supplied with the plugin, or read the plugin file itself with any text editor.</para> <para /> <screen> <![CDATA[[main] enabled=1 anotheroption=0 ]]> </screen> </section> <section id="sn-UsefulYumPlugins"> <title>Useful Plugins for Fedora Users</title> <para>Yum is easily extensible through plugins and a number of plugins have been written by many developers. These plugins advance the core capabilities of Yum and add more features. This section covers the plugins that are useful to Fedora users.</para> <para /> <section id="sn-YumPluginInstallonlyn"> <title>Installonlyn Plugin</title> <para>Usually software package updates work by removing the older package, retaining the configuration and installing the newer version of a package. Kernel packages are more unique since newer versions can be installed in parallel. Every release of Fedora usually receives a number of kernel updates during its lifecycle due to the general policy of staying close to upstream projects. Each of these kernel updates then occupy space and over time will clutter the initial boot loader options. To prevent this, the installonlyn plugin leaves "n" number of kernel packages by default removing the oldest ones first sequentially on updates. Fedora Core 5 onwards installs this plugin by default. In Fedora, this plugin retains the current kernel and two latest updates. You can disable this plugin or configure it to retain a different number of kernels by setting the value in the file /etc/yum/pluginconf.d/installonlyn.conf</para> <para /> </section> <section id="sn-YumPluginFastestMirror"> <title>Fastest Mirror Plugin</title> <para>Yum in Fedora uses a dynamic server side <ulink url="http://fedoraproject.org/wiki/Infrastructure/MirrorManagement"> mirror management infrastructure</ulink> that distributes the bandwidth consumptions on each of these mirrors by automatically directing the update to one of the geographically closest mirrors. This mirror is automatically checked against the master server for consistency.</para> <para>The fastest mirror plugin enhances the speed of updates by maintaining a local offline hostfile cache of the speed of the mirrors. It sorts the mirror list by speed and prioritizes the faster ones for package downloads. This plugin is not installed by default. For installing it, use the following command or from the <guimenu>Applications</guimenu> menu use <guimenuitem>Add/Remove Software"</guimenuitem>.</para> <para><command>su -c 'yum install yum-fastestmirror'</command></para> <para>You can configure various settings of this plugin in the file <filename>/etc/yum/pluginconf.d/fastestmirror.conf</filename></para> </section> <section> <title>Security Plugin</title> <para>This plugin extends yum to allow lists and updates to be limited using security relevant criteria. This may be important to you if you are using Fedora in a production mode and you don't want to break your software with an untested upgrade.</para> <para>For installing it, use the following command <command>su -c 'yum install yum-security'</command> or from the<guimenu>Applications</guimenu> menu select <guimenuitem>Add/Remove Software</guimenuitem> </para> <para>There are two yum commands that are used with this plugin:</para> <itemizedlist> <listitem><para>info-sec</para></listitem> <listitem><para>list-sec</para></listitem> </itemizedlist> <para>Both of these commands take these sub-commands:</para> <itemizedlist> <listitem> <para><advisory> [advisory...]</para> </listitem> <listitem><para>bugzillas</para></listitem> <listitem><para>cves</para></listitem> <listitem><para>security</para></listitem> </itemizedlist> <section> <title>Examples</title> <para>To list all updates that are security relevant, and get a return code on whether there are security updates use:</para> <para> <command>su -c 'yum --security check-update'</command> </para> <para>To apply updates that are security relevant use:</para> <para> <command>su -c 'yum --security update'</command> </para> <para>To get a list of all BZs that are fixed for packages you have installed use:</para> <para> <command>su -c 'yum list-sec bugzillas'</command> </para> <para>To get the information on advisory FEDORA-2707-4567 use:</para> <para> <command>su -c 'yum info-sec FEDORA-2707-4567'</command> </para> <para>For additional information, view the man page:</para> <para> <command>man yum-security</command> </para> </section> </section> <!-- <section id="sn-YumPluginDownloadonly"> <title>Downloadonly Plugin</title> <para>FIXME: Figure out how plugin works and document that.</para> <para /> </section> --> <section id="sn-YumPluginChangelog"> <title>Changelog Plugin</title> <para>When Fedora developers provide a update to a existing package, they describe the changes in the new update in the software package change log. This plugin helps you see the package changelog before doing a update. This plugin is not installed by default. For installing it, use the following command or from the <guimenu>Applications </guimenu> menu use <guimenuitem>Add/Remove Software"</guimenuitem>.</para> <para><command>su -c 'yum install yum-changelog'</command></para> <para>Sample output:</para> <screen> <![CDATA[su -c 'yum update frysk --changelog' Loading "changelog" plugin Setting up Update Process Setting up repositories Reading repository metadata in from local files Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Package frysk.i686 0:0.0.1.2006.12.01.rh1-1.fc6 set to be updated --> Running transaction check
Changes in packages about to be updated:
frysk - 0.0.1.2006.12.01.rh1-1.fc6.i686 * Sat Dec 2 03:30:00 2006 Stepan Kasal skasal@redhat.com - 0.0.1.2006.12.01.rh1-1 - New upstream version. - Resolves: #211288.
* Fri Dec 1 03:30:00 2006 Stepan Kasal skasal@redhat.com - 0.0.1.2006.11.30.rh1-1 - New upstream version. - The stamp file for glade files has been renamed.
Dependencies Resolved
============================================================================= Package Arch Version Repository Size ============================================================================= Updating: frysk i686 0.0.1.2006.12.01.rh1-1.fc6 updates 7.5 M
Transaction Summary ============================================================================= Install 0 Package(s) Update 1 Package(s) Remove 0 Package(s)
Total download size: 7.5 M Is this ok [y/N]: ]]> </screen> <para>By default, the package changelog is showed before doing an update. If you prefer to see the changelog after doing an update instead, you can change the setting from when=pre to when=post in the file /etc/yum/pluginconf.d/changelog.conf. A sample output after the configuration has been changed from 'pre' to 'post'</para> <para /> <screen> <![CDATA[su -c 'yum update frysk --changelog' Loading "changelog" plugin Setting up Update Process Setting up repositories Reading repository metadata in from local files Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Package frysk.i686 0:0.0.1.2006.12.01.rh1-1.fc6 set to be updated --> Running transaction check
Dependencies Resolved
============================================================================= Package Arch Version Repository Size ============================================================================= Updating: frysk i686 0.0.1.2006.12.01.rh1-1.fc6 updates 7.5 M
Transaction Summary ============================================================================= Install 0 Package(s) Update 1 Package(s) Remove 0 Package(s)
Total download size: 7.5 M Is this ok [y/N]: y Downloading Packages: (1/1): frysk-0.0.1.2006.1 100% |=========================| 7.5 MB 04:24 Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : frysk ######################### [1/2] Cleanup : frysk ######################### [2/2]
Changes in updated packages:
frysk - 0.0.1.2006.12.01.rh1-1.fc6.i686 * Sat Dec 2 03:30:00 2006 Stepan Kasal skasal@redhat.com - 0.0.1.2006.12.01.rh1-1 - New upstream version. - Resolves: #211288.
* Fri Dec 1 03:30:00 2006 Stepan Kasal skasal@redhat.com - 0.0.1.2006.11.30.rh1-1 - New upstream version. - The stamp file for glade files has been renamed.
Updated: frysk.i686 0:0.0.1.2006.12.01.rh1-1.fc6 Complete! ]]> </screen> </section> <section id="YumPluginSkipBroken"> <title>Skip-broken Plugin</title> <para>Yum by default checks to make all dependencies are resolved before doing a update, however on occasions like when testing the Fedora development tree or when there is a known dependency issue in the software repository it is useful to skip the broken dependencies automatically instead of having to manually specify the exact packages to ignore in the command line or yum configuration file. The skip-broken plugin helps do that. This plugin is not installed by default. For installing it, use the following command or from the <guimenu>Applications</guimenu> menu use <guimenuitem>Add/Remove Software".</guimenuitem></para> <para><command>su -c 'yum install yum-skip-broken'</command></para> <para>You can use this plugin doing a update by specifying the following command line argument.</para> <para><command>su -c 'yum update --skip-broken'</command></para> <para>You can disable this plugin by changing the option in the file <filename>/etc/yum/pluginconf.d/skip-broken.conf</filename></para> </section> <section id="sn-YumPluginAllowdowngrade"> <title>Allowdowngrade Plugin</title> <para>The core Yum package manager does not have the functionality to let users downgrade a package. This is a design choice to favor robustness over the additional functionality. Unlike package updates, downgrades are not tested usually and hence may not have the desired effect. However advanced users would still find this feature useful to recover out of a broken update. This plugin adds the ability to perform downgrades of packages in Fedora. This plugin is not installed by default. For installing it, use the following command or from the <guimenu>Applications</guimenu> menu use <guimenuitem>Add/Remove Software</guimenuitem>.</para> <para><command>su -c 'yum install yum-allowdowngrade'</command></para> <para>You can use this plugin doing a update by specifying the following command line argument.</para> <para><command>su -c 'yum update -allow-downgrade'</command></para> <para>You can disable this plugin by changing the option in the file <filename>/etc/yum/pluginconf.d/allowdowngrade.conf</filename></para> </section> <section id="sn-DisablingPlugins"> <title>Disabling All Plugins</title> <para>If you would like to disable all the plugins while running Yum, you can use the following command line argument</para> <para><command>su -c 'yum update --noplugins'</command></para> </section> <section id="sn-DevelopingPlugins"> <title>Developing New Plugins</title> <para>If you are interested in developing your own plugins to add new features or change the behavior of Yum, refer to the guidelines at <ulink url="http://wiki.linux.duke.edu/WritingYumPlugins"> http://wiki.linux.duke.edu/WritingYumPlugins</ulink>. Join the yum development list at <ulink url="https://lists.dulug.duke.edu/mailman/listinfo/yum-devel"> https://lists.dulug.duke.edu/mailman/listinfo/yum-devel</ulink> to collaborate with Yum developers.</para> </section> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE doc-entities.ent --- <!-- Group: Automatic Entities --> <!ENTITY FDPCOMMONDIR "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common" > <!-- Base directory --><!ENTITY LANG "en_US" > <!-- Locale code --> <!-- Local entities for Yum Tutorial -->
<!-- Group: Document revision markings -->
<!ENTITY DOCNAME "yum-software-management" > <!-- Document name --> <!ENTITY DOCVERSION "2.01" > <!-- Version number --> <!ENTITY DOCDATE "2008-01-24" > <!-- Date of last revision --> <!ENTITY DOCID "&DOCNAME;-&DOCVERSION; (&DOCDATE;)" > <!-- Document ID -->
<!-- Group: Miscellaneous -->
<!ENTITY FCLOCALVER "8" > <!-- Local version of Fedora for this document -->
--- NEW FILE doc-entities.ent~ --- <!-- Group: Automatic Entities --> <!ENTITY FDPCOMMONDIR "/home/kwade/Documents/projects/fedora/cvs-docs/docs-common/common" > <!-- Base directory --><!ENTITY LANG "en_US" > <!-- Locale code --> <!-- Local entities for Yum Tutorial -->
<!-- Group: Document revision markings -->
<!ENTITY DOCNAME "yum-software-management" > <!-- Document name --> <!ENTITY DOCVERSION "2.01" > <!-- Version number --> <!ENTITY DOCDATE "2008-01-24" > <!-- Date of last revision --> <!ENTITY DOCID "&DOCNAME;-&DOCVERSION; (&DOCDATE;)" > <!-- Document ID -->
<!-- Group: Miscellaneous -->
<!ENTITY FCLOCALVER "8" > <!-- Local version of Fedora for this document -->
--- NEW FILE doc-entities.xml --- <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE entities SYSTEM "../../docs-common/common/entities/entities.dtd"> <entities> <title>Local entities for Yum Tutorial</title> <group name="Document revision markings"> <entity name="DOCNAME"> <comment>Document name</comment> <text>yum-software-management</text> </entity> <entity name="DOCVERSION"> <comment>Version number</comment> <text>2.01</text> </entity> <entity name="DOCDATE"> <comment>Date of last revision</comment> <text>2008-01-24</text> </entity> <entity name="DOCID"> <comment>Document ID</comment> <text><use entity="DOCNAME"/>-<use entity="DOCVERSION"/> (<use entity="DOCDATE"/>)</text> </entity> </group> <group name="Miscellaneous"> <entity name="FCLOCALVER"> <comment>Local version of Fedora for this document</comment> <text>8</text> </entity> </group> </entities>
--- NEW FILE fdp-entities.ent --- <!-- Group: Automatic Entities --> <!ENTITY FDPCOMMONDIR "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common" > <!-- Base directory --><!ENTITY LANG "en_US" > <!-- Locale code --> <!-- These common entities are useful shorthand terms and names, which may be subject to change at anytime. This is an important value the the entity provides: a single location to update terms and common names. -->
<!-- Group: Fedora common entries -->
<!ENTITY FED "Fedora" > <!-- Generic root term --> <!ENTITY FEDLC "fedora" > <!-- Generic root term in lowercase --> <!ENTITY CORE "Core" > <!-- Generic root term --> <!ENTITY FC "&FED;" > <!-- Generic main project name --> <!ENTITY DISTRO "&FC;" > <!-- Legacy Entity --> <!ENTITY FCX "F" > <!-- Short project name --> <!ENTITY FP "&FED; Project" > <!-- Generic overall project name --> <!ENTITY FDP "&FED; Documentation Project" > <!-- Generic docs project name --> <!ENTITY FDPX "&FED; Docs Project" > <!-- Short docs project name --> <!ENTITY EX "Extras" > <!-- cf. Core --> <!ENTITY FEX "&FED; &EX;" > <!-- cf. Fedora Core --> <!ENTITY FDP-URL "<ulink url='http://fedoraproject.org/wiki/DocsProject'/>" > <!-- Fedora Docs Project URL --> <!ENTITY FP-URL "<ulink url='http://fedoraproject.org/'/>" > <!-- Fedora Project URL --> <!ENTITY FDPDOCS-URL "<ulink url='http://docs.fedoraproject.org/'/>" > <!-- Fedora Documentation (repository) URL --> <!ENTITY BZ "Bugzilla" > <!-- Bugzilla --> <!ENTITY BZ-URL "<ulink url='https://bugzilla.redhat.com'/>" > <!-- Bugzilla URL --> <!ENTITY BZ-PROD "&FED; Documentation" > <!-- Bugzilla product for Fedora Docs -->
<!-- Group: Fedora Version Numbers -->
<!ENTITY FCVER "8" > <!-- Current release version of main project --> <!ENTITY DISTROVER "&FCVER;" > <!-- Alias for FCVER --> <!ENTITY TESTVER "Alpha" > <!-- Current test number of main project --> <!ENTITY FCTESTVER "9 &TESTVER;" > <!-- Current test version of main project --> <!ENTITY DISTROTESTVER "&FCTESTVER;" > <!-- Alias for FCTESTVER -->
<!-- Group: Common version numbers -->
<!ENTITY DBVER "4.4" > <!-- DocBook version for primary use -->
<!-- Group: Other common names -->
<!ENTITY RH "Red Hat" > <!-- The generic term "Red Hat" --> <!ENTITY FORMAL-RHI "&RH; Inc." > <!-- The generic term "Red Hat, Inc." --> <!ENTITY RHL "&RH; Linux" > <!-- The generic term "Red Hat Linux" --> <!ENTITY RHN "&RH; Network" > <!-- The generic term "Red Hat Network" --> <!ENTITY RHEL "&RH; Enterprise Linux" > <!-- The generic term "Red Hat Enterprise Linux" -->
<!-- Group: Technology terms -->
<!ENTITY SEL "SELinux" > <!-- Generic technology term -->
<!-- Group: Common doc files -->
<!ENTITY LEGALNOTICE SYSTEM "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/legalnotice-en_US.xml" > <!-- Legal notice container --> <!ENTITY LEGALNOTICE-CONTENT SYSTEM "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/legalnotice-content-en_US.xml" > <!-- Legal notice content --> <!ENTITY LEGALNOTICE-OPL SYSTEM "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/legalnotice-opl-en_US.xml" > <!-- OPL legal notice container --> <!ENTITY LEGALNOTICE-OPL-CONTENT SYSTEM "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/opl.xml" > <!-- OPL legal notice content --> <!ENTITY LEGALNOTICE-RELNOTES SYSTEM "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/legalnotice-relnotes-en_US.xml" > <!-- OPL legal notice for relnotes --> <!ENTITY LEGALNOTICE-SECTION SYSTEM "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/legalnotice-section-en_US.xml" > <!-- OPL legal notice for relnotes --> <!ENTITY BUG-REPORTING SYSTEM "/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/bugreporting-en_US.xml" > <!-- Bug reporting tip -->
<!-- Group: Common applications -->
<!-- Group: Required by build scripts -->
<!ENTITY PROJECT "&FP;" > <!-- Name of project -->
<!-- Group: Tutorial Titles -->
<!ENTITY IG "Installation Guide" > <!-- Name of installation documentation --> <!ENTITY DOCG "Documentation Guide" > <!-- Name of documentation documentation -->
<!-- Group: Tutorial URL's -->
<!ENTITY IG-URL "<ulink url='http://docs.fedoraproject.org/install-guide/'/>" > <!-- URL for IG --> <!ENTITY DOCG-URL "<ulink url='http://docs.fedoraproject.org/documentation-guide/'/>" > <!-- URL for DocG -->
<!-- Group: Status notices -->
<!ENTITY DRAFTNOTICE SYSTEM "draftnotice-en_US.xml" > <!-- Notice of draft content --> <!ENTITY LEGACYNOTICE SYSTEM "legacynotice-en_US.xml" > <!-- Notice of legacy content --> <!ENTITY OBSOLETENOTICE SYSTEM "obsoletenotice-en_US.xml" > <!-- Notice of obsolescence --> <!ENTITY DEPRECATEDNOTICE SYSTEM "deprecatednotice-en_US.xml" > <!-- Notice of deprecation -->
--- NEW FILE fdp-info.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE articleinfo PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
<!-- Warning! Warning! Danger, Will Robinson! This is a generated file, produced from information in the "rpm-info.xml" file.
DO NOT EDIT THIS FILE DIRECTLY! Edit "rpm-info.xml" to change this information. -->
<articleinfo> <title>Managing Software with yum</title> <releaseinfo>Version 2.01 (2008-01-24)</releaseinfo> <copyright> <year>2008</year> <holder>Red Hat, Inc. and others</holder> </copyright> <authorgroup> <author> <surname>Christensen</surname> <firstname>Eric</firstname> </author> <author> <surname>Ellis</surname> <firstname>Stuart</firstname> </author> <editor> <surname>Frields</surname> <firstname>Paul</firstname> <othername>W.</othername> </editor> <editor> <surname>Smith</surname> <firstname>Jared</firstname> <othername>K.</othername> </editor> </authorgroup> <othercredit class="translator"> <surname>Menezes</surname> <firstname>Rodrigo</firstname> </othercredit> <othercredit class="translator"> <surname>Cisneiros</surname> <firstname>Hugo</firstname> </othercredit> <othercredit class="translator"> <surname>Pires</surname> <firstname>Jos��</firstname> </othercredit> <revhistory id="rv-revhistory"> <revision> <revnumber>2.01</revnumber> <date>2008-01-24</date> <authorinitials>JaredKSmith</authorinitials> <revdescription> <para> Import new version from Wiki, convert to DocBook. </para> </revdescription> </revision> <revision> <revnumber>1.31</revnumber> <date>2006-04-30</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para/> </revdescription> </revision> <revision> <revnumber>1.3</revnumber> <date>2006-03-24</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Minor restructuring of sections. </para> </revdescription> </revision> <revision> <revnumber>1.2</revnumber> <date>2006-03-19</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Added sections on caching and plugins. </para> </revdescription> </revision> <revision> <revnumber>1.1</revnumber> <date>2006-03-13</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Updated for Fedora 5. </para> </revdescription> </revision> <revision> <revnumber>1.0.5</revnumber> <date>2005-11-28</date> <authorinitials>PaulFrields</authorinitials> <revdescription> <para> Fixed some uses of "Fedora" to read "Fedora Core" where appropriate. </para> </revdescription> </revision> <revision> <revnumber>1.0.4</revnumber> <date>2005-11-15</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Updated section on proxy servers. Fixed #166122. </para> </revdescription> </revision> <revision> <revnumber>1.0.3</revnumber> <date>2005-10-13</date> <authorinitials>PaulFrields</authorinitials> <revdescription> <para> Fix wording (#170584). </para> </revdescription> </revision> <revision> <revnumber>1.0.2</revnumber> <date>2005-08-26</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Fix localinstall information. </para> </revdescription> </revision> <revision> <revnumber>1.0.1</revnumber> <date>2005-08-18</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Added information on installing without repository and manually adding keys. </para> </revdescription> </revision> <revision> <revnumber>1.0</revnumber> <date>2005-08-13</date> <authorinitials>PaulFrields</authorinitials> <revdescription> <para> Publish to official project page. </para> </revdescription> </revision> <revision> <revnumber>0.6</revnumber> <date>2005-07-25</date> <authorinitials>PaulFrields</authorinitials> <revdescription> <para> Edited for style and usage; BETA publication. </para> </revdescription> </revision> <revision> <revnumber>0.5</revnumber> <date>2005-07-19</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Updated for Fedora Core 4. </para> </revdescription> </revision> <revision> <revnumber>0.4</revnumber> <date>2005-06-01</date> <authorinitials>StuartEllis</authorinitials> <revdescription> <para> Initial import into CVS. </para> </revdescription> </revision> </revhistory> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="/home/kwade/Documents/projects/fedora/cvs-docs/software-management-guide/docs-common/common/legalnotice-opl-en_US.xml"/> </articleinfo>
--- NEW FILE introduction.xml --- <?xml version="1.0" encoding="utf-8"?> <!-- $Id: --> <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-Introduction"> <title>Introduction</title> <section id="sn-AboutDocument"> <title>About this Document</title> <para> <emphasis role="strong">Purpose</emphasis>: This document will demonstrate how to install and update software packages from the desktop and the Linux command-line.</para> <para> <emphasis role="strong">Audience</emphasis>: This document was written for individuals who are unfamiliar with software package management in Fedora.</para> <para> <emphasis role="strong">Approach</emphasis>: This document will explain basic principles, one at a time, and will not assume familiarity with any Linux/UNIX-specific terminology or concepts. It will compare functionality where appropriate to what the reader may know from other operating systems.</para> <para> <emphasis role="strong">Assumptions</emphasis>: This document assumes that the reader has a default installation of Fedora which includes the desktop components. The reader must have a user account with the default settings. The reader <emphasis role="strong">does</emphasis> must have access to the <systemitem class="username">root</systemitem> password. </para> </section> <section id="sn-UsingDocument"> <title>Using This Document</title> <para>This document is a reference for managing software with Fedora. You may wish to read some or all of the sections, depending upon your needs and level of experience. If you are a new user, please start with:</para> <itemizedlist> <listitem> <para> <xref linkend="sn-Concepts" /> </para> </listitem> <listitem> <para> <xref linkend="sn-Pirut" /> </para> </listitem> <listitem> <para> <xref linkend="sn-Pup" /> </para> </listitem> </itemizedlist> <para>These guides explain basic concepts of software management in Fedora, and introduce the various graphical interfaces for yum. Experienced Linux users should start with <xref linkend="sn-ManageWithYum" />.</para> <tip> <title>Previous Versions of Fedora</title> <para>This document describes the configuration of <application>yum</application> on current versions of Fedora. You must perform the additional step noted in <xref linkend="sn-ManuallyAuthorizing" />to enable <application>yum</application> on earlier versions Fedora.</para> </tip> <warning> <title>Warning: Avoid Logging in with the Root Account</title> <para>You do not need to log in with the <systemitem class="username">root</systemitem> account in order to manage your Fedora system. All of the commands shown in this tutorial that require <systemitem class="username">root</systemitem> access will prompt you for the <systemitem class="username">root</systemitem> password. The example terminal commands use <command>su -c</command> to provide this facility. Graphical applications that require root access will automatically prompt for the root password when launched.</para> </warning> <para>Most of the examples in this document use the package <package>tsclient</package>, which is included with Fedora. The <package>tsclient</package> package provides an application for remote desktop access. The example commands for Fedora package groups use the <application>MySQL Database</application> group. To use the examples, substitute the name of the relevant package for <package>tsclient</package>.</para> <para>Fedora includes a <application>yum</application> configuration that is suitable for independent systems with Internet access. You may use <application>yum</application> and related software on such systems without any additional configuration.</para> <para>If your system is part of a managed network, consult your network administrators for advice. You may need to configure <application>yum</application> to use a network proxy server. <xref linkend="sn-YumProxy" />explains how to configure <application>yum</application> to use a proxy server. Administrators may also suggest or require that <application>yum</application> clients use specific package repositories. Refer to
<xref linkend="sn-ConfiguringRepositories" />for instructions on how to configure access to repositories.</para> <para>To improve performance and enable disconnected operations, activate the <application>yum</application> caches on your system. Refer to <xref linkend="sn-YumCaching" />for more information on the caching option.</para> <para /> </section> <section id="sn-AdditionalResources"> <title>Additional Resources</title> <para>The <application>yum</application> utility has features and options not discussed in this document. Read the <application>man</application> pages for <application>yum(8)</application> and <filename>yum.conf(5)</filename> to learn more, using the following commands:</para> <para> <command>man yum</command> </para> <para> <command>man yum.conf</command> </para> <para>Other useful <application>yum</application> resources on the Internet include:</para> <para>Project Web site</para> <itemizedlist> <listitem> <para> <ulink url="http://linux.duke.edu/projects/yum/"> http://linux.duke.edu/projects/yum/</ulink> </para> </listitem> </itemizedlist> <para>Users mailing list</para> <itemizedlist> <listitem> <para> <ulink url="https://lists.dulug.duke.edu/mailman/listinfo/yum/"> https://lists.dulug.duke.edu/mailman/listinfo/yum/</ulink> </para> </listitem> </itemizedlist> <para>Development mailing list</para> <itemizedlist> <listitem> <para> <ulink url="https://lists.dulug.duke.edu/mailman/listinfo/yum-devel/"> https://lists.dulug.duke.edu/mailman/listinfo/yum-devel/</ulink> </para> </listitem> </itemizedlist> <important> <title>Note: Check Bugzilla First</title> <para>If you encounter a persistent error with a specific operation, visit <ulink url="https://bugzilla.redhat.com"> https://bugzilla.redhat.com</ulink> and review the bug reports for the package or packages involved. An error in a package may cause all <application>yum</application> operations that rely on that package to fail. Please file bug reports for Fedora packages, including <application>yum</application>, on this Bugzilla web site.</para> </important> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE isolated-install.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-IsolatedInstall"> <title>Installing Software from an Isolated Package</title> <para>Use repositories and the standard <application>yum</application> commands to locate and install new software, unless the software package is not available from any repository. In these cases, use the <literal>localinstall</literal> function to install the software from the package file.</para> <important> <title>Public Key is Required</title> <para>Ensure that the public key for the package source has been imported before you install a package without a repository. Refer to <xref linkend="sn-ManuallyAuthorizing" />.</para> </important> <para>Enter this command to install the package <package>tsclient-0.132-4.i386.rpm</package>:</para> <para> <command>su -c 'yum localinstall tsclient-0.132-4.i386.rpm'</command> </para> <para>At the prompt, enter the <systemitem class="username">root</systemitem> password.</para> <note> <title>Previously Installed Software is Updated</title> <para>If the package provides a later version of software that is already installed on your system, <application>yum</application> updates the installed software.</para> </note> <para>If the package requires software that is not installed on your system, <application>yum</application> attempts to meet the dependencies with packages from the configured repositories. You may need to manually download and install additional packages in order to satisfy all of the dependencies.</para> <warning> <title>Maintaining Manually Installed Software</title> <para>If you install software that is not provided by a repository, <command>yum update</command> cannot automatically upgrade it as new versions become available. To ensure that you have the latest packages, subscribe to e-mail or RSS services that notify you when new versions are released.</para> </warning> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE manage-with-yum.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-ManageWithYum"> <title>Managing Software with yum</title> <para>Use the <application>yum</application> utility to modify the software on your system in four ways:</para> <itemizedlist> <listitem> <para>install new software from package repositories</para> </listitem> <listitem> <para>install new software from an individual package file</para> </listitem> <listitem> <para>update existing software on your system</para> </listitem> <listitem> <para>remove unwanted software from your system</para> </listitem> </itemizedlist> <note> <title>Installing Software from a Package File</title> <para>The <application>yum</application> commands shown in this section use repositories as package sources. Refer to <xref linkend="sn-IsolatedInstall" />for details of using <application>yum</application> to install software from an individual package file.</para> </note> <para>To use <application>yum</application>, specify a function and one or more packages or package groups. Each section below gives some examples.</para> <para>For each operation, <application>yum</application> downloads the latest package information from the configured repositories. If your system uses a slow network connection yum may require several seconds to download the repository indexes and the header files for each package.</para> <para>The <application>yum</application> utility searches these data files to determine the best set of actions to produce the required result, and displays the transaction for you to approve. The transaction may include the installation, update, or removal of additional packages, in order to resolve software dependencies.</para> <para>This is an example of the transaction for installing <package>tsclient</package>:</para> <para /> <screen> <![CDATA[============================================================================= Package Arch Version Repository Size ============================================================================= Installing: tsclient i386 0.132-6 base 247 k Installing for dependencies: rdesktop i386 1.4.0-2 base 107 k
Transaction Summary ============================================================================= Install 2 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 355 k Is this ok [y/N]:]]> </screen> <para>Review the list of changes, and then press <keycap>Y</keycap> to accept and begin the process. If you press <keycap>N</keycap> or <keycap>Enter</keycap>, <application>yum</application> does not download or change any packages.</para> <note> <title>Package Versions</title> <para>The <application>yum</application> utility only displays and uses the newest version of each package, unless you specify an older version.</para> </note> <para>The <application>yum</application> utility also imports the repository public key if it is not already installed on the rpm keyring.</para> <para>This is an example of the public key import:</para> <para /> <screen> <![CDATA[warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2 public key not available for tsclient-0.132-6.i386.rpm Retrieving GPG key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora Importing GPG key 0x4F2A6FD2 "Fedora Project <fedora@redhat.com>" Is this ok [y/N]:]]> </screen> <para>Check the public key, and then press <keycap>Y</keycap> to import the key and authorize the key for use. If you press <keycap>N</keycap> or <keycap>Enter</keycap>, <application>yum</application> stops without installing any packages.</para> <para>To ensure that downloaded packages are genuine, <application>yum</application> verifies the digital signature of each package against the public key of the provider. Once all of the packages required for the transaction are successfully downloaded and verified, <application>yum</application> applies them to your system.</para> <note> <title>Transaction Log</title> <para>Every completed transaction records the affected packages in the log file <filename>/var/log/yum.log</filename>. You may only read this file with <systemitem class="username">root</systemitem> access.</para> </note> <para /> <section id="sn-InstallingNewSoftware"> <title>Installing New Software with yum</title> <para>To install the package <package>tsclient</package>, enter the command:</para> <para> <command>su -c 'yum install tsclient'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <para>To install the package group <package>MySQL Database</package>, enter the command:</para> <para> <command>su -c 'yum groupinstall "MySQL Database"'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <important> <title>New Services Require Activation</title> <para>When you install a service, Fedora does not activate or start it. To configure a new service to run on bootup, choose <guimenu>System</guimenu> <guisubmenu>Administration</guisubmenu> <guimenuitem> Services</guimenuitem> from the top desktop panel, or use the <application>chkconfig</application> and <application>service</application> command-line utilities.</para> </important> <anchor id="updating_software" /> </section> <section id="UpdatingSoftware"> <title>Updating Software with yum</title> <para>To update the <package>tsclient</package> package to the latest version, type:</para> <para> <command>su -c 'yum update tsclient'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <important> <title>New Software Versions Require Reloading</title> <para>If a piece of software is in use when you update it, the old version remains active until the application or service is restarted. Kernel updates take effect when you reboot the system.</para> </important> <note> <title>Kernel Packages</title> <para>Kernel packages remain on the system after they have been superseded by newer versions. This enables you to boot your system with an older kernel if an error occurs with the current kernel. To minimize maintenance, yum automatically removes obsolete kernel packages from your system, retaining only the current kernel and the previous version.</para> </note> <para>To update all of the packages in the package group <package>MySQL Database</package>, enter the command:</para> <para> <command>su -c 'yum groupupdate "MySQL Database"'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <note> <title>Updating the Entire System</title> <para>To update all of the packages on your Fedora system, use the commands described in <xref linkend="sn-UpdateWithYum" />.</para> </note> <para /> </section> <section id="sn-RemovingSoftware"> <title>Removing Software with yum</title> <para>To remove software, <application>yum</application> examines your system for both the specified software, and any software which claims it as a dependency. The transaction to remove the software deletes both the software and the dependencies.</para> <para>To remove the <package>tsclient</package> package from your system, use the command:</para> <para> <command>su -c 'yum remove tsclient'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <para>To remove all of the packages in the package group <package>MySQL Database</package>, enter the command:</para> <para> <command>su -c 'yum groupremove "MySQL Database"'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <note> <title>Data and Configuration File Retention</title> <para>The removal process leaves user data in place but may remove configuration files in some cases. If a package removal does not include the configuration file, and you reinstall the package later, it may reuse the old configuration file.</para> </note> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE pirut.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-Pirut"> <title>Managing Software with Pirut</title> <para>This section explains <application>Pirut</application>, Fedora's graphical package management program. It demonstrates the different search facilities within <application>Pirut</application> and how to install a package. The <application>Banshee</application> music management package is used as an example.</para> <para /> <section id="sn-BrowseSoftware"> <title>Browse Software</title> <para>Start <application>Pirut</application> by selecting the <guimenuitem>Add/Remove Programs</guimenuitem> entry in the <guimenu>Applications</guimenu> menu, entering your <systemitem class="username">root</systemitem> password when prompted.</para> <para>The program starts in <literal>Browse</literal> view by default. This view organizes packages into related groups, displaying top level groups on the left and sub-categories on the right. When a tick is present next to a sub-category, it indicates applications from that group are installed.</para> <para>To install <application>Banshee</application>, select the <literal>Sound and Video</literal> sub-category and press the <guibutton>Optional Packages</guibutton> button. Locate <application>Banshee</application> in the list and queue it for installation by ticking its box with a left-click. As many packages as desired can be queued for installation by ticking the appropriate boxes.</para> <para>To add packages from other groups or sub-categories to the queue, browse to the desired group or sub-category and proceed as before. The <guibutton>Optional Packages</guibutton> button is only available when the desired sub-category is ticked. Ticking a previously un-ticked sub-category automatically queues for installation any packages required for that sub-category.</para> <para>To install the queued packages press the <guibutton>Apply</guibutton> button.</para> <note> <title>Removing packages</title> <para>Remove packages by un-ticking the appropriate boxes and pressing the <guibutton>Apply</guibutton> button.</para> </note> </section> <section id="sn-Dependencies"> <title>Dependencies</title> <para>After applying changes, <application>Pirut</application> prompts to confirm the packages you have selected. Proceed if the list is correct, otherwise cancel and refine the selection.</para> <note> <title>Dependencies</title> <para>Dependenices are packages that are required by another package to function correctly.</para> </note> <para> <application>Pirut</application> now resolves any dependencies. A dialog informs you which dependencies have been found, and are automatically marked for installation. Confirm this list to proceed.</para> <warning> <title>Dependencies can be removed</title> <para>When a package is removed it is possible other packages may have relied on it to function correctly. If this is the case <application>Pirut</application> also removes these other applications. Check the dependency dialog and cancel if any of the packages marked for removal are still needed. This can be corrected by refining your package selection.</para> </warning> </section> <section id="sn-SearchSoftware"> <title>Search Software</title> <para>When the desired application's name is known, the <literal>Search</literal> tab is more efficient.</para> <para>Select the <literal>Search</literal> tab from the top of the window and enter <literal>Banshee</literal> into the search box. Press enter to begin the search. Results, including related packages, are shown in the box below. To find more information about a package before installation, highlight it with a left-click and press the <literal>Package Details</literal> text below.</para> <para>To queue a package for installation or removal, toggle its box as appropriate. Once all the packages have been selected press <guibutton>Apply</guibutton>.</para> <para /> </section> <section id="sn-ListSoftware"> <title>List Software</title> <para>The list tab displays all available packages. Packages can be queued for installation or removal in the same manner as before. Once satisfied with the selections, press the <guibutton>Apply</guibutton> button to commit the changes.</para> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE pup.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-Pup"> <title>Updating Software With Pup</title> <para>This chapter explains how to use the <application>Pup</application> graphical update program, and how <application>Puplet</application> works to provide notifications of available updates.</para> <para /> <section id="sn-UpdateNotifications"> <title>Update Notifications</title> <para> <application>Puplet</application> works constantly in the background, checking for available software updates from the enabled repositories. When updates become available a package icon appears in the notification area, along with an alert which appears for a short time and reveals the number of updates available.</para> <para>Once the notification tray icon is present, there are a number of possible actions it can perform:</para> <itemizedlist> <listitem> <para> <literal>Refresh</literal> will check for new updates</para> </listitem> <listitem> <para> <literal>View Updates</literal> launches <application>Pup</application> and allows you to find more details about the packages to be updated, to de-select some updates, and to start the update process</para> </listitem> <listitem> <para> <literal>Apply Updates</literal> </para> </listitem> <listitem> <para> <literal>Quit</literal> closes <application>Puplet</application> until the next time the system starts</para> </listitem> </itemizedlist> <para /> </section> <section id="sn-PackageUpdater"> <title>The Package Updater</title> <para>This program features a scrollable text window under the heading <literal>Updates available</literal>. In this text window all of the available updates are listed, and all are selected by default. If you want to remove any of the packages queued for update, left click the ticked box next to the relevant package.</para> <para>Some updates have a circular arrow icon next to them, indicating that these changes won't be applied until the next system reboot.</para> <para>Further information about the updates can be found by selecting the desired package, then left clicking the <literal>Update Details</literal> text.</para> <para>Once satisfied with the package selection left click the <guibutton>Apply Updates</guibutton> button. Pup checks for dependencies, ensuring that the updated packages will have everything required to function correctly. If dependencies are added a dialogue will be displayed informing you which new packages are set to be installed. Review this dialog and click <guibutton>Continue</guibutton> if it is OK.</para> <para>The packages will then be downloaded and installed. If a reboot is needed for some of the changes to take place, you will be informed of this at the end of the updates.</para> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE rpm-info.xml --- <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE rpm-info SYSTEM "../../docs-common/packaging/rpm-info.dtd"> <rpm-info> <colophon> <worker surname="Ellis" firstname="Stuart" othername="" id="StuartEllis" email="stuart@elsn.org" wholename="Stuart Ellis" initials="StuartEllis"/> <worker surname="Frields" firstname="Paul" othername="W." id="PaulWFrields" email="stickster@gmail.com" wholename="Paul W. Frields" initials="PaulFrields"/> <worker surname="Menezes" firstname="Rodrigo" othername="" id="RodrigoMenezes" email="menezes@projetofedora.org" wholename="Rodrigo Menezes" initials="RodrigoMenezes"/> <worker surname="Cisneiros" firstname="Hugo" othername="" id="HugoCisneiros" email="hugo@devin.com.br" wholename="Hugo Cisneiros" initials="HugoCisneiros"/> <worker surname="Pires" firstname="Jos��" othername="" id="JosePires" email="jncp@netcabo.pt" wholename="Jos�� Pires" initials="JP"/> <worker surname="Christensen" firstname="Eric" othername="" id="EricChristensen" email="eric@christensenplace.us" wholename="Eric Christensen" initials="EricChristensen"/> <worker surname="Smith" firstname="Jared" othername="K." id="JaredKSmith" email="jaredsmith@jaredsmith.net" wholename="Jared K. Smith" initials="JaredKSmith"/> </colophon> <author worker="EricChristensen"/> <author worker="StuartEllis"/> <editor worker="PaulWFrields"/> <editor worker="JaredKSmith"/> <translator worker="RodrigoMenezes"/> <translator worker="HugoCisneiros"/> <translator worker="JosePires"/> <license> <rights>OPL</rights> <version>1.0</version> </license> <copyright> <year>2008</year> <holder>Red Hat, Inc. and others</holder> </copyright> <title>Managing Software with yum</title> <desc>Documentation for the yum software management system.</desc> <changelog order="newest-first"> <revision date="2008-01-24" number="2.01" role="doc"> <author worker="JaredKSmith"/> <details>Import new version from Wiki, convert to DocBook.</details> </revision> <revision date="2006-04-30" number="1.31" role="doc"> <author worker="StuartEllis"/> </revision> <revision date="2006-03-24" number="1.3" role="doc"> <author worker="StuartEllis"/> <details>Minor restructuring of sections.</details> </revision> <revision date="2006-03-19" number="1.2" role="doc"> <author worker="StuartEllis"/> <details>Added sections on caching and plugins.</details> </revision> <revision date="2006-03-13" number="1.1" role="doc"> <author worker="StuartEllis"/> <details>Updated for Fedora 5.</details> </revision> <revision date="2005-11-28" number="1.0.5" role="doc"> <author worker="PaulWFrields"/> <details>Fixed some uses of "Fedora" to read "Fedora Core" where appropriate.</details> </revision> <revision date="2005-11-15" number="1.0.4" role="doc"> <author worker="StuartEllis"/> <details>Updated section on proxy servers. Fixed #166122.</details> </revision> <revision date="2005-10-13" number="1.0.3" role="doc"> <author worker="PaulWFrields"/> <details>Fix wording (#170584).</details> </revision> <revision date="2005-08-26" number="1.0.2" role="doc"> <author worker="StuartEllis"/> <details>Fix localinstall information.</details> </revision> <revision date="2005-08-18" number="1.0.1" role="doc"> <author worker="StuartEllis"/> <details>Added information on installing without repository and manually adding keys.</details> </revision> <revision date="2005-08-13" number="1.0" role="doc"> <author worker="PaulWFrields"/> <details>Publish to official project page.</details> </revision> <revision date="2005-07-25" number="0.6" role="doc"> <author worker="PaulWFrields"/> <details>Edited for style and usage; BETA publication.</details> </revision> <revision date="2005-07-19" number="0.5" role="doc"> <author worker="StuartEllis"/> <details>Updated for Fedora Core 4.</details> </revision> <revision date="2005-06-01" number="0.4" role="doc"> <author worker="StuartEllis"/> <details>Initial import into CVS.</details> </revision> </changelog> </rpm-info>
--- NEW FILE search-with-yum.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-SearchingForPackagesWithYum"> <title>Searching for Packages with <application>yum</application></title> <section id="sn-SearchingForPackages"> <title>Searching for Packages with yum</title> <para>Use the search features of <application>yum</application> to find software that is available from the configured repositories, or already installed on your system. Searches automatically include both installed and available packages.</para> <para>The format of the results depends upon the option. If the query produces no information, there are no packages matching the criteria.</para> <para /> </section> <section id="sn-SearchingByName"> <title>Searching by Package Name and Attributes</title> <para>To search for a specific package by name, use the list function. To search for the package <package>tsclient</package>, use the command:</para> <para> <command>su -c 'yum list tsclient'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <para>To make your queries more precise, specify packages with a name that include other attributes, such as version or hardware architecture. To search for version 0.132 of the application, use the command:</para> <para> <command>su -c 'yum list tsclient-0.132'</command> </para> <note> <title>Valid Package Attributes</title> <para>Refer to <xref linkend="sn-Concepts" />for information on package name formats and the attributes that they include.</para> </note> <para /> </section> <section id="sn-AdvancedSearches"> <title>Advanced Searches</title> <para>If you do not know the name of the package, use the search or provides options. Alternatively, use wild cards with any <application>yum</application> search option to broaden the search criteria.</para> <para>The search option checks the names, descriptions, summaries and listed package maintainers of all of the available packages to find those that match. For example, to search for all packages that relate to Palm Pilots, type:</para> <para> <command>su -c 'yum search PalmPilot'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <para>The provides function checks both the files included in the packages and the functions that the software provides. This option requires <application>yum</application> to download and read much larger index files than with the search option.</para> <para>To search for all packages that include files called <literal>libneon</literal>, type:</para> <para> <command>su -c 'yum provides libneon'</command> </para> <para>To search for all packages that either provide a MTA (Mail Transport Agent) service, or include files with <literal>mta</literal> in their name:</para> <para> <command>su -c 'yum provides MTA'</command> </para> <para>For each command, at the prompt enter the password for the <systemitem class="username">root</systemitem> account.</para> <para>Use the standard wild-card characters to run any search option with a partial word or name: <literal>?</literal> to represent any one character, and <literal>*</literal> to mean zero or more characters. Always add the escape character <literal></literal> before wild-cards.</para> <para>To list all packages with names that begin with <literal>tsc</literal>, type:</para> <para> <command>su -c 'yum list tsc*'</command> </para> <para /> </section> <section id="sn-UnderstandingMatches"> <title>Understanding Matches</title> <para>Searches with <application>yum</application> show all of the packages that match your criteria. Packages must meet the terms of the search exactly to be considered matches, unless you use wild-cards.</para> <para>For example, a search query for <literal>shadowutils</literal> or <literal>shadow-util</literal> would not produce the package <package>shadow-utils</package>. This package would match and be shown if the query was <literal>shadow-util?</literal>, or <literal>shadow*</literal>.</para> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE software-management-guide.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]>
<article id="SoftwareManagementGuide" lang="en"> <title>Software Management with YUM</title> <xi:include href="fdp-info.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./introduction.xml" xpointer="element(sn-Introduction)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./concepts.xml" xpointer="element(sn-Concepts)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./tools.xml" xpointer="element(sn-Tools)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./manage-with-yum.xml" xpointer="element(sn-ManageWithYum)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./search-with-yum.xml" xpointer="element(sn-SearchingForPackagesWithYum)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./update-with-yum.xml" xpointer="element(sn-UpdateWithYum)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./configuring-repositories.xml" xpointer="element(sn-ConfiguringRepositories)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./isolated-install.xml" xpointer="element(sn-IsolatedInstall)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./customizing-yum.xml" xpointer="element(sn-CustomizingYum)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./pup.xml" xpointer="element(sn-Pup)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./pirut.xml" xpointer="element(sn-Pirut)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./yum-caching.xml" xpointer="element(sn-YumCaching)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="./yum-proxy.xml" xpointer="element(sn-YumProxy)" xmlns:xi="http://www.w3.org/2001/XInclude" /> </article> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE tools.xml --- <?xml version="1.0" encoding="utf-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-Tools"> <title>Software Management Tools in Fedora</title> <para>The <application>yum</application> command-line utility is a complete software management system. Fedora also includes two graphical applications for software management that use <application>yum</application>. The <application>pup</application> utility provides an interface for updating software, and the <application>pirut</application> application enables you to add or remove software.</para> <para>Both graphical tools appear in the <guimenu>Applications</guimenu> desktop menu. To update your system with <application>pup</application>, select <guimenu>Applications</guimenu> <guisubmenu>System Tools</guisubmenu> <guimenuitem>Software Updater</guimenuitem>. To add or remove software with <application>pirut</application>, select <guimenu>Applications</guimenu> <guimenuitem>Add/Remove Software</guimenuitem>.</para> <warning> <title>Root Access Needed</title> <para>When using <application>pup</application> or <application>pirut</application> you will be asked for the <systemitem class="username">root</systemitem> password when starting these programs.</para> </warning> <para>There is also <application>puplet</application> which automatically checks for, and alerts you to, updates for your system. It appears as an icon in the notification area when new updates are available. Click this icon to launch <application>pup</application> and update your system.</para> <para>The <application>rpm</application> command-line utility has many functions for working with individual RPM packages. You may use it to manually install and remove packages from your system. If you install software with the <application>rpm</application> utility, you must manually check and install any dependencies. For this reason, <application>pirut</application> and <application>yum</application> are the recommended methods for installing software.</para> <warning> <title>Current Package Versions</title> <para>The <application>pirut</application> and <application>yum</application> utilities ensure that you have the most recent version of software packages. Other methods do not guarantee that the packages are current.</para> </warning> <para>For more information on <application>pup</application>, see <xref linkend="sn-Pup"/>. For more information on <application>pirut</application>, see <xref linkend="sn-Pirut"/>. </para> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE update-with-yum.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-UpdateWithYum"> <title>Updating Your System with <application>yum</application></title> <para>Use the update option to upgrade all of your Fedora system software to the latest version with one operation.</para> <para>To perform a full system update, type this command:</para> <para> <command>su -c 'yum update'</command> </para> <para>At the prompt, enter the <systemitem class="username">root</systemitem> password.</para> <para /> <section id="sn-AutoUpdates"> <title>Automatically Updating Your System</title> <para>The <package>yum</package> package supplied with Fedora includes scripts to perform full system updates every day. To activate automatic daily updates, enter this command:</para> <para> <command>su -c '/sbin/chkconfig --level 345 yum-updatesd on; /sbin/service yum-updatesd start'</command> </para> <para>At the prompt, enter the password for the <systemitem class="username">root</systemitem> account.</para> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE yum-caching.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-YumCaching"> <title>Working with yum Caching</title> <para>By default, current versions of <application>yum</application> delete the data files and packages that they download, after these have been successfully used for an operation. This minimizes the amount of storage space that <application>yum</application> uses. You may enable caching, so that <application>yum</application> retains the files that it downloads in cache directories.</para> <para>Caches provide three advantages:</para> <itemizedlist> <listitem> <para>The performance of <application>yum</application> increases</para> </listitem> <listitem> <para>You may carry out <application>yum</application> operations without a network connection, by using only the caches</para> </listitem> <listitem> <para>You may copy packages from the caches and reuse them elsewhere</para> </listitem> </itemizedlist> <para>By default, <application>yum</application> stores temporary files under the directory <filename class="directory">/var/cache/yum/</filename>, with one subdirectory for each configured repository. The <filename class="directory">packages/</filename> directory within each repository directory holds the cached packages. For example, the directory <filename class="directory">/var/cache/yum/development/packages/</filename> holds packages downloaded from the development repository.</para> <note> <title role="strong">Clearing the <application>yum</application> Caches</title> <para>Cached files use disk space until removed. You may wish to periodically clear the <application>yum</application> caches to recover capacity. Refer to <xref linkend="sn-YumCaching" />for information on clearing the caches.</para> </note> <para>If you remove a package from the cache, you do not affect the copy of the software installed on your system.</para> <section id="sn-EnablingCaches"> <title>Enabling the Caches</title> <para>To configure <application>yum</application> to retain downloaded files rather than discarding them, set the <literal>keepcache</literal> option in <filename>/etc/yum.conf</filename> to <literal>1</literal>:</para> <screen> <![CDATA[keepcache=1 ]]> </screen> <para>Refer to <xref linkend="sn-CustomizingYum" />for more information on editing the <application>yum</application> configuration file.</para> <para>Once you enable caching, every <application>yum</application> operation may download package data from the configured repositories. To ensure that the caches have a set of package data, carry out an operation after you enable caching. Use a list or search query to download package data without modifying your system.</para> <para /> </section> <section id="sn-CacheOnlyMode"> <title>Using yum in Cache-only Mode</title> <para>To carry out a <application>yum</application> command without a network connection, add the <literal>-C</literal> option. This causes <application>yum</application> to proceed without checking any network repositories, and use only cached files. In this mode, yum may only install packages that have been downloaded and cached by a previous operation.</para> <para>To search for the package <package>tsclient</package> without using a network connection, enter the command:</para> <para> <command>su -c 'yum -C list tsclient'</command> </para> <para>Enter the password for the <systemitem class="username">root</systemitem> account when prompted.</para> <note> <title>Cache-only Mode Requires Cached Data</title> <para>Cache-only mode requires package data to exist in the caches. If you enable caching, every <application>yum</application> operation may update the data files, unless cache-only mode is specified for the operation.</para> </note> </section> <section id="sn-ClearingCaches"> <title>Clearing the yum Caches</title> <para>If you configure it to do so, <application>yum</application> retains the packages and package data files that it downloads, so that they may be reused in future operations without being downloaded again. To purge the package data files, use this command:</para> <para> <command>su -c 'yum clean headers'</command> </para> <para>Run this command to remove all of the packages held in the caches:</para> <para> <command>su -c 'yum clean packages'</command> </para> <para>When using these commands, at the prompt, enter the password for the <systemitem class="username">root</systemitem> account.</para> <para>Purging cached files causes those files to downloaded again the next time that they are required. This increases the amount of time required to complete the operation.</para> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE yum-plugins.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-YumPlugins"> <title>Yum Plugins</title> <para>This chapter explains some common plugins that <emphasis role="strong">yum</emphasis> is able to use. These plugins extend <emphasis role="strong">yum's </emphasis> ease of use. </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
--- NEW FILE yum-proxy.xml --- <?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: -->
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- *************** COMMON FDP entities *************** --> <!ENTITY % FDP-ENTITIES SYSTEM "fdp-entities.ent"> %FDP-ENTITIES; ]> <section id="sn-YumProxy"> <title>Using yum with a Proxy Server</title> <para>By default, <application>yum</application> accesses network repositories with HTTP. All <application>yum</application> HTTP operations use HTTP/1.1, and are compatible with web proxy servers that support this standard. You may also access FTP repositories, and configure <application>yum</application> to use an FTP proxy server. The <package>squid</package> package provides a proxy service for both HTTP/1.1 and FTP connections.</para> <note> <title>Modifying <application>yum</application> for Network Compatibility</title> <para>Refer to the <application>man</application> page for <filename>yum.conf</filename> for information on HTTP settings that may be modified for compatibility with nonstandard web proxy servers. Alternatively, configure <application>yum</application> to use an FTP proxy server, and access repositories that support FTP. The Fedora repositories support both HTTP and FTP.</para> </note> <section id="sn-ConfiguringProxy"> <title>Configuring Proxy Server Access</title> <para>To enable all <application>yum</application> operations to use a proxy server, specify the proxy server details in <filename>/etc/yum.conf</filename>. The proxy setting must specify the proxy server as a complete URL, including the TCP port number. If your proxy server requires a username and password, specify these by adding <literal>proxy_username</literal> and <literal>proxy_password</literal> settings.</para> <para>The settings below enable yum to use the proxy server <replaceable>mycache.mydomain.com</replaceable>, connecting to port <replaceable>3128</replaceable>, with the username <replaceable>yum-user</replaceable> and the password <replaceable>qwerty</replaceable>.</para> <screen> <![CDATA[# The proxy server - proxy server:port number proxy=http://mycache.mydomain.com:3128 # The account details for yum connections proxy_username=yum-user proxy_password=qwerty ]]> </screen> <note> <para>Older versions of yum may require a "/" after the port number: <literal>proxy=http://mycache.mydomain.com:3128/</literal></para> </note> <note> <title>Global Settings</title> <para>If you define a proxy server in <filename>/etc/yum.conf</filename>, all users connect to the proxy server with those details when using <application>yum</application>.</para> </note> <para /> </section> <section id="sn-ConfiguringProxyForSingleUser"> <title>Configuring Proxy Server Access for a Single User</title> <para>To enable proxy access for a specific user, add the lines in the example box below to the user's shell profile. For the default <application>bash shell</application>, the profile is the file <filename>~/.bash_profile</filename>. The settings below enable <application>yum</application> to use the proxy server <replaceable>mycache.mydomain.com</replaceable>, connecting to port <replaceable>3128</replaceable>.</para> <para /> <screen> <![CDATA[# The Web proxy server used by this account http_proxy="http://mycache.mydomain.com:3128" export http_proxy ]]> </screen> <para>If the proxy server requires a username and password, add these to the URL. To include the username <replaceable>yum-user</replaceable> and the password <replaceable>qwerty</replaceable>, add these settings:</para> <para /> <screen> <![CDATA[# The Web proxy server, with the username and password for this account http_proxy="http://yum-user:qwerty@mycache.mydomain.com:3128" export http_proxy ]]> </screen> <note> <title>The <literal>http_proxy</literal> Environment Variable</title> <para>The <literal>http_proxy</literal> environment variable is also used by <application>curl</application> and other utilities. Although <application>yum</application> itself may use <literal>http_proxy</literal> in either upper-case or lower-case, <application>curl</application> requires the name of the variable to be in lower-case.</para> </note> </section> </section> <!-- Local variables: mode: xml fill-column: 72 End: --> <!-- vim: softtabstop=2:shiftwidth=2:expandtab:textwidth=72 -->
docs-commits@lists.fedoraproject.org