CentOS 7.9 配置软件源

  • mirrors.aliyun.com --> https://developer.aliyun.com/mirror/
[root@myx /etc/yum.repos.d]# mkdir bakrepo && mv * bakrepo
  
[root@myx /etc/yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

[root@myx /etc/yum.repos.d]# ls
bakrepo  CentOS-Base.repo

[root@myx /etc/yum.repos.d]# yum repolist

CentOS 7.9 配置本地yum源仓库

  • 挂载CentOS 7 镜像 image.png
# 创建镜像挂载点
[root@myx01~]$ mkdir /localrepo

# 开机自挂载
[root@myx01~]$ echo "/dev/sr0 /localrepo iso9660 defaults 0 0" >> /etc/fstab

[root@myx01/etc/yum.repos.d]$ cat > local.repo <<EOF
[localrepo]
name=local repo
baseurl=file:///localrepo
enabled=1
gpgcheck=0
EOF

CentOS 7.9 配置多网络源

[root@myx01/etc/yum.repos.d]$ cat > net.repo <<EOF 
[aliyun]
name=阿里云仓库源
baseurl=https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/
enabled=1
gpgcheck=0

[163]
name=网易仓库源
baseurl=http://mirrors.163.com/centos/7.9.2009/os/x86_64/
enabled=1
gpgcheck=0

[sohu]
name=搜狐仓库源
baseurl=http://mirrors.sohu.com/centos/7.9.2009/os/x86_64/
enabled=1
gpgcheck=0

[tuna]
name=清华大学仓库源
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/os/x86_64/
enabled=1

[tuna]
name=华为仓库源
baseurl=https://repo.huaweicloud.com/centos/7.9.2009/os/x86_64/
enabled=1

[tencent]
name=腾讯云仓库源
baseurl=https://mirrors.cloud.tencent.com/centos/7.9.2009/os/x86_64/
enabled=1
gpgcheck=0
EOF

[root@myx01/etc/yum.repos.d]$ yum repolist

CentOS 7.9 配置扩展源

[root@myx01/etc/yum.repos.d]$ cat > epel.repo <<EOF

[epel]
name=扩展源
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
enabled=1
gpgcheck=0
EOF

image.png

Rocky 8 配置软件源

Rocky8 配置本地仓库源

  • 挂载Rocky 8 镜像 image.png
[root@Rocky8~]$ mkdir /iso

[root@Rocky8~]$ echo "/dev/sr0 /iso iso9660 defaults 0 0" >> /etc/fstab 

[root@Rocky8~]$ mount -a

[root@Rocky8/]$ df -Th
文件系统            类型      容量  已用  可用 已用% 挂载点
/dev/sr0            iso9660    12G   12G     0  100% /iso

[root@Rocky8/etc/yum.repos.d]$ cat > local.repo <<EOF
[BaseOS]
name=BaseOS repo
baseurl=file:///iso/BaseOS
enabled=1
gpgcheck=0

[AppStream]
name=AppStream repo
baseurl=file:///iso/AppStream
enabled=1
gpgcheck=0
EOF

[root@Rocky8/etc/yum.repos.d]$ yum repolist

[root@Rocky8/etc/yum.repos.d]$ yum list

Rocky 8 配置网络仓库源

[root@Rocky8/etc/yum.repos.d]$ cat > aliyun.repo <<EOF
[Aliyun-BaseOS]
name=阿里云仓库源-BaseOS
baseurl=https://mirrors.aliyun.com/rockylinux/8.8/BaseOS/x86_64/os
enabled=1
gpgcheck=0

[Aliyun-AppStream]
name=阿里云仓库源-AppStream
baseurl=https://mirrors.aliyun.com/rockylinux/8.8/AppStream/x86_64/os
enabled=1
gpgcheck=0
EOF

[root@rocky8 ~]#yum list

[root@rocky8 /etc/yum.repos.d]#yum list  | wc -l

Rocky 8 配置扩展源

  • 配置epel源,需要通过rocky官方源进行安装
* 将rocky官方源暂时移出来才能进行安装

[root@Rocky8/etc/yum.repos.d]$ yum -y install epel-release

[root@Rocky8/etc/yum.repos.d]$ yum repolist
仓库 id             仓库名称
AppStream           AppStream repo
BaseOS              BaseOS repo
epel                Extra Packages for Enterprise Linux 8 - x86_64

[root@Rocky8/etc/yum.repos.d]$ yum list | wc -l
17087

# 测试
[root@Rocky8/etc/yum.repos.d]$ yum install cowsay

[root@Rocky8~]$ cowsay 版权所有·梦缘羲
 __________
< 版权所有·梦缘羲 >
 ----------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||



[root@Rocky8/etc/yum.repos.d]$ yum install sl

[root@Rocky8/etc/yum.repos.d]$ sl

image.png

基于网络源 制作本地仓库

服务端

1. 配置阿里网络源
[root@myx01/etc/yum.repos.d]$ cat rocky.repo 
[AppStream-net]
name=AppStream
baseurl=https://mirrors.aliyun.com/rockylinux/8/AppStream/x86_64/os/
gpgcheck=0
enabled=true

[base-net]
name=BaseOS
baseurl=https://mirrors.aliyun.com/rockylinux/8/BaseOS/x86_64/os/
gpgcheck=0
enabled=true

[extras]
name=extras
baseurl=https://mirrors.aliyun.com/rockylinux/8/extras/x86_64/os/
gpgcheck=0
enabled=true

2. 安装工具
[root@myx01/var/www/html/Rocky8]$ yum install -y yum-utils

3. 下载软件包
[root@myx01/var/www/html/Rocky8]$ reposync --repoid=extras --download-metadata -p /var/www/html/Rocky8/

[root@myx01/var/www/html/Rocky8]$ reposync --repoid=AppStream-net --download-metadata -p /var/www/html/Rocky8/

[root@myx01/var/www/html/Rocky8]$ reposync --repoid=base-net --download-metadata -p /var/www/html/Rocky8/

# 查看正常
[root@myx01/var/www/html/Rocky8]$ yum repolist 
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
源标识                                源名称                            状态
AppStream-net                         AppStream                         7,808
base-net                              BaseOS                            2,035
extras                                extras                               53
repolist: 9,896


4. 安装http服务
[root@myx01/var/www/html/Rocky8]$
yum install httpd

[root@myx01/var/www/html/Rocky8]$
systemctl start httpd

客户端

1. 配置yum源仓库
[root@Rocky8/etc/yum.repos.d]$ cat net.repo 
[AppStream-net]
name=AppStream
baseurl=http://10.0.0.8/Rocky8/AppStream-net
gpgcheck=0
enabled=1

[base-net]
name=BaseOS
baseurl=http://10.0.0.8/Rocky8/base-net
gpgcheck=0
enabled=true

[extras]
name=extras
baseurl=http://10.0.0.8/Rocky8/extras/
gpgcheck=0
enabled=true

# 清除缓存
[root@Rocky8/etc/yum.repos.d]$ yum clean all
21 个文件已删除

# 查看状态
[root@Rocky8/etc/yum.repos.d]$ yum repolist all
仓库 id                               仓库名称                           状态
AppStream-net                         AppStream                          启用
base-net                              BaseOS                             启用
extras                                extras                             启用

# 测试
[root@Rocky8/etc/yum.repos.d]$ yum list | wc -l
Errors during downloading metadata for repository 'AppStream-net':
  - Status code: 404 for http://10.0.0.8/Rocky8/AppStream-net/repodata/repomd.xml (IP: 10.0.0.8)
错误:为仓库 'AppStream-net' 下载元数据失败 : Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
1

解决方案

这里出现一个问题就是: repodata/repomd.xml: All mirrors were tried
它说我们没有【repodata/repomd.xml】这个文件。
然后我们去服务端看了一下:
[root@myx01/var/www/html/Rocky8/AppStream-net]$ ls
Packages

发现确实没有这个文件,那么知道原因就好解决了。


我的解决方案是:
1. 先把Rocky8的镜像文件挂载上去
/dev/sr0                iso9660    12G   12G     0  100% /localrepo

2. 然后我们把【repodata】的文件上传到配置【/var/www/html/Rocky8/】路径下:
[root@myx01/localrepo]$ cp  -r AppStream-net/repodata/ /var/www/html/Rocky8/AppStream-net/
    
[root@myx01/localrepo]$ cp -r BaseOS/repodata/ /var/www/html/Rocky8/base-net/

[root@myx01/localrepo]$ cp -r BaseOS/repodata/ /var/www/html/Rocky8/extras/

3. 重启服务
[root@myx01/etc/yum.repos.d]$ systemctl restart httpd

4. 回到服务端再次查看
[root@Rocky8/etc/yum.repos.d]$ yum list | wc -l
8614

问题解决

开启验证

# CentOS 7
[netrepo]
name=netrepo
baseurl=http://10.0.0.8/repo/centos7
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

# Rocky 8
[root@repo-client ~]#cat /etc/yum.repos.d/test.repo
[BaseOS]
name=BaseOS
baseurl=http://10.0.0.8/centos/8/BaseOS
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

[AppStream]
name=Appstream
baseurl=http://10.0.0.8/centos/8/AppStream/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

国内系统镜像下载网址