2024年3月26日发(作者:)

因为安装软件是 root 的工作,因此你得要是 root 的身份才能够操作 rpm 这命令的。 用

rpm 来安装很简单啦!假设我要安装一个档名为 的文件,那

么我可以这样:

[root@www ~]# rpm -i

不过,这样的参数其实无法显示安装的进度,所以,通常我们会这样下达安装命令:

[root@www ~]# rpm -ivh package_name

选项与参数:

-i :install 的意思

-v :察看更细部的安装资讯画面

-h :以安装资讯列显示安装进度

范例一:安装

[root@www ~]# rpm -ivh

####################################### [100%]

1:rp-pppoe ####################################### [100%]

范例二、一口气安装两个以上的软件时:

[root@www ~]# rpm -ivh *.rpm

# 后面直接接上许多的软件文件!

范例三、直接由网络上面的某个文件安装,以网址来安装:

[root@www ~]# rpm -ivh /path/

另外,如果我们在安装的过程当中发现问题,或者已经知道会发生的问题, 而还是『执意』

要安装这个软件时,可以使用如下的参数『强制』安装上去:

rpm 安装时常用的选项与参数说明

可下达的选项 代表意义

--nodeps

使用时机

:当发生软件属性相依问题而无法安装,但你执意安装

危险性

: 软件会有相依性的原因是因为彼此会使用到对方的机制

或功能,如果强制安装而不考虑软件的属性相依, 则可能会造成

该软件的无法正常使用!

使用时机:

如果在安装的过程当中出现了『某个文件已经被安装

在你的系统上面』的资讯,又或许出现版本不合的信息

(confilcting files) 时,可以使用这个参数来直接覆盖文件。

危险性:

覆盖的动作是无法复原的!所以,你必须要很清楚的知

道被覆盖的文件是真的可以被覆盖喔!否则会欲哭无泪!

使用时机:

重新安装某个已经安装过的软件!如果你要安装一堆

--replacefiles

--replacepkgs

RPM 软件文件时,可以使用 rpm -ivh *.rpm ,但若某些软件已

经安装过了, 此时系统会出现『某软件已安装』的资讯,导致无

法继续安装。此时可使用这个选项来重复安装喔!

--force

使用时机:

这个参数其实就是 --replacefiles 与

--replacepkgs 的综合体!

使用时机:

想要测试一下该软件是否可以被安装到使用者的

Linux 环境当中,可找出是否有属性相依的问题。范例为:

rpm -ivh --test

使用时机:

由於 RPM 数据库破损或者是某些缘故产生错误时,

可使用这个选项来升级软件在数据库内的相关资讯。

使用时机:

想要略过数码签章的检查时,可以使用这个选项。

使用时机:

要将软件安装到其他非正规目录时。举例来说,你想

要将某软件安装到 /usr/local 而非正规的 /bin, /etc 等目录,

就可以使用『 --prefix /usr/local 』来处理了。

使用时机:

不想让该软件在安装过程中自行运行某些系统命令。

说明:

RPM 的优点除了可以将文件放置到定位之外,还可以自动

运行一些前置作业的命令,例如数据库的初始化。 如果你不想要

让 RPM 帮你自动运行这一类型的命令,就加上他吧!

--test

--justdb

--nosignature

--prefix 新路径

--noscripts

RPM 升级与升级 (upgrade/freshen)

后面接的软件即使没有安装过,则系统将予以直接安装; 若后面接的软件有

安装过旧版,则系统自动升级至新版;

如果后面接的软件并未安装到你的 Linux 系统上,则该软件不会被安装;亦

即只有已安装至你 Linux 系统内的软件会被『升级』!

-Uvh

-Fvh

RPM 查询 (query)

RPM 在查询的时候,其实查询的地方是在 /var/lib/rpm/ 这个目录下的数据库文件!另外,

RPM 也可以查询未安装的 RPM 文件内的信息!

[root@www ~]# rpm -qa <==已安装软件

[root@www ~]# rpm -q[licdR] 已安装的软件名称 <==已安装软件

[root@www ~]# rpm -qf 存在於系统上面的某个档名 <==已安装软件

[root@www ~]# rpm -qp[licdR] 未安装的某个文件名称 <==查阅RPM文件

选项与参数:

查询已安装软件的资讯:

-q :仅查询,后面接的软件名称是否有安装;

-qa :列出所有的,已经安装在本机 Linux 系统上面的所有软件名称;

-qi :列出该软件的详细资讯 (information),包含开发商、版本与说明等;

-ql :列出该软件所有的文件与目录所在完整档名 (list);

-qc :列出该软件的所有配置档 (找出在 /etc/ 底下的档名而已)

-qd :列出该软件的所有说明档 (找出与 man 有关的文件而已)