RHCSA-软件安装rpm/yum

本文介绍了RHEL系统中使用RPM包和YUM工具进行软件安装的方法。包括RPM包的安装、卸载及查询命令,以及解决RPM包依赖问题的方式。此外,还介绍了YUM工具如何更好地解决依赖性问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RHEL 安装软件包有两种安装方式

  1. 源码包安装软件复杂

安装的第一步就是将软件包的源代码编译成机器语言

优点是如果你想要哪些功能 你可以在代码上做出修改

源码包安装速度非常慢

  1. 二进制包的安装(rpm包安装)---早期redhat package manager,现在叫做rpm package manager

rpm包是已经组建好的系统可以直接识别二进制类型的包,所以安装速度非常快

缺点是软件包的安装位置在rpm 包组建好的时候就已经固定了,而且功能也已经固定了。

RHEL是通过rpm安装的。

 

如果安装软件,需要先下载软件

在RHEL7系统中 光盘里有软件

在LINUX系统中如果你想使用外部存储,就必须要挂载 mount 才可以使用。

 

mount /dev/sr0 /mnt

df -Th 查看挂载情况

umount /dev/sr0   或者 umount /mnt 挂载点

 

安装命令:

rpm -ivh  vsftpdXXXX

-i 表示安装 install

-v表示具体信息

-h 表示显示安装进度条

 

安装包必须是全名,必须指定安装路径

如果不在packages目录下需要在安装的时候指定绝对路径或者相对路径

比如在/root 下, 安装时候 rpm -ivh /mnt/Packages 包全名

 

卸载命令:

rpm -evh vsftp

卸载时候需要指定包名即可,不能全名

 

rpm -qi vsftpd 查看安装软件包的信息

rpm -qa | grep XXX 查看系统安装所有的软件包 并查询过滤你需要查的软件包

rpm -ql 包名  查询某个软件包的安装路径

rpm -qf 某个文件    该命令能查看到某个文件是从哪个软件包安装过来的

 

