Linux软件管理一:RPM包管理

1.RPM软件包

Red Hat Package Manager,由Red Hat公司提出,被众多Linux发行版所采用,也称二进制,无需编译,可以直接使用;无法设定个人设置和开关功能。

1.1.rpm软件包名称

软件名称 版本号(主版本、次版本、修订号) 操作系统 -----90%的规律
有依赖关系,不能自动解决依赖关系。
举例:openssh-6.6.1p1-31.el7.x86_64.rpm
数字前面的是名称
数字是版本号:第一位主版本号,第二位次版本号,带横杠的是修订号, el几—操作系统的版本。
noarch : 32位64位都支持
x86_64 : 64位
i4-686的包 :32位
devel:表示这个RPM包是软件的开发包;

1.2.用rpm安装需要考虑如下信息

需要考虑系统的版本需要与rpm对应;
系统的架构:如32位还是64位;
需要考虑依赖关系

2.rpm工具

RPM软件包的基本工具,无法自行解决依赖关系和自动下载软件包
优点:不需要配置,可以直接使用

2.1.安装

查找rpm包的网站:http://rpmfind.net/、http://pkgs.org
语法:rpm -ivh 软件包名称
-i install 安装
-vh verbose human 可视百分比
-U upgrade 升级

[root@loaclhost ~]# rpm -ivh filebeat-6.5.4-x86_64.rpm //本地安装rpm包

2.2.各种查询

(从本地的rpm数据库)
-q query 查询选项
-l list 列出软件包中的文件
-f file 查询/验证文件属于的软件包
-a all 查询/验证所有软件包

[root@loaclhost ~]# rpm	-qa	| grep 软件名	//查找软件是否安装
[root@loaclhost ~]# rpm -ql httpd			//查询http安装的文件
[root@loaclhost ~]# rpm -qf /usr/share/httpd/noindex	//查询该文件属于哪个包
[root@loaclhost ~]# rpm -qf /etc/passwd		//查询某一个文件是哪个软件产生的;只能查询已经安装好的软件

2.3.卸载

语法:rpm -e 软件名称
-e erase 卸载

[root@loaclhost ~]# rpm -e httpd 

3.yum工具

(Yellow dog Updater,Modified)一个在Fedora,RedHat以及CentOS中的前端软件包管理器
特性:基于RPM包管理,能够从指定的服务器自动下载RPM包并安装;可以自动处理依赖关系,并且一次性安装所有依赖的软件包。

3.1.网络yum源

3.1.1.配置yum仓库

安装好环境之后系统有centos自带的官方yum源,更换国内厂商提供的的软件包地址作为yum源,可使下载时速度更快更方便。(/etc/yum.repos.d
远程yum:http://、ftp://
先安装下载工具,并备份

[root@loaclhost ~]# yum	install	-y	wget
[root@loaclhost ~]# mv	/etc/yum.repos.d/*	/tmp

下载阿里源至yum库

[root@loaclhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

安装拓展源

[root@loaclhost ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

清理yum缓存,并重建缓存

[root@loaclhost ~]# yum clean all
[root@loaclhost ~]# yum makecache

查询yum源信息

[root@loaclhost ~]# yum repolist

3.1.2.yum管理RPM包

查看命令属于哪个软件:

[root@loaclhost ~]# yum provides rz

查看系统已经安装好的软件和没有安装的软件(源里存在即可查到):

[root@loaclhost ~]# yum list

安装软件,(-y跳过确认提示直接安装):

[root@loaclhost ~]# yum install 软件名称
[root@loaclhost ~]# yum install mysql mysql-server -y

重装:

[root@loaclhost ~]# yum -y reinstall 软件名        

卸载软件:

[root@loaclhost ~]# yum erase  mysql-server 
[root@loaclhost ~]# yum remove mysql-server 
[root@loaclhost ~]# yum -y remove mysql-server

yum卸载rpm查找出来所有与httpd相关的软件包全部卸载掉:

[root@loaclhost ~]# yum -y remove `rpm -qa | grep httpd`

3.2.本地yum源

需要提前准备镜像文件、部分安装包;提前备份repo文件
本地yum:file://
备份原来的repo文件

[root@loaclhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mv CentOS-Base.repo{,.bak}
[root@localhost yum.repos.d]# mv epel.repo{,.bak}

3.2.1.镜像挂载本地yum源

挂载镜像

[root@loaclhost ~]# mkdir /mnt/centos7
[root@loaclhost ~]# mount CentOS-7-x86_64-DVD-1708.iso /mnt/centos7/

编写yum配置文件是必须是.repo

[root@loaclhost ~] vim  /etc/yum.repos.d/CentOS.Base.repo
		[centos7]        #yum源区别名称,用来区分其他的yum源
		name='centos7'   #yum源名字
		baseurl=file:///mnt/centos7    #指定本地yum源的路径
		enabled=1        #是否使用此yum源(1为打开,0为关闭)
		gpgcheck=0       #检查软件

清理yum缓存,并重建缓存

[root@loaclhost ~]# yum clean all
[root@loaclhost ~]# yum makecache

3.2.2.私有仓库搭建yum源

安装repo索引文件工具

[root@loaclhost ~]# yum install -y createrepo

上传ISO光盘文件至系统中,并挂载ISO
(这里挂载的目的是使用镜像文件中的安装包,也可以直接上传软件包文件至/opt目录中)

[root@loaclhost ~]# mount CentOS-7-x86_64-DVD-2009.iso /mnt/

复制安装包至本地yum仓库目录下

[root@loaclhost ~]# cp -rf /mnt/Packages/ /opt/

创建本地yum源的repo索引

[root@loaclhost ~]# createrepo /opt 

制作repo仓库文件

[root@loaclhost ~] vim /etc/yum.repos.d/local.repo            
		[local]
		name='local'
		baseurl=file:///opt    #指定本地yum源的路径,也可以使用远程连接IP
		enabled=1
		gpgcheck=0

在/opt/Packages新增或删除rpm安装包以后,需要重建repo索引

[root@loaclhost ~]# createrepo /opt

清理yum缓存,并重建缓存

[root@loaclhost ~]# yum clean all
[root@loaclhost ~]# yum makecache
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TA548464

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值