我们先搞清楚yum的内在逻辑,其实在liux中安装软件,相较于windows是十分简洁的。会有官方维护的镜像站收集存储近乎所有的软件,并将它们打包存储。而我们在配置时只需将获取软件包的路径为操作系统指明,即可使用yum进行装包。
yum源在centos上的路径为 /etc/yum.repos.d/
后缀为.repo的文件会被系统识别为yum源用于拉取信息
其文件格式为:
[ 仓库标识]
name=名字
baseurl=获取包的链接(在这里我们需要为服务器仙人指路,指明package到底在哪里)
gpgcheck=0 是否校验,通常置零
yum源分为两种,本地源和在线源,本地源可以离线装包,而在线源需要确定接入互联网
(1)准备原材料:
对应安装系统的系统镜像(ios文件),我用的是Centos8.4版本,可以通过
[root@server02 yum.repos.d]# cat /etc/centos-release
CentOS Linux release 8.4.2105
查看版本,再到
https://mirrors.163.com/centos-vault/8.4.2105/isos/x86_64/
找到最大的iso文件进行下载(作为本地源的话相对可以全一点)
(2)关闭虚拟机,挂载iso文件进入虚拟机磁盘
选中iso镜像文件,一定一定点击确认
切记要点击确定,打开虚拟机
挂载/dev/sr0到/mnt目录上去,查看是否挂载成功
[root@server02 ~]# mkdir /mnt
[root@server02 ~]# mount /dev/sr0 /mnt/
[root@server02 ~]# ll /mnt
到这里算是挂载成功了
(3)编辑repo文件
先到目标路径下删除所有的repo文件,在编辑一个新的文件
[root@server02 ~]# cd /etc/yum.repos.d/
[root@server02 yum.repos.d]# ll
total 8
-rw-r--r-- 1 root root 2495 Feb 14 21:16 beifen
-rw-r--r-- 1 root root 111 Feb 21 18:11 bendi.repo
[root@server02 yum.repos.d]# rm -rf *
[root@server02 yum.repos.d]# vim bendi.repo
文件内容为
[base]
name=base
baseurl=file:///mnt/BaseOS
gpgcheck=0
[app]
name=app
baseurl=file:///mnt/AppStream
gpgcheck=0
(4)测试是否写入成功
[root@server02 yum.repos.d]# yum list
屏幕上出现包名即安装成功
(5)实现开机挂载,让本地源永久化
mount配置文件的位置在:/etc/fstab
对其进行配置即可
[root@server02 yum.repos.d]# vim /etc/fstab
注意这三个点就行,我们查看以下/dev/sr0设备的设备类型
[root@server02 yum.repos.d]# df -hT
[root@server02 yum.repos.d]# vim /etc/fstab
[root@server02 yum.repos.d]# reboot
[root@server02 ~]# yum list
配置完毕
注:
1.本地源配置完毕后需要设置永久挂载,否则重启后挂载需要手动重新挂
2.这里写的两个仓库是CentOS8版本出现的双库
这里推荐的几个在线国内源,原装源速度十分缓慢。
阿里源:https://developer.aliyun.com/mirror/
清华源:https://developer.aliyun.com/mirror/
网易源:https://mirrors.163.com/
其中,阿里源是照着上面的操作来就行,如果无法运行就需要手动写在线源,这里以网易源为示例:
(1)如何找到两个库:
先来看看上面的本地源
[root@server02 AppStream]# pwd
/mnt/AppStream
[root@server02 AppStream]# ll
total 1144
dr-xr-xr-x 2 root root 1167360 Nov 13 09:04 Packages
dr-xr-xr-x 2 root root 4096 Nov 13 09:04 repodata
[root@server02 AppStream]#
显然,我们是指定到了package包的上一级AppStream就停止指定了,也就是说,仙人指路的话得指定到package包的上一级,那么在这个在线源的配置中也是同理
由此我们可以得到两个仓库的在线源
AppSream=https://mirrors.163.com/centos-vault/8.4.2105/AppStream/x86_64/os/
BasOS=https://mirrors.163.com/centos-vault/8.4.2105/BaseOS/x86_64/os/
(2)编辑配置文件
[root@server02 AppStream]# cd /etc/yum.repos.d/
[root@server02 yum.repos.d]# ll
total 4
-rw-r--r-- 1 root root 112 Feb 27 11:12 bendi.repo
[root@server02 yum.repos.d]# rm -rf *
[root@server02 yum.repos.d]# vim net.repo
内容如下
[base]
name=base
baseurl=https://mirrors.163.com/centos-vault/8.4.2105/BaseOS/x86_64/os/
gpgcheck=0
[app]
name=app
baseurl=https://mirrors.163.com/centos-vault/8.4.2105/AppStream/x86_64/os/
gpgcheck=0
(3)测试配置情况
[root@server02 yum.repos.d]# yum list
出现了安装包名称,即配置完毕
注:第一次可能需要一点点时间来下载网络上的信息,如果不成功,检查是否联网,如果无法联网大家可以参考这篇文章
https://blog.csdn.net/SuichI314/article/details/121571629