部署YUM仓库


一、yum 仓库

1.1 yum概述

yum的前身是yup,借助于yum软件仓库,可以完成安装、卸载、自动升级rpm软件包等任务,能自动查找并解决rpm包之间的依赖关系,而无需管理员手动去查找。
yum由仓库和客户端组成,所以yum可以存放在一台服务器或者两台服务器上,可以由官方提供,也可以有第三方来提供,如国内的阿里云,搜狐云,一些非盈利的组织(学校)。官方的源一般不在国内,下载速度受限制,手动改成国内的云可以大幅度提高速度:

软件仓库的提供方式:

网络源:
FTP服务:ftp://…
HTTP服务:http://…

本地源:
本地目录:file://…

1.2 yum常用命令

1.2.1 查询软件包命令

-------查询软件包命令------
#显示可用的安装包
yum list bind //查看bind可用包
#显示安装包详细信息
yum info [软件名]
#根据关键字查找软件安装包,相当于你只知道这个包里的某个关键字会全部给你匹配出来
yum search <关键词>
#你知道某个命令却不知道具体的包可以用此命令查找
yum whatprovides <关键词>

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1.2.2 查询软件包组命令

-------查询软件包组命令-------
#安装包组的查询 不加包组名 就是显示所有
yum grouplist [包组名]
#不加包组名显示全部
yum groupinfo <包组名>

在这里插入图片描述

1.2.3 yum安装升级

-------yum升级安装-------
#安装软件包
yum install httpd

在这里插入图片描述

#安装包组名
yum groupinstall gnome desktop
#更新安装包,可以单个也可以全部 后面加具体名称就是单个更新,不加就是全部更新。但是首先你要有更新的包组库否则也无法更新。
yum upgrade
#组包更新
yum groupupdate

1.2.4 软件卸载

#卸载已安装的软件必须加软件名
yum remove httpd

#查看历史的使用记录,选择ID 1,2,3,4,5,可以使用yum history undo 4 进行卸载,这样对比remove好处是可以将所有的依赖都删除
yum history
yum history undo 3 //3代表id号

#如果后悔 卸载 可以使用两种方式
yum history redo 4 (重新安装一遍)
yum history undo 6 (反悔卸载等于重新安装一遍)

二、YUM仓库的配置

2.1 YUM主配置文件

配置文件: /etc/yum.conf

[root@localhost ~]# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/ b a s e a r c h / basearch/ basearch/releasever //yum下载的RPM包的缓存目录 $basearch代表硬件 $releasever系统版本比如7
keepcache=0 //是否保存缓存 0代表不保存,1代表保存
debuglevel=2 //调试级别
logfile=/var/log/yum.log //日志文件位置
exactarch=1 //是否允许不同版本的rpm安装
obsoletes=1 //update的一个参数是否允许旧版本的运行
gpgcheck=1 //验证密钥
plugins=1 //是否允许插件,1为允许
installonly_limit=5 //保存5个内核
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release

2.2 YUM仓库配置文件

位置:/etc/yum.repos.d/

#下面是默认仓库,是centos官方的yum源,需要联网才可以使用
[root@localhost yum.repos.d]# ls /etc/yum.repos.d/
bak CentOS-Debuginfo.repo CentOS-Sources.repo
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-Media.repo

2.3 日志文件

/var/log/yum.log

[root@Kiro yum.repos.d]# cat /var/log/yum.log

三、搭建yum仓库

3.1 搭建本地yum仓库

3.1.1首先将光驱中的镜像文件进行挂载(先将虚拟机的光盘载入)

[root@localhost/]# mount /dev/sr0 /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost /]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 96G 5.2G 91G 6% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 497M 172M 326M 35% /boot
tmpfs tmpfs 407M 12K 407M 1% /run/user/42
tmpfs tmpfs 407M 0 407M 0% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /mnt

3.1.2切换到 yum.repo.d 目录 将自带的仓库移走,多个开启仓库文件可能会造成冲突无法使用

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir repo.bak
[root@localhost yum.repos.d]# mv *.repo repo.bak/
[root@localhost yum.repos.d]# ls
repo.bak

3.3.3新建yum仓库文件

[root@localhost yum.repos.d]# vim local.repo
[local]
name=local
baseurl=file:///mnt
enable=1
gpgcheck=0

3.3.4清空yum缓存

[root@localhost yum.repos.d]# yum clean all && yum make

3.2 搭建云yum仓库

服务端: 192.168.61.100
客户端:192.168.61.110

3.2.1服务端安装vsftp服务

[root@localhost /]# yum install -y vsftpd

3.2.2服务端切换到ftp目录下建立一个CentOS7目录

[root@localhost /]# cd /var/ftp
[root@localhost ftp]# ls
pub
[root@localhost ftp]# mkdir centos7
[root@localhost ftp]# mkdir other
[root@localhost ftp]# ls
centos7 other pub

3.2.3服务端将光驱里的文件包备份到centos7里

[root@localhost ftp]# cp -rf /mnt/* centos7/ &
[1] 22208
[root@localhost ftp]# cd centos7
[root@localhost centos7]# ls
CentOS_BuildTag EFI EULA GPL images isolinux LiveOS
[root@localhost centos7]# cd /var/ftp/other
[root@localhost other]# createrepo -g /mnt/repodata/repomd.xml ./
##手动创建repodate数据文件 以现有的

3.2.4服务端开启相关服务,关闭防火墙和自增强

[root@localhost other]# systemctl stop firewalld.service
[root@localhost other]# setenforce 0
setenforce: SELinux is disabled ##自增强已经就是关闭状态
[root@localhost other]# systemctl start vsftpd ##打开vsvtpd服务

3.2.5客户端安装ftp 服务并启动关闭防火墙和selinux

[root@pxw yum.repos.d]# yum install ftp
[root@pxw yum.repos.d]# systemctl stop firewalld.service

------默认开启服务------
[root@pxw yum.repos.d]# systemctl start vsftpd
测试ftp服务是否正常
[root@pxw yum.repos.d]# ftp 192.168.61.100
Connected to 192.168.61.100 (192.168.61.100).
220 (vsFTPd 3.0.2)
Name (192.168.61.100:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (192,168,61,100,107,87).
150 Here comes the directory listing.
-rw-r–r-- 1 0 0 0 Apr 16 17:23 1.txt
drwxr-xr-x 8 0 0 220 Apr 19 10:27 centos7
drwxr-xr-x 2 0 0 6 Apr 16 15:47 hhh
drwxr-xr-x 2 757 0 45 Apr 16 17:03 kiro
drwxr-xr-x 3 0 0 22 Apr 19 12:13 other
drwxrwxr-x 2 0 50 64 Apr 17 17:15 pub
226 Directory send OK.
ftp>

3.2.6编写yum仓库文件

[root@pxw yum.repos.d]# mv *.repo repo.bak/
[root@pxw yum.repos.d]# ls
repo.bak
[root@pxw yum.repos.d]# vim /etc/yum.repos.d/CentOS7.repo

[centos7] //仓库类别
name=centos7 //仓库名称
baseurl=ftp://192.168.61.100/centos7 //URL访问路径
enabled=1 //启用此软件仓库
gpgcheck=0 //验证软件包的签名
#=

[other]
name=other
baseurl=ftp://192.168.61.100/other
enabled=1
gpgcheck=0

验证一下:

yum install -y httpd ##现在调用的yum源是来自服务机

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

搞什么滚去学习

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

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

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

打赏作者

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

抵扣说明:

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

余额充值