您使用什么方法在管理你的 RPM,从光碟片安装,从网络下载安装、还是使用 Red Hat 的 up2date(Red Hat Network)在维护,这些都是解决问题的方法,可是你可以有更好的选择 -- APT
APT 的安装、使用
1-1. 什么是 APT
APT(Advanced Package Tool)是 Debian GNU/Linux 用来管理套件的工具,Conectiva 这家巴西的 Linux 套件公司将它移植到使用 RPM 系统的 Linux 套件上,所以现在我们才可以在 Red Hat Linux(或 Fedora) 上使用 APT 来管理我们的 RPM
1-2. APT 能做什么
我们可以用 APT 来管理我们的 RPM ,不管是安装、移除、或是升级,APT 都做的到,可是我们选用 APT 最大的理由是:它能够自动处理 RPM 相依性的问题,例如:当我们要安装 A rpm,而 A rpm 和 B rpm 又有相依关係的时候,传统作法是先下载 B rpm 安装之后,再下载 A rpm 安装之;可是我们若有安装 APT,则只要下一行「apt-get install A」指令就可以了,这样 APT 就会帮我们下载 A rpm,且会自动下载相依性档桉(B rpm)帮我们安装,如此一来我们对于 RPM 的安装、移除、或是升级都可以不用去管烦人的相依性问题了
1-3. APT 简易运作原理
我们的机器安装了 APT 套件之后就成了 APT 的使用者端,当我们在安装、升级 RPM 的时候,事实上,都是透过网络连到远端的 APT 伺服器去下载 RPM 回来安装的,APT 伺服器我们是可以自己指定的,而 APT 使用者端也可以同时成为 APT 伺服器
当我们安装了 APT套件之后就会有 apt-get 指令,下 apt-get update 指令的时候会同步使用者端和 APT 伺服器的 RPM 索引清单(package list),APT 伺服器的 RPM 索引清单置于 base 资料夹内,使用者端电脑取得 base 资料夹内的 bz2 RPM 索引清单压缩档后,会将其解压置放于 /var/state/apt/lists/,而当使用者使用 apt-get install 或 apt-get dist-upgrade 指令的时候,就会将这个资料夹内的资料和使用者端电脑内的 RPM 资料库比对,如此一来就可以知道那些 RPM 已安装、未安装、或是可以升级的,然后 APT 就会自动透过网络下载需要的 rpm 回来安装了
1-4. 安装 Fedora Core 2、Fedora Core 1、freshrpms 的 GPG KEY :
rpm --import /usr/share/doc/fedora-release-2/RPM-GPG-KEY
rpm --import /usr/share/doc/fedora-release-1/RPM-GPG-KEY
rpm --import ftp://apt.nc.hcc.edu.tw/pub/freshrpms/RPM-GPG-KEY
注:
装了 Fedora Core2、Fedora Core 1、freshrpms 的 GPG key 之后,在安装他们维护的 rpm 的时候才不会出现警告讯息,若不在乎这些讯息,没有安装也是没有关係的
1-5. APT 的安装
以下的范例都是以 网站所维护的 apt rpm 为例
(若是对 CLE 所维护的 APT 有兴趣,请参考:~candyz/APT-HOWTO_CLE.txt)
for Fedora Core 2
线上安装:rpm -ivh ftp://apt.nc.hcc.edu.tw/pub/apt/fedora/linux/2/i386/RPMS.extra/apt-0.5.15cnc6-1.1.hcc.i386.rpm
for Fedora Core 1
线上安装:rpm -ivh ftp://apt.nc.hcc.edu.tw/pub/apt/fedora/linux/1/i386/RPMS.extra/apt-0.5.15cnc3-0.1.hcc.i386.rpm
for Red Hat Linux 9
线上安装:rpm -ivh ftp://apt.nc.hcc.edu.tw/pub/freshrpms/RedHat/9/apt/apt-0.5.5cnc6-fr1.i386.rpm
1-6. 修改 APT 伺服器来源
freshrpms 维护的 apt rpm 预设的 APT 伺服器是 ,远在国外,速度较慢,底下将其改为 新竹县教育研究发展暨网络中心 维护的 APT 伺服器
vi /etc/apt/sources.list
#rpm fedora/linux/1/i386 core updates freshrpms
↑找到这一行在最前面加上 # 注解符号,然后加入适合您的系统版本的 apt 伺服器来源设定
for Fecora Core 2
rpm ftp://apt.nc.hcc.edu.tw/pub/apt/fedora/linux/2 i386 os updates freshrpms firefly extra
for Fecora Core 1
rpm ftp://apt.nc.hcc.edu.tw/pub/apt/fedora/linux/1 i386 os updates freshrpms firefly extra
for Red Hat linux 9
rpm ftp://apt.nc.hcc.edu.tw/pub/apt/redhat/9 i386 os updates freshrpms firefly extra
注意:若您是按照上面网址线上安装 for Fedora Core 2、Fedora Core 1 的 apt rpm 的话,就不用修改 sources.list 了,因为 apt-0.5.15cnc3-0.1.hcc.i386.rpm 的 sources.list 已经修改过了。
1-7. APT 的使用 -- 底下列出几个常用的指令
apt-get update
更新:这指令是用来取得记录在 /etc/apt/sources.list 内的远端伺服器的套件档桉清单, 在使用 「apt-get dist-upgrade」指令升级套件前,一定要记得先用这指令将套件档桉清单更新
apt-get dist-upgrade
升级:这裡的升级,并不是指由 Red Hat Linux 8.0 变成 9 这样的升级,而是当 Red Hat 有出升级的 rpm 的时候,我们就可以透过这个指令,升级我们已经安装的 rpm
Fedora Core 2 有出那些升级套件,由此网站可以得知:
Fedora Core 1 有出那些升级套件,由此网站可以得知:
Red Hat Linux 9 有出那些升级套件,由此网站可以得知:https://rhn.redhat.com/errata/rh9-errata.html
注: