This week we are diverging from the usual daily themes to present a Focus Week on Package Management. This site, the Fedora Daily Package, is all about the software packages included in Fedora Core and Fedora Extras. Fedora includes a number of powerful tools for managing packages, and this week will focus on those tools so that you can get the most out of your system. Let's wrap up this Focus Week with a some tips and tricks in a Q&A format: Q: I have an RPM file that did not come from a yum repository. I can install it with rpm -i packagefile, but then I have to solve the dependencies myself. Is there a way to install a package which is not from a repository, but use the yum repository system to resolve dependencies? A: Yes -- use the yum command localinstall:
# yum localinstall packagefile.rpm
Q: Fedora provides an icon in the notification area/taskbar that shows when packages are available for upgrade. But I run a server, and there's usually no one logged into the GUI. How can I get my system to automatically install the latest updates, so that it is not left vulnerable to known security risks?
A: Configure yum-updatesd to automatically install available updates (click!).
Q: Yum seems dazed and confused, and I think it's due to some bad repository data being cached. How do I fix this? A: Tell yum to erase cached data: # yum clean all
This week we are diverging from the usual daily themes to present a Focus Week on Package Management. This site, the Fedora Daily Package, is all about the software packages included in Fedora Core and Fedora Extras. Fedora includes a number of powerful tools for managing packages, and this week will focus on those tools so that you can get the most out of your system. Yum resolves dependencies and downloads packages from repositories -- online package libraries. Fedora Core 6 ships with three repositories enabled: - Fedora Core -- the software packages included in Fedora Core 6. These are the packages included on the distribution media (for example, the DVD or CD-ROMs)
- Fedora Updates -- updates to the packages in Fedora Core 6
- Fedora Extras -- additional software that works with Fedora Core but which is not included on the distribution media
(In Fedora 7, Core and Extras are being merged). Repository configuration files are stored in in /etc/yum.repos.d. By editing these files, it is possible to change the server(s) used for each repository, use a repository on DVD or hard disk, and enable or disable repositories.
This week we are diverging from the usual daily themes to present a Focus Week on Package Management. This site, the Fedora Daily Package, is all about the software packages included in Fedora Core and Fedora Extras. Fedora includes a number of powerful tools for managing packages, and this week will focus on those tools so that you can get the most out of your system. The Yum repository system is layered on top of RPM to facilitate automatic package downloading and dependency resolution. There are seven ways to access Yum repositories in Fedora 6: - the yum command
- the pirut graphical installation/removal tool, located on the menus at Applications > Add/Remove Software
- the pup package updater, located on the menus at Applications > System Tools > Software Updater
- the yum-updatesd service, which normally signals the puplet applet in the notification area to inform the user of the availability of updates, but which can also be configured to automatically update packages or download available updates.
- the yum-updateonboot service, which is not installed by default; it automatically updates the system at boot time
- the optional kyum graphical interface for yum (a KDE alternative to Pirut)
- the yumex graphical tool, which is available in Fedora Extras -- this is a very powerful GUI tool, providing access to some yum features that are not accessible through other GUI tools such as pirut and pup
In today's article I will focus on the first three programs: yum, pirut, and pup.
This week we are diverging from the usual daily themes to present a Focus Week on Package Management. This site, the Fedora Daily Package, is all about the software packages included in Fedora Core and Fedora Extras. Fedora includes a number of powerful tools for managing packages, and this week will focus on those tools so that you can get the most out of your system. The venerable rpm utility provides command-line access to the RPM system. With the development of the Fedora repository system, rpm is rarely used for package installation, update, or removal -- yum serves that role -- but rpm is still the best tool for directly querying the local database of installed software. The rpm query option (-q) provides access to the RPM database. It is used along with options that fall into two distinct categories: those which select the packages for which information is displayed, and those which select the information to be displayed about each of those packages. Here are the most common options: Options to select files: | Option | Selects... | | packagename | The installed package packagename | | -a | All installed packages | | -f filename | The instaled package that provided filename | | --whatprovides capabilityname | The installed package that provides the capability capabilityname | | --whatrequires capabilityname | The installed package that depends on the capability capabilityname | | --triggeredby packagename | All installed packages that include a trigger script which is triggered by the installation or removal of packagename | | -p filename | The uninstalled package file filename | Options to control the information displayed:| Option | Displays... | | (nothing) | The package name and version | | -l | List of all files in the package | | -c | List of config files in the package | | -d | List of documentation files in the package | | --provides | List of capabilities provided by the package | | --requires | List of capabilities required by the package (dependencies) | | -i | Detailed metadata about the packages | | --scripts | Installation/uninstallation scripts included in the package | | --triggers | Trigger scripts included in the package |
These arguments can be combined in many different ways. Here are some examples:
This week we are diverging from the usual daily themes to present a Focus Week on Package Management. This site, the Fedora Daily Package, is all about the software packages included in Fedora Core and Fedora Extras. Fedora includes a number of powerful tools for managing packages, and this week will focus on those tools so that you can get the most out of your system.
The Fedora linux distribution is comprised of thousands of RPM packages. RPM stands for RPM Package Manager and refers to the package format, the tool used to manage packages, and the overall package system. RPM is important not only to Fedora but to the entire Linux community, because it is the package format specified in ISO 23360, the Linux Standard Base. An RPM package is a single file containing all of the components necessary to install one feature, such as a software application, a group of related utilities, a driver, or a set or fonts or artwork files. The components contained in an RPM package may include: - software (binaries or scripts)
- configuration files
- documentation, including manpages, info files, on-line help files, and text files
- data such as fonts, artwork, sound files, game levels, and XML stylesheets
- sample data files to aid the user in learning how to use an application
- scripts which are executed before or after the package is installed, and before or after the package is removed
- triggers: scripts which are executed when another package is installed or removed
- metadata, or data about the package, including the package name, summary, and description, software version, package revision, build date, packager name, build host, license, source URL (upstream website), and more
- a list of the capabilities provided by the package
- a list of the package's dependencies -- capabilities required in order to successfully install and use the package
The RPM system tracks installed packages in a local database, which is invaluable to a system administrator -- the database makes it easy to find out what is installed, identify the source of mystery files, determine if files have changed, and check which license applies to a package. When installing a package, the RPM system can determine when other packages are needed to meet dependencies, but RPM itself cannot determine which packages will solve those dependencies. The yum repository system builds on RPM, permitting dependencies to be solved automatically by searching repositories of packages. In the next few days we'll examine the Fedora package tools in detail: - Tuesday - Using the rpm command to query the package database as well as install, update, and remove packages.
- Wednesday - Using yum repository tools, including yum, pirut, pup, yum-updatesd, and yumex.
- Thursday - Enabling and disabling repositories and using yum plugins.
- Friday - Package management tips and tricks.
|