Linux基础之-RPM包管理YUM仓库

RPM包管理

1.安装

-i: 安装
-v: 详细信息
-h: 安装进度
[root@oldboy ~]# rpm -ivh /mnt/Packages/telnet* 
Preparing...                          ################################# [100%]
Updating / installing...
1:telnet-server-1:0.17-64.el7         ################################# [ 50%]
2:telnet-1:0.17-64.el7                ################################# [100%]

preparing:准备过程
	检查软件包的依赖关系
	只要检测安装软件包中有依赖关系,且没有找到所以依赖的软件包,停止安装
	检查软件包是否已安装
	只要检测安装软件包中有一个已经安装了,就停止安装
		
--nodeps 
	忽略依赖关系(不建议)
--force
	强制覆盖安装
	覆盖安装过程中,如果软件自带文件都存在,安装过程中不会将这些文件重新覆盖


2.查询
rpm -q          //查看指定软件包是否安装                    ***
rpm -qa         //查看系统中已安装的所有RPM软件包列表       *****
[root@oldboy ~]# rpm -qa vim*
vim-common-7.4.160-4.el7.x86_64
vim-filesystem-7.4.160-4.el7.x86_64
vim-enhanced-7.4.160-4.el7.x86_64
vim-minimal-7.4.160-4.el7.x86_64

[root@oldboy ~]# rpm -qa |wc -l
468

rpm -qi     //查看指定软件的详细信息
rpm -ql     //查询指定软件包所安装的目录、文件列表      ***
rpm -qc     //查询指定软件包的配置文件
rpm -qd     //查询指定软件包的帮助文档
rpm -qf     //查询文件或目录属于哪个RPM软件             *****

[root@oldboy ~]# rpm -qf `which mount`
util-linux-2.23.2-52.el7.x86_64
=========================================================================

//查询未安装的软件包信息
rpm -qip    //查询未安装的rpm包详细信息
rpm -qlp    //查询未安装的软件包会产生哪些文件

3.升级
	-U
	-F

4.卸载
	-e
	需要考虑依赖关系

安装 .rpm 软件包时,-i、-U、-F选项有何区别?
-i 安装软件包,必须没有之前版本,如果有之前版本--force
-U 升级安装软件包,之前版本可有可无
-F 刷新安装软件包,必须有之前版本

本地YUM仓库

yum
	yellowdog update modify
	yum是基于RPM包管理, 能够自动解决依赖关系, 极大的方便rpm包的安装升级

1.本地仓库
mount /dev/cdrom /mnt

mkdir /etc/yum.repos.d/backup

cd /etc/yum.repos.d/

cp *.repo backup/

rm -f *.repo
==========================================
vim mnt.repo
[local]
name=this is local repo
baseurl=file:///mnt
enabled=1
gpgcheck=0

yum clean all
yum makecache
yum install -y httpd
	
缺点:1.软件版本较低 2.软件不全 3.光驱读速慢	
临时使用

2.网络YUM仓库

阿里官方源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache

阿里云扩展源
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

3.nginx官方库
cat >nginx.repo<<EOF 
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
EOF

=================================================================================
4.mysql官方库
创建mysql官方库
yum install -y https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

5.zabbix官方库
创建zabbix官方库
rpm -i https://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm

6.openstack官方库
创建openstack官方库
yum install centos-release-openstack-mitaka
yum install https://repos.fedorapeople.org/repos/openstack/openstack-mitaka/rdo-release-mitaka-6.noarch.rpm

7.saltstack官方库
创建国内阿里库
yum install https://mirrors.aliyun.com/saltstack/yum/redhat/salt-repo-latest-2.el7.noarch.rpm
sed -i "s/repo.saltstack.com/mirrors.aliyun.com\/saltstack/g" /etc/yum.repos.d/salt-latest.repo

企业部署服务器的流程:
1.最小化安装操作系统
2.部署网络库和官方库
3.更新内核
	yum update

服务端:

1.服务端自己构建相应的yum库
阿里云网络yum库
base库
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

epel库
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

nginx库
cat > /etc/yum.repos.d/nginx.repo<<EOF 
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
EOF

打赏

One Comment

  • Howdy! I know this is kinda off topic but I was wondering which blog
    platform are you using for this website? I’m getting fed up of WordPress because I’ve had problems with hackers and I’m looking at alternatives for another platform.
    I would be awesome if you could point me in the direction of a
    good platform.

    My web-site :: Buy CBD

Leave a Comment

电子邮件地址不会被公开。 必填项已用*标注