[root@rhce7-0 ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

 

[root@rhce7-0 ~]# rpm -qf /bin/passwd

passwd-0.79-4.el7.x86_64

[root@rhce7-0 ~]# rm -rf /bin/passwd

[root@rhce7-0 ~]# passwd

bash: passwd: command not found...

[root@rhce7-0 ~]# rpm -ivh passwd-0.79-4.el7.x86_64.rpm

警告:passwd-0.79-4.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID fd431d51: NOKEY

准备中...                          ################################# [100%]

软件包 passwd-0.79-4.el7.x86_64 已经安装

[root@station108 Packages]# passwd

bash: passwd: 未找到命令...

[root@rhce7-0 ~]# rpm -ivh passwd-0.79-4.el7.x86_64.rpm --force

[root@station108 Packages]# rpm -ivh passwd-0.79-4.el7.x86_64.rpm --force

警告:passwd-0.79-4.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID fd431d51: NOKEY

准备中...                          ################################# [100%]

正在升级/安装...

   1:passwd-0.79-4.el7                ################################# [100%]

[root@rhce7-0 ~]# passwd

[root@station108 Packages]# passwd

更改用户 root 的密码 。

新的 密码:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

==================================

rpm包有一个致命的缺点, 使用rpm包安装软件会有依赖性

树形依赖

环形依赖

模块依赖

.so.0 表示是模块。         搜寻网站: www.rpmfind.net

 

[root@rhce7-0 Packages]# rpm -ivh httpd-2.4.6-17.el7.x86_64.rpm

warning: httpd-2.4.6-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

error: Failed dependencies:

/etc/mime.types is needed by httpd-2.4.6-17.el7.x86_64

httpd-tools = 2.4.6-17.el7 is needed by httpd-2.4.6-17.el7.x86_64

libapr-1.so.0()(64bit) is needed by httpd-2.4.6-17.el7.x86_64

libaprutil-1.so.0()(64bit) is needed by httpd-2.4.6-17.el7.x86_64

[root@rhce7-0 Packages]# rpm -ivh httpd-tools-2.4.6-17.el7.x86_64.rpm

warning: httpd-tools-2.4.6-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

error: Failed dependencies:

libapr-1.so.0()(64bit) is needed by httpd-tools-2.4.6-17.el7.x86_64

libaprutil-1.so.0()(64bit) is needed by httpd-tools-2.4.6-17.el7.x86_64

[root@rhce7-0 Packages]# rpm -ivh apr-

apr-1.4.8-3.el7.i686.rpm               apr-util-1.5.2-6.el7.i686.rpm

apr-1.4.8-3.el7.x86_64.rpm             apr-util-1.5.2-6.el7.x86_64.rpm

apr-devel-1.4.8-3.el7.i686.rpm         apr-util-devel-1.5.2-6.el7.i686.rpm

apr-devel-1.4.8-3.el7.x86_64.rpm       apr-util-devel-1.5.2-6.el7.x86_64.rpm

[root@rhce7-0 Packages]# rpm -ivh apr-1.4.8-3.el7.x86_64.rpm

warning: apr-1.4.8-3.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:apr-1.4.8-3.el7                  ################################# [100%]

[root@rhce7-0 Packages]# rpm -ivh apr-util-

apr-util-1.5.2-6.el7.i686.rpm          apr-util-devel-1.5.2-6.el7.i686.rpm

apr-util-1.5.2-6.el7.x86_64.rpm        apr-util-devel-1.5.2-6.el7.x86_64.rpm

[root@rhce7-0 Packages]# rpm -ivh apr-util-1.5.2-6.el7.x86_64.rpm

warning: apr-util-1.5.2-6.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:apr-util-1.5.2-6.el7             ################################# [100%]

[root@rhce7-0 Packages]# rpm -ivh httpd-2.4.6-17.el7.x86_64.rpm

warning: httpd-2.4.6-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

error: Failed dependencies:

/etc/mime.types is needed by httpd-2.4.6-17.el7.x86_64

httpd-tools = 2.4.6-17.el7 is needed by httpd-2.4.6-17.el7.x86_64

[root@rhce7-0 Packages]# rpm -ivh httpd-tools-2.4.6-17.el7.x86_64.rpm

warning: httpd-tools-2.4.6-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:httpd-tools-2.4.6-17.el7         ################################# [100%]

[root@rhce7-0 Packages]# rpm -ivh httpd-2.4.6-17.el7.x86_64.rpm

warning: httpd-2.4.6-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

error: Failed dependencies:

/etc/mime.types is needed by httpd-2.4.6-17.el7.x86_64

[root@rhce7-0 Packages]# rpm -ivh mailcap-2.1.41-2.el7.noarch.rpm

warning: mailcap-2.1.41-2.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:mailcap-2.1.41-2.el7             ################################# [100%]

[root@rhce7-0 Packages]# rpm -ivh httpd-2.4.6-17.el7.x86_64.rpm

warning: httpd-2.4.6-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:httpd-2.4.6-17.el7               ################################# [100%]

[root@rhce7-0 Packages]#

 

 

yum 可以更好的解决rpm包依赖性关系的方法

yum 的配置文件 /etc/yum.repos.d/

 

在/etc/yum.repos.d/下创建以.repo 结尾的文件

编辑此文件 vim

[yum-name] 表示yum 仓库的名称

 name        名称 随意指定

 baseurl file:///mnt        base URL 指定的是记录软件包依赖关系的目录repodata【file://表示本机/本地】

 enabled = 1    表示仓库是可用的

 gpgcheck = 0  软件安装不用认证

yum list 可以查看软件搭建的是否正确 同时下载缓存

yum repolist

yum install mariadb-server <tab>

yum remove xxxxxx 不删除依赖性软件

yum history

yum history info <ID>

yum history undo 2----- 撤销安装的所有的有依赖性的软件

 

也可以用命令创建repo 文件

yum-config-manager --add-repo=file:///mnt   ---baseurl的位置

echo "gpgcheck=0" >> /etc/yum.repos.d/mnt.repo

cat /etc/yum.repos.d/mnt.repo

网易开源镜像站:http://mirrors.163.com/  这里面有repodata 只要满足能上网就可以用这里面的repodata

 

如何查看安装软件包组的安装

yum grouplist

yum -y groupinstall “Virtualization Host“

yum upgrade

 

yum group list

yum group install "G"

 

yum group install "virt*"   virt-manager

 

切换字符界面

yum -y groupinstall “Server with GUI”

systemctl isolate   启动目标   临时修改

systemctl set-default graphical.target       表示下次设置开启为图形化界面

### RHCSA 9 考试真题与模拟题 对于准备参加RHCSA 9考试的考生来说,了解并熟悉实际考题非常重要。虽然无法提供具体的历年真题,可以基于官方文档和其他资源来构建类似的练习场景。 #### 配置YUM仓库和安装软件包 为了更好地模仿真实环境中的操作,在练习环境中可以通过配置自定义yum源来进行实践。例如,当遇到需要从特定服务器获取RPM包的情况时,可按照如下方式设置: ```bash # 创建一个新的repo文件 vi /etc/yum.repos.d/local.repo # 添加以下内容以指向本地或可信的HTTP/HTTPS地址作为新的yum源 [local-rhel] name=Local RHEL Repository baseurl=http://content.example.com/rhel7.0/x86_64/dvd/ enabled=1 gpgcheck=0 ``` 此命令允许通过指定URL访问外部存储库,并从中安装所需的软件包[^2]。 #### 用户管理任务演练 另一个常见的考核点涉及Linux系统的用户账户管理和权限分配。下面是一个创建新组以及向其中添加用户的例子: ```bash groupadd sysmgrs # 新建sysmgrs用户组 useradd -G sysmgrs natasha # 将natasha加入到sysmgrs组中 useradd -G sysmgrs harry # 同样处理harry账号 useradd -s /bin/false sarah # 设置sarah登录shell为false,即不允许其登陆系统 echo password | passwd --stdin natasha # 使用管道符给三个用户设定相同密码 echo password | passwd --stdin harry # echo password | passwd --stdin sarah # ``` 上述脚本展示了如何批量创建具有相似属性的不同用户,并为其指派初始密码[^3]。 #### Docker镜像加载实战 针对容器化应用的支持也是现代Linux管理员技能的一部分。如果希望测试Docker相关功能但又缺乏网络连接,则可以从已有tarball文件恢复所需镜像: ```bash docker load < nginx.tar # 加载名为nginx.tar的离线镜像档案至当前主机上 ``` 这一步骤能够帮助学员掌握即使在网络受限的情况下也能顺利完成部署工作的方法[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值