作者:北南南北
来自:LinuxSir.Org
提要:Fedora Core 系统中软件包管理器是 system-config-packages ;这个工具可以用来删除和添加系统光盘提供的软件包;本文也附加了ISO 加载和解包的用法 mount -o loop file.iso ;同时也对yum和apt软件包管理器也作一介绍;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
正文:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Fedora Core 软件包管理工具system-config-packages,这个工具主要是对系统安装盘中的软件管理,比如从安装盘中添加,有时我们在安装系统时没有安装的软件,可以通这个软件来补充;也可以通过软件包管理工具来删除通过系统安装盘已经安装的软件;功能上来说并不是特别强大;但对于补装软件还是有必要的;
一、system-config-packages的安装和使用;
1、首先确认是不已经安装 system-config-packages
[root@localhost beinan]# rpm -qa system-config-packages
system-config-packages-1.2.25-1
如果有上面的提示,就是已经安装;
如果没有安装,您可以通过如下的命令来安装:
[root@localhost beinan]# rpm -ivh system-config-packages*
2、运行system-config-packages
[beinan@localhost ~]# system-config-packages --help
Usage: system-config-packages [--help] [--tree=PATH] [--isodir=PATH]
我们可以看到 system-config-packages的帮助,可以看到system-config-packages支持iso补装或者删除软件包;
所以我们在运行这个命令时,要指定ISO的存放位置;
[beinan@localhost ~]# system-config-packages --isodir=存放ISO光盘映像的目录;
可能您的ISO映像存放于 Windows中的fat32分区,您可以用 mount 来加载分区;
请看《在Fedora core 4.0 加载NTFS和FAT32分区详述》
比如我是把ISO存放在windows操作系统的fat32分区中,并且我根据请看《在Fedora core 4.0 加载NTFS和FAT32分区详述》 文档mount到/mnt/wind目录中;
并且我把Fedora 的四人ISO存在于fat32分区,并且直接放到fat32分区之下;所以mount到 /mnt/wind中,所以ISO的目录就是/mnt/wind
所以根据自己系统的情况,用软件包管理器来添加和删除软件的命令是:
[beinan@localhost ~]# system-config-packages --isodir=/mnt/wind
注意:如果您把四个ISO存放在某个目录,必须把四个ISO同时放在一个目录里;这样才不会出现让您播放某张光盘的情况;
二、如何在Linux中打开iso文件?
其实ISO也是一个打包文件,和rar以及zip文件类似,只是他们的格式不同罢了;我们除了用软件包管理器以外,我们还能用把iso 挂载到一个目录中;这样我们也可以用手工来安装我们所需要的包;
首先我们要把iso 加载到一个目录,用的是
mount -o loop ISO文件名 目的目录
比如我们要把 iso 临时加载到 /mnt/temp目录中,当然我们首先要建这个目录
[root@localhost beinan]# mkdir /mnt/temp
然后我们来加载FC4的第一张ISO文件;
[root@localhost beinan]# mount -o loop /mnt/wind/FC4-i386-disc1.iso /mnt/temp/
[root@localhost beinan]# ls /mnt/temp/
autorun GPL README RPM-GPG-KEY RPM-GPG-KEY-fedora-rawhide TRANS.TBL
eula.txt images README-Accessibility RPM-GPG-KEY-beta RPM-GPG-KEY-fedora-test
Fedora isolinux RELEASE-NOTES RPM-GPG-KEY-fedora RPM-GPG-KEY-rawhide
我们所需要的RPM包就位于 /mnt/temp/Fedora/RPMS 目录中;
如果我想把四个ISO的文件都提取出来,我们能一个一个的加载,然后每个ISO文件的内容都拷入同一个目录中;
[root@localhost beinan]# mkdir /mnt/hda10/fc40
[root@localhost beinan]# cp -R /mnt/temp/* /mnt/hda10/fc40/
然后我们再加载第二张ISO;
[root@localhost beinan]#umount /mnt/temp 注:先卸载第一个ISO;
我们加载第二个ISO;并和第一个ISO一样,把所有的文件提出来,放到和第一个ISO提出来的文件存放在同一个目录;如果遇到提示是不是覆盖文件,覆盖就行;第三张和第四张盘都是如此;
[root@localhost beinan]# cp -R /mnt/temp/* /mnt/hda10/fc40/
cp:是否覆盖‘/mnt/hda10/fc40/eula.txt’? y
通过这个例子,我们知道提取出四张ISO内的所有文件都存放在 /mnt/hda10/fc40目录中。所以我们想查看Fedora Core 4.0所有的RPM包,就可以到 /mnt/hda10/fc40/Fedora/RPMS目录中查看,一个都不少,四张盘的都在;
如果想安装什么,就用
[root@localhost beinan]#rpm -ivh file.rpm 注:file 是软件包的名字;
如果有依赖关系 ,要把依赖的包先安装上;
比如我们想安装 gaim
[root@localhost beinan]#rpm -ivh gaim*.rpm 注:可以用通配符
三、其它软件包管理器,具有在线升级、安装、移除软件包功能;
在Fedora 中,还有很两个软件包管理器yum 和apt;具体可以参见 yum和apt的相关帖子;
《Freshrpms.net 资源介绍,及apt 和yum 的应用》
《Fedora Extras(Fedora 计划的扩充资源) rpm.livna.org软件仓库的介绍和应用》
后记: 只能算得上一个FAQ,写的太繁琐;无非就是mount -o loop ;