2024年6月1日发(作者:)

第三章 安装软件

3.1 RPM

RPM(RedHat Package Manager):

RPM软件包管理器是一种用于Internet下载包的打包及安装工具,为二进制已编译文件,与

之对应的开源代码的格式为SRPM。RPM命令中,长命令格式--query与缩写命令格式-q相

对应。下面是简单的命令说明:

命令行选项

--install

--upgrade

--erase

--query

--force

-h

--percent

-nodeps

--test

-V

安装一个软件包

升级或将当前已安装软件更新到最新版本

移出或删除一个已安装软件包

查询软件信息

强制进行安装。

使用符号“#”指示安装进度,与-v参数同时显示效果更好。

显示已完成百分比进度。

不进行依赖关系检查

测试安装是否能成功完成。

检验系统中的RPM包或文件。

-v(/--verbose,详细的) 通知RPM报告每一步操作的详细信息。

例:rpm -qi bash,显示bash包详细信息

rpm -ql bash,列出bash包包含的所有文件

rpm -qc bash,列出bash包中配置文件

rpm -q --qf “[%{INSTALLTIME:date}% n]” bash,查找bash包安装至系统中的时间

使用RPM安装软件包

1)# mount /media/cdrom,插入Fedora光盘,将在CDReadOnlyMeida中的文件挂载至

/media/cdrom/中;

2)# cd /media/cdrom/Fedora/RPMS/,并#ls joe*确定文件是否在其目录下;

3)# rpm –install –verbose –hash –test joe*,测试软件依赖关系;

4)# rpm –ivh joe*,安装软件;

5)# rpm –q joe,查询命令以确认应用安装至系统中。

删除RPM软件包

# rpm –e –vvv joe,删除joe软件包并显示详细信息。

校验包

# rpm –V bash,检验bash包是否正常;rpm –Vf /bin/ls,检验安装包在文件系统下指定的文

件,即检验/bin/ls命令是否有效。

命令行选项

S

M

5

D

L

U

G

T

# rpm –Va,校验系统所有安装软件包

文件大小不一致

模型不一致(文件许可和类型)

MD5检验号不一致

主/辅设备号不匹配

访问链接路径不匹配

用户所者不一致

组所有者不一致

修改时间不一致

命令行选项

--install

--upgrade

--erase

--query

--force

-h

--percent

-nodeps

--test

-V

-v(/--verbose,详细的)

安装一个软件包

升级或将当前已安装软件更新到最新版本

移出或删除一个已安装软件包

查询软件信息

强制进行安装。

使用符号“#”指示安装进度,与-v参数同时

显示效果更好。

显示已完成百分比进度。

不进行依赖关系检查

测试安装是否能成功完成。

检验系统中的RPM包或文件。

通知RPM报告每一步操作的详细信息。

包确认

RPM对软件包数据签名,有时需要手动确认哪些签名是值得信赖,则会在安装时出现警告

信息。要阻止这种情况出现,应将厂商的密钥导入本地,如:

# rpm –import /.../RPM-GPG-KEY-fedora

3.2 Yum(Yellow dog Updater, Modified)安装方式

Yum主要功能是更方便地添加/删除/更新RPM包。Yum是RPM系统的自动更新器及

包安装/卸载管理器,它能自动的计算出依赖关系并判断安装包中将会发生的事件。一般使

用Yum时,只需启用Yum软件库的配置文件(/etc/)即可。

# yum install gcc,安装gcc软件命令;

#yum search headers,返回匹配headers条件的软件列表,Yum具有强大搜索能力。

3.3 GNU(GNU’s Not Unix)软件的编译与安装

1)下载hello包源代码

# wget /gnu/hello/,其中wget(World Wide Web & Get)

是在网络上进行下载的简单而强大的自由软件,属于GNU,支持HTTP、HTTPS及FTP。

2)解压缩。tar归档把许多文件归档为单独一个大文件,并解档;gzip负责在tar归档

后进行压缩。

# tar –xvzf ,-x:释放文档,-v:报告tar处理文件信息,-z:用gzip压

缩/解压,-f:使用档案文件(必选)。解压时至当前目录并创建hello-2.1.1文件夹。

# less INSTALL,查看INSTALL文件,Ctrl+F向下翻页,q退出。

3)配置软件包。大多数软件包都会带有一个执行自动配置操作的脚本程序,通常命名

为config或configure,并可以带有参数。

# ./configure --help,查看软件包配置选项。一个常见参数是--prefix,允许设置软件开始

安装的基目录,默认为/usr/local/。

# ./configure,运行配置后将产生makfile编译文件。

4)编译软件包。# make,按照Makfile编译软件。

5)安装软件包。# make install,该命令将软件包安装到configure脚本中默认参数(--prefix)

指定位置下,它将启动自动安装脚本程序(经常嵌入Makefile文件中)。

6)测试软件包。# /usr/local/bin/hello

7)删除hello目录,#rm –rf hello-2.1.1