Adding Software

This section describes:

Red Hat's Package Manager

If you have the Red Hat CDs, you can use the Red Hat Package Management software. Start it via: Start-->System Settings-->Packages. You can click on Details and then add checkmarks to software you want added. You will be asked to insert the appropriate Red Hat CD.

For more information, refer to: Red Hat Linux Customization Guide, Package Management Tool

One limitation of Red Hat's Package Management tool is it is aware of only software from the Red Hat distribution, and not other software that is available.


rpmfind: How to find software you would like to add to your system

Let's say you've heard there is a graphical ftp client program called gftp, but it isn't on your machine. You can look for gftp using
rpmfind.

First you'd enter gftp and click Search.

Then narrow down the results by searching for packages only for redhat-9 and the i386 architecture. The refined search would show the results:

rpmfind gftp

To install the gftp software, you would first click on the file listed under Download. To install it, as super-user, you would type:
rpm -i gftp-2.0.14-2.i386.rpm
You can use this same searching-download-install procedure for any software you've heard about for Linux.

Advanced Topic: Playing with RPMs

Once you have an .rpm file, there are lots of ways to probe, prod and install software with it. Below shows examples of using RPM packages.

Installing a package:

rpm -i telnet-server-0.17-20.i386.rpm

Upgrading a package:

rpm -iUh telnet-server-0.17-23.i386.rpm

Installing in a very verbose/talkative mode:

rpm -ivv telnet-server-0.17-23.i386.rpm

List all installed pacakges on a system:

rpm -qa | less

Remove a package:

rpm -e telnet-server

Detailed information about a package file that may not be installed:

rpm -qpi telnet-server-0.17-23.i386.rpm

Detailed information about a package that is installed:

# rpm -qi telnet-server
Name        : telnet-server                Relocations: (not relocateable)
Version     : 0.17                              Vendor: Red Hat, Inc.
Release     : 23                            Build Date: Tue 23 Jul 2002 06:05:54 AM PDT
Install date: Fri 06 Dec 2002 01:39:38 PM PST      Build Host: stripples.devel.redhat.com
Group       : System Environment/Daemons    Source RPM: telnet-0.17-23.src.rpm
Size        : 47110                            License: BSD
Signature   : DSA/SHA1, Tue 03 Sep 2002 02:41:07 PM PDT, Key ID 219180cddb42a60e
Packager    : Red Hat, Inc. 
Summary     : The server program for the telnet remote login protocol.
Description :
Telnet is a popular protocol for logging into remote systems over the
Internet. The telnet-server package includes a telnet daemon that
supports remote logins into the host machine. The telnet daemon is
enabled by default. You may disable the telnet daemon by editing
/etc/xinetd.d/telnet.

Which version of a package is installed:

# rpm -q telnet-server
telnet-server-0.17-23

What package owns a file:

# rpm -qf /usr/sbin/in.telnetd
telnet-server-0.17-23

# rpm -qf /usr/sbin/in.rlogind
rsh-server-0.17-10

What files are in an installed package:

# rpm -ql telnet-server
/etc/xinetd.d/telnet
/usr/sbin/in.telnetd
/usr/share/man/man5/issue.net.5.gz
/usr/share/man/man8/in.telnetd.8.gz
/usr/share/man/man8/telnetd.8.gz

What files are in an rpm file:

# rpm -qlp telnet-server-0.17-23*.rpm
/etc/xinetd.d/telnet
/usr/sbin/in.telnetd
/usr/share/man/man5/issue.net.5.gz
/usr/share/man/man8/in.telnetd.8.gz
/usr/share/man/man8/telnetd.8.gz

What configuration files are in a package:

# rpm -qcv telnet-server
-rw-r--r--    1 root    root              305 Jul 23 06:05 /etc/xinetd.d/telnet

What does the package require to be installed:

% rpm -q --requires telnet-server
xinetd
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1)
libutil.so.1
libutil.so.1(GLIBC_2.0)

Verifying a package:

% rpm -ql --dump telnet-server
/etc/xinetd.d/telnet 305 1027429550 0b197ee78f9596aa7d20fc1b586868cc 0100644 root root 1 0 14088 X
/usr/sbin/in.telnetd 41409 1027429550 91017fb459bec59459d1358d66d15889 0100755 root root 0 0 13889 X
/usr/share/man/man5/issue.net.5.gz 703 1027429550 a580f18e03e591d8b07b9a609dd25e3a 0100644 root root 0 1 0 X
/usr/share/man/man8/in.telnetd.8.gz 4693 1027429550 12d4cb3b2e29ed8727aad42e979cd263 0100644 root root 0 1 13954 X
/usr/share/man/man8/telnetd.8.gz 15 1027429550 00000000000000000000000000000000
0120777 root root 0 1 0 in.telnetd.8.gz
% rpm -V telnet-server
S.5....T c /etc/xinetd.d/telnet

The RPM database is in: /var/lib/rpm


Where to get more information

Linux Quick Reference Home