RPM和YUM

RPM包的管理

rpm包的简单查询指令

查询已安装的rpm列表   rpm -qa |grep xx 

查询所安装的所有rpm软件包  rpm -qa && rpm -qa |more[分页显示]

查询软件包是否安装   rpm -q xx

查询软件包信息  rpm -qi xx

查询软件包中的文件  rpm -ql xx

查询文件所属的软件包  rpm -qf  xx
-------------------------------------------------
卸载rpm包   rpm -e xx
强制删除rpm包    rpm  -e --nodeps  xx

安装rpm包   rpm  -ivh  RPM包全路径名称
i=install 安装
v=verbose 提示
h=hash 进度条


yum的简单命令

yum list  -- 查询所有可用的软件包列表

yum search 关键字     -- 搜索服务器上所有有关键字相关的包

yum info 关键字  -- 查找包名

yum -y install 包名  -- 注: 参数-y  自动回答yes 也就是说不需要我们手动输入yes确认了

升级,卸载操作

yum -y update 包名  --仅更新指定的软件命令

注:如果不加包名,就会升级所有的包,包括内核。所以必须加包名 来升级单个软件包 -- 请慎用升级所有包

yum check-update   -- 注:检测升级、列出所有可更新的软件清单命令

yum -y remove 包名 

其他操作

yum repolist --  注: 查看当前可用的yum源

yum clean all --  注:清除缓存和旧的包

yum deplist httpd  --  注:列出一个包所有依赖的包

yum makecache  将服务器上的软件包信息缓存到本地,以提高搜索安装软件的速度

————————————————————————————————————————————————————————–

yum配置文件解读

yum的配置文件有两种,一个是主配置文件(/etc/yum.conf),一个是各个仓库的配置文件,在/etc/yum.repos.d/目录下。主配置文件里面的配置针对各个仓库的配置文件(/etc/yum.repos.d/)都生效,各个仓库的配置文件里面的配置可以覆盖主配置文件,也就是说优先级比主配置文件yum.conf高。

在这里插入图片描述

[main]

cachedir=/var/cache/yum #yum下载的RPM包的缓存目录

keepcache=0 #缓存是否保存,1保存,0不保存。

debuglevel=2 #调试级别(0-10),默认为2(具体调试级别的应用,我也不了解)。

logfile=/var/log/yum.log #yum的日志文件所在的位置

exactarch=1 #在更新的时候,是否允许更新不同版本的RPM包,比如是否在i386上更新i686的RPM包。

obsoletes=1 #这是一个update的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包。

gpgcheck=1 #是否检查GPG(GNU Private Guard),一种密钥方式签名。

plugins=1 #是否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror这个插件。

installonly_limit=3 #允许保留多少个内核包。

exclude=selinux* #屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离。

在这里插入图片描述

  • [base]:容器名称,一定要放在[]中。
  • name:容器说明,可以自己随便写。
  • mirrorlist:列出这个软件库可以使用的映射站台,这个可以注释掉。
  • baseurl:我们的 yum 源服务器的地址。默认是 CentOS 官方的 yum 源服务器,是可以使用的。如果你觉得慢,则可以改成你喜欢的 yum 源地址。
  • enabled:此容器是否生效,如果不写或写成 enabled 则表示此容器生效,写成 enable=0 则表示此容器不生效。
  • gpgcheck:如果为 1 则表示 RPM 的数字证书生效;如果为 0 则表示 RPM 的数字证书不生效。
  • gpgkey:数字证书的公钥文件保存位置。不用修改。

以本地光盘作为 yum 源服务器

如果 Linux 主机不能联网,yum 就不能使用吗? yum 已经考虑到这个问题,所以在 /etc/yum.repos.d/ 目录下 还有一个CentOS-Media.repo 文件,这个文件就是以本地光盘作为 yum 源服务器的模板文件,只需要进行简单的修改即可。

1,放入 CentOS 安装光盘,并挂载光盘到指定位置。命令如下:

root@localhost ~]# mkdir /mnt/cdrom
#创建cdrom目录,作为光盘的挂载点
[root@localhost ~]# mount /dev/cdrom /mnt/cdrom/
mount: block device/dev/srO is write-protected, mounting read-only
#挂载光盘到/mnt/cdrom目录下

2, 修改其他几个 yum 源配置文件的扩展名,让它们失效,因为只有扩展名是"*.repo"的文件才能作为 yum 源配置文件。当然也可以删除其他几个 yum 源配置文件,但是如果删除了,当你又想用网络作为 yum 源时,就没有了参考文件,所以最好还是修改扩展名。 命令如下:

3,修改光盘 yum 源配置文件 CentOS-Media.repo,参照以下方修改:

[root@localhost yum.repos.d]# vim CentOS-Media.repo
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
#地址为你自己的光盘挂载地址
        #file:///media/cdrom/
        #file:///media/cdrecorder/
        #注释这两个的不存在地址
gpgcheck=1
enabled=1
#把enabled=0改为enabled=1, 让这个yum源配置文件生效
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

网络yum源服务器搭建

切换到/etc/yum.repos.d/目录下cd /etc/yum.repos.d

(推荐)备份原有yum源文件mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

下载阿里云yum源wget -O /etc//yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo CentOS-7.repo(以Centos7为例)

清理yum缓存yum clean all

生成新的yum缓存yum makecache

Ftp yum源配置

一、 环境需要

1、2台centos A和B

2、配置两台主机的ip

3、关闭防火墙(2台)

	[root@localhost ~]# systemctl stop firewalld
	[root@localhost ~]# systemctl disable firewalld

关闭selinux

[root@localhost ~]# vim /etc/sysconfig/selinux

把SELINUX=enforcing改为SELINUX=diaabled如图
在这里插入图片描述
二、 安装主机A安装yum

1、 挂载镜像

1.1先在opt下创建centos目录

[root@localhost ~]# mkdir /opt/centos
[root@localhost ~]# mkdir /opt/yum
	**1.2把镜像挂载到/opt/centos 下**
[root@localhost ~]# mount /dev/cdrom /opt/centos

在这里插入图片描述

1.3配置yum源
备份yum源

[root@localhost ~]# mv /etc/yum.repos.d/* /opt/yum
		写配置文件
		[root@localhost ~]# vim /etc/yum.repos.d/local.repo
		[root@localhost ftp]# cat /etc/yum.repos.d/local.repo 
		[centos]
		name=centos
		baseurl=file:///opt/centos
		gpgcheck=0
		enabled=1
		[root@localhost ftp]# yum makecache
		[root@localhost ftp]# yum repolist

在这里插入图片描述
成功。

三、 主机A安装ftp服务

1、 下载vsftpd

[root@localhost ftp]# yum -y install vsftpd
		**2、修改配置文件**
[root@ localhost ~]# vi /etc/vsftpd/vsftpd.conf
添加anon_root=/opt

保存退出

3、启动

[root@localhost ftp]# systemctl retsatr vsftpd
[root@localhost ftp]# systemctl enabled vsftpd

四、主机B配置

1、配置yum源
备份yum源

[root@localhost ~]# mv /etc/yum.repos.d/* /opt/yum
写配置文件
[root@localhost ~]# vim /etc/yum.repos.d/local.repo
[root@localhost ftp]# cat /etc/yum.repos.d/local.repo 
[ftpyum]
name=ftpyum
baseurl=ftp://主机A的ip/centos
gpgcheck=0
enabled=1
[root@localhost ftp]# yum makecache  #缓存yum源提高下载速度
[root@localhost ftp]# yum repolist   #列出yum源
 

在这里插入图片描述

成功配置主机B通过ftp服务主机A的yum提供服务


设置yum优先级

查看是否安装了优先级的插件

[root@localhost ~]# rpm -qa | grep yum-plugin-
yum-plugin-fastestmirror-1.1.30-37.el6.noarch

我们看没有安装yum-plugin-priorities.noarch这个插件

安装yum-plugin-priorities.noarch插件

[root@localhost ~]# yum install yum-plugin-priorities.noarch -y

查看插件是否可用

[root@localhost ~]# cat /etc/yum/pluginconf.d/priorities.conf
[main]
enabled = 1  1表示可用,0为禁用

修改本地yum源优先使用

添加priority=1,数字越小优先级越高,也可以修改网络源的priority的值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值