查看是否有一个神奇的文件夹 /misc/cd
# ls /misc/cd
有则跳过此步。
类似下面没有情况,则执行以下步骤:
查看是否有autofs包,没有的话需要安装:
# rpm -q autofs #查看是否有autofs包
# yum install autofs #无则直接安装
# rpm -ql autofs|less #分页查看autofs文件是否有
/usr/lib/systemd/system/autofs.service
查看有对应的该服务之后启动该服务:
# systemctl start autofs #启动该服务
注意:该服务为本次临时启动
设置下次开机自动启动:
# systemctl enable autofs #每次开机自动启动
# ls /misc/cd #查看是否能访问该神奇的文件夹/misc/cd
再一次查看磁盘如图:
至此,神奇的文件夹就已经出现。原因是yum源前期挂载路径必须是在有一个文件为repodata的文件夹,路径是由这个文件夹所在路径作为判断标准。
[root@KAIVI ~]#ls /misc/cd/BaseOS/
Packages repodata
最后得到yum源挂载路径为 /run/media/root/CentOS-8-BaseOS-x86_64/BaseOS/
yum源的服务器端为本地光盘。
[root@KAIVI ~]#ls /etc/yum.repos.d/
CentOS-AppStream.repo CentOS-Debuginfo.repo CentOS-PowerTools.repo
CentOS-Base.repo CentOS-Extras.repo CentOS-Sources.repo
CentOS-centosplus.repo CentOS-fasttrack.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-Media.repo
#查看/etc/yum.repos.d/文件夹中的文件
[root@KAIVI yum.repos.d]#cd /etc/yum.repos.d/
[root@KAIVI yum.repos.d]#
#切换对应位置
[root@KAIVI ~]# cat CentOS-Base.repo
# CentOS-Base.repo
[BaseOS] #yum 配置仓库名字ID 确保要唯一 不能和下面的重复
name=CentOS-$releasever - Base #描述信息
mirrorlist=http://mirrorlist.centos.org/?release=
$releasever&arch=$basearch&repo=BaseOS&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/
$releasever/BaseOS/$basearch/os/
#mirrorlist和baseurl 两者二选一即可。仓库信息路径,对应文件。
#(https hett ftp 本地路径四种) 路径中可以指定变量。
gpgcheck=1 #校验gpg(1|0:检验|不检验)
enabled=1 #开启服务(1|0:开启|禁止)
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
#gpg密钥。对应gpgcheck=1的情况,一定要导入密钥。
[root@KAIVI yum.repos.d]#vim kaivi.repo #在这个目录下面新建一个.repo文件
注意:一定要是在这个目录下面且为.repo后缀的文件
[root@KAIVI yum.repos.d]#vim kaivi.repo
[basekaivi]
name=cdrom base
baseurl=file:///run/media/root/CentOS-8-BaseOS-x86_64/BaseOS/
gpgcheck=0
[Appsdreamkaivi]
name=cdrom Appsdream
baseurl=file:///run/media/root/CentOS-8-BaseOS-x86_64/AppStream/
gpgcheck=0
按照简易上面的格式编辑vim文档。也可以参考这个目录下其它以 .repo 后缀文件格式
保存之后,查看一下是否有相关信息属性。
[root@KAIVI yum.repos.d]#yum repolist
cdrom Appsdream 37 MB/s | 5.2 MB 00:00
cdrom base 3.8 MB/s | 3.9 kB 00:00
aliyun eprl 4.7 kB/s | 5.3 kB 00:01
repo id repo name status
AppStream CentOS-8 - AppStream 5,165
Appsdreamkaivi cdrom Appsdream 4,681
BaseOS CentOS-8 - Base 2,835
basekaivi cdrom base 1,655
epel aliyun eprl 1,894
extras CentOS-8 - Extras 3
其中第二行和第四行 base 行的信息属性就是之前添加进去的yum客户端属性
测试安装一个gcc。
# dnf install gcc
注意:安装路径centos7只有一条路径 但是centos8 有2个路径 。多了一个AppStream/
访问相关epel源相关网址并复制对应的路径地址。这里使用阿里云为例
centos 7 x86-64
https://mirrors.aliyun.com/epel/7/x86_64/
找到路径之后可以在 /etc/yum.repos.d目录里面新建一个 .repo文件
注意:一定要是在这个目录下面且为.repo后缀的文件。也可以和之前新建立的yum源放在同一个文件夹里面。
[base]
name=cdrom base
baseurl=file:///misc/cd
gpgcheck=0
[epel]
name=aliyun epel
#baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch/
baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch/
gpgcheck=0
enabled=1
# 代码中的变量是为了更好的兼容其他的版本架构
[root@KAIVI7 yum.repos.d]$yum repolist
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
repo id repo name status
base cdrom base 10,019
epel/7/x86_64 aliyun epel 13,415
repolist: 23,434
清除yum缓存区的数据
/var/cache/yum 这是是缓冲区的路径 一层一层
[root@KAIVI7 yum.repos.d]$yum clean all
Loaded plugins: fastestmirror, langpacks
Cleaning repos: base epel
Cleaning up list of fastest mirrors
#不清除旧的缓存数据,可能访问时依旧按照旧的路径,会导致访问失败
重新读取更新缓冲区的数据
[root@KAIVI7 yum.repos.d]$yum repolist
Loaded plugins: fastestmirror, langpacks
Determining fastest mirrors
base | 3.6 kB 00:00:00
epel | 5.4 kB 00:00:00
(1/5): base/group_gz | 166 kB 00:00:00
(2/5): base/primary_db | 6.0 MB 00:00:00
(3/5): epel/7/x86_64/group_gz | 88 kB 00:00:00
(4/5): epel/7/x86_64/primary_db | 6.9 MB 00:00:00
(5/5): epel/7/x86_64/updateinfo | 1.0 MB 00:00:00
repo id repo name status
base cdrom base 10,019
epel/7/x86_64 aliyun epel 13,415
repolist: 23,434
测试安装:
[root@KAIVI7 ~]$yum list sl #安装小火车
[root@KAIVI7 ~]$sl -a #运行安装的小命令
yum install httpd
yum install gcc
如果可以安装则配置完成!
特别提醒:
配置yum和epel源失败无非两个问题:一个是配置VIM书写脚本的时候格式错误/路径错误网络配置错误。第二个就是缓存问题,可能依旧访问旧路径,一旦路径改变就会访问失败。