RPM包之rpm命令
RPM包与源码包的区别
1、软件包分类
-
源码包:C源代码包
-
rpm包:编译之后的二进制包
2、源码包
-
优点:开源;可以自由选择所需功能;可看源代码;卸载方便(直接删除安装位置);
-
缺点:安装步骤过多;编译时间过长;
3、RPM包
- 优点:使用简单,只需要几个命令就可以实现包的安装、升级、查询、卸载;安装速度快;
- 缺点:不能看源代码;功能选择不如源代码灵活;依赖性;
RPM包命名和依赖性
1、RPM包的命名规则
httpd-2.4.6-67.el7.centos.x86_64.rpm
2、RPM包的依赖性
- 树形依赖性:a -> b -> c,即a依赖b,b依赖c
- 环形依赖:a -> b -> c -> a
- 模块依赖:模块依赖查询网站:www.rpmfind.com
RPM包的安装、升级、卸载和查询
1、包全名和包名
2、RPM安装:rpm -ivh 包全名
#rpm包的安装格式
rpm -ivh 包全名
选项:
-i(install) 安装
-v(verbose) 显示详细信息
-h(hash) 显示进度
--nodeps 不检测依赖性
举例:
[root@localhost Packages]# rpm -ivh httpd-2.4.6-67.el7.centos.x86_64.rpm
可能会有很多依赖性问题出现,根据一个个依赖性继续rpm安装就可以了
3、RPM包升级:rpm -Uvh 包全名
#RPM包的升级格式
rpm -Uvh 包全名
选项:
-U (upgrade) 升级
过程和安装完全一样。
4、RPM包的卸载:rpm -e 包名
#RPM包的卸载格式
rpm -e 包名
选项:
-e (erase) 卸载
--nodeps 不检测依赖性
举例:
[root@localhost Packages]# rpm -e httpd
错误:依赖检测失败:
httpd = 2.4.6-67.el7.centos 被 (已安裝) httpd-devel-2.4.6-67.el7.centos.x86_64 需要
[root@localhost Packages]# rpm -e httpd-devel
[root@localhost Packages]# rpm -e httpd
注:卸载要按照安装依赖性的反向卸载
5、RPM包的查询:rpm -q
查询是否安装:
[root@localhost ~]# rpm -q 包名
#查询包是否安装
选项:
-q 查询(query)
[root@localhost ~]# rpm -qa
#查询所有已经安装的RPM包
选项:
-a 所有
查询软件包的详细信息:
[root@localhost ~]# rpm -qi 包名
#查询软件包的详细信息
选项:
-i 查询软件信息(information)
查询包中文件安装位置
[root@localhost ~]# rpm -ql 包名
#查询包中文件安装位置
选项:
-l 列表(list)
查询系统文件属于哪个RPM包
[root@localhost ~]# rpm -qf 系统文件名
选项:
-f 查询系统文件属于哪个RPM包(file)
查询软件包的依赖性
[root@localhost ~]# rpm -qR 包名
选项:
-R 查询软件包的依赖性(requires)
RPM包之yum命令
yum命令
1、常用yum命令
查询
[root@localhost ~]# yum list
#在远程服务器上查询所有可用的软件包列表
[root@localhost ~]# yum search 关键字
#搜索远程服务器上所有和关键字相关的包
安装
[root@localhost ~]# yum -y install 包名
#选项:
install 安装
-y 自动回答yes
升级
[root@localhost ~]# yum -y update 包名
#选项:
update 升级
-y 自动回答yes
卸载
[root@localhost ~]# yum -y remove 包名
#选项:
remove 卸载
-y 自动回答yes
注:卸载命令不是很安全,会把它依赖的所有的包都卸载,容易把系统搞崩溃
2、YUM软件包组命令
[root@localhost ~]# yum grouplist
#列出所有可用的软件组列表
[root@localhost ~]# yum groupinstall 软件组名
#安装指定软件组,组名可以由grouplist查询出来
[root@localhost ~]# yum groupremove 软件组名
#卸载指定软件组
光盘yum源
1、光盘yum源搭建步骤
1.挂载光盘
#新建一个挂载点
[root@localhost ~]# mkdir /mnt/cdrom
#把设备文件名挂载到挂载点上
[root@localhost ~]# mount /dev/cdrom /mnt/cdrom
2.让网络yum失效
#进入yum源配置文件
[root@localhost ~]# cd /etc/yum.repos.d/
#把网络yum源备份,然后删除
[root@localhost yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak
注:网络yum源失效后,系统默认使用光盘yum源
3.修改光盘yum源
[root@localhost yum.repos.d]# vim CentOS-Media.repo
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom
# file:///media/cdrom/
# file:///media/cdrecorder/
#注释这两个不存在的地址
gpgcheck=1
enabled=1
#把enabled=0改为1,让这个yum源配置文件生效
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/81064.html