RedHatLinux操作系统软件包的管理
1. 安装、升级与删除软件包都很容易
2. 查询非常简单
3. 能够进行软件包的验证
4. 支持源代码形式的软件包
下面的说明,将充分体现出以上四个优点。
RPM软件包通常是以xxx.rpm的格式命名的,就好像HP-UX下标准的软件包是xxx.depot的形式一样。一般,一个标准的RPM软件包的名字能够告诉我们一些信息,例如rhviewer-3.10a-13.i386.rpm,从这样一个名字的RPM软件包,我们可以知道,软件的名称是rhviewer,版本是3.10a,次版本是13,运行的平台是i386。
RPM通常有5种方式来管理RPM软件包:安装、删除、升级、查询和验证。
1. 安装
#rpm -ivh rhviewer-3.10a-13.i386.rpm
其中使用到的参数ivh说明如下:
i: 使用RPM的安装模式
v: 在安装的过程中显示安装的信息
h: 在安装的过程中输出#号
另外,RPM还能够通过FTP来进行远程安装,形式其实和本地安装差不多,只要在文件名的前面加上适当的路径就可以了:
#rpm -ivh ftp://xxxx/rhviewer-3.10a-13.i386.rpm
注意:对于远程安装来说,建议不要忘记h参数,不然可能不知道安装程序是否还在进行。或者,也可以通过--percent参数来知道安装的进度。对于详细帮助信息,可以通过#rpm --help或者#man rpm来获得。
在安装过程中,可能会经常遇到以下几种情况:
<1>重复安装软件包
如果要安装的软件之前已经安装过,就会在安装过程中出现以下错误信息:
#rpm -ivh rhviewer-3.10a-13.i386.rpm
package rhviewer-3.10a-13 is already installed
如果确定重新安装一次,可以加上--replacepkgs参数:
#rpm -ivh --replacepkgs rhviewer-3.10a-13.i386.rpm
<2>软件包中用到的某个文件已经被其他软件包安装
这种情况可能最常出现,多个软件包都包含某个或某些文件,当安装了第一个软件包,再安装其他软件包的时候,就会出现以下错误:
#rpm -ivh rhviewer-3.10a-13.i386.rpm
rhviewer /usr/bin/rhviewer conflicts with file from msviewer-1.10b-01
error: rhviewer-3.10a-13.i386.RPM cannot be installed
此时,可以用--replacefiles参数:
#rpm -ivh --replacefiles rhviewer-3.10a-13.i386.rpm
<3>软件包之间的相关性
有的时候,一个软件包的作用要基于另外一个软件包,如果安装该软件包时候没有安装需要的另外一个软件包,就会有错误信息:
#rpm -ivh rhviewer-3.10a-13.i386.rpm
failed dependencies: rhviewer is needed by rhpainter-2.24-20
此时,建议先安装这个需要的软件包。不过,如果你愿意尝试一下是否不安装这个需要的软件包是否也能够正常使用你真正要安装的软件的话,可以加上--nodeps参数:
#rpm -ivh --nodps rhviewer-3.10a-13.i386.rpm
2. 删除
#rpm -e rhviewer
注意:这里接的不是安装时候软件包的名字rhviewer-3.10a-13.i386.rpm,而只要用rhviewer或者rhviewer-3.10a-13就可以了。建议的方式是先用RPM查询出你要删除的软件,然后用该命令删除。
这里最常出现的错误提示就是,当你要删除的软件包被其他软件包关联时候,就会出现错误提示:
#rpm -e rhviewer
removing these packages would break dependencies: rhviewer is neededby rhpainter-2.24-20
3. 升级
更新软件包的版本到最新版本,也是经常用到的:
#rpm -Uvh rhviewer-3.10a-13.i386.rpm
升级软件的模式其实是先删除旧软件包,然后再安装新软件包。而且,你还可以选择用这种升级的模式来安装软件包,因为,没有旧软件包的情况下,此升级方式仍然可正常运行。
如果系统中有旧版本存在,你就可以看到以下信息:
#rpm -Uvh rhviewer-3.10a-13.i386.rpm
saving /etc/rhviewer.conf as /etc/rhviewer.conf.rpmsave
如果,你要降低当前版本到更老的版本,一个办法就是删除该版本,然后再重新安装旧的版本,也可以用--oldpackage参数来进行“升级”:
#rpm -Uvh --oldpackage rhviewer-3.10a-13.i386.rpm
补充说明:
还有一种升级的安装方式:更新。
#rpm -Fvh rhviewer-3.10a-13.i38
新文章:
- CentOS7下图形配置网络的方法
- CentOS 7如何添加删除用户
- 如何解决centos7双系统后丢失windows启动项
- CentOS单网卡如何批量添加不同IP段
- CentOS下iconv命令的介绍
- Centos7 SSH密钥登陆及密码密钥双重验证详解
- CentOS 7.1添加删除用户的方法
- CentOS查找/扫描局域网打印机IP讲解
- CentOS7使用hostapd实现无AP模式的详解
- su命令不能切换root的解决方法
- 解决VMware下CentOS7网络重启出错
- 解决Centos7双系统后丢失windows启动项
- CentOS下如何避免文件覆盖
- CentOS7和CentOS6系统有什么不同呢
- Centos 6.6默认iptable规则详解