一种创建本地 YUM 仓库的方法是通过使用脚本来实现。首先,脚本会检查光盘是否已经挂载。如果光盘已经挂载,脚本将把光盘挂载到 /mnt
目录下;如果光盘没有挂载,脚本将输出提示信息“请挂载光盘”,并以退出码 2 退出脚本执行。
接着,脚本会切换到 /etc/yum.repos.d/
目录下,并检查是否存在名为 a
的文件夹。如果该文件夹已经存在,脚本将输出“文件已经存在”,如果不存在,则会创建 a
文件夹。随后,脚本会将以 Cent*
开头的文件移动到 a
文件夹下,并在 /etc/yum.repos.d/
目录中创建一个名为 a.repo
的文件。a.repo
文件包含了 YUM 仓库的配置信息,指定了 baseurl
为 file:///mnt
,表示 YUM 仓库的源在 /mnt
目录下。
接下来,脚本执行 yum clean all
和 yum makecache
命令来清理并创建 YUM 仓库的缓存。如果这两个命令执行成功(退出码为0),脚本会输出提示信息:“本地 YUM 仓库已经创建完成”。这种基于脚本的方式能够快速而有效地创建本地 YUM 仓库,提高了系统管理的效率和便利性。
#!/bin/bash
mount |grep sr0 &> /dev/null
if [ $? -eq 0 ];then
mount /dev/cdrom /mnt &> /dev/null
else
echo "请挂载光盘!"
exit 2
fi
cd /etc/yum.repos.d/
if [ -e a ];then
echo "文件已经存在"
else
mkdir a
fi
mv Cent* a &> /dev/null
cat > a.repo
[base]
name=a
baseurl=file:///mnt
gpgcheck=0
EOR
yum clean all
yum makecache
if [ $? -eq 0 ];then
echo "本地yum仓库已经创建完成!"
fi
方法二:通过镜像制作本地 YUM 仓库
首先,需要将CentOS-7-x86_64-DVD-1611.iso
本地镜像iso
文件上传到/opt
目录下。
创建挂载目录
mkdir /mnt/centos7.5
挂载ISO
光盘文件
mount /opt/CentOS-7-x86_64-DVD-1611.iso /mnt/centos7.5
将原有的yum
源备份到/etc/yum.repos.d/bak
目录下
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
进入yum
源配置文件目录
cd /etc/yum.repos.d/
创建CentOS.Base.repo
配置文件,在创建yum
配置文件后缀名必须为.repo
vim CentOS.Base.repo
# 如下为配置文件中的内容
[centos7.5] # yum 源区别名称,用来区分其他的 yum 源
name=centos7.5 # yum 源名字
baseurl=file:///mnt/centos7.5 # 指定本地 yum 源的路径
enabled=1 # 是否使用此 yum 源(1:打开,0:关闭)
gpgcheck=0 # 检查软件(1:检查,0:不检查)
gpgkey=file:///mnt/centos7.5/RPM-GPG-KEY-CentOS-7
刷新缓存
yum clean all
yum repolist
本地 YUM 仓库配置完毕
方法三:使用 aliyun 官方 YUM 仓库
进入yum
源配置文件目录
cd /etc/yum.repos.d/
创建文件夹
mkdir bak
将/etc/yum.repos.d/
目录下所有的.repo
的文件移动到bak
目录下
mv *.repo bak
下载aliyun
的yum
源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
在wget
中,-O
:选项用于指定要将下载的内容保存为的文件名。
安装扩展源epel.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
进入yum
源配置文件目录下,CentOS-Base.repo
和epel.repo
是否下载成功。
# ls
a bak CentOS-Base.repo epel.repo
下载安装cowsay
程序
yum -y install cowsay
安装 cowsay 程序
运行并输入想要表达的信息
Goodbye 2023, hello 2024!
方法四:局域网内共享 YUM 仓库
局域网当有多台服务器需要配置本地yum
源时,不需要把每台服务器都进行单独配置一遍并挂载镜像,我们只需要在一台服务器上配置好yum
源。然后使用httpd
服务让其他服务器正常访问即可。
安装httpd
服务
yum install -y httpd
启动httpd
服务
systemctl start httpd
关闭防火墙
systemctl stop firewalld
查看httpd
状态是否启动正常
systemctl status httpd
服务端挂载镜像
mount /opt/CentOS-7.5-1804.iso /var/www/html/CentOS7.5/
客户端配置
vim /etc/yum.repos.d/CentOS-Base.repo
[local]
name=net_bendiyum
baseurl=http://192.168.1.8/CentOS7.5/
enabled=1
gpgcheck=0
yum clean all
:执行该命令时,清理yum
缓存,将会清除所有已下载的软件包和元数据,以便在下一次运行yum
命令时重新下载。有助于释放磁盘空间并确保获取的是最新的软件包信息。
yum clean all
yum makecache
:执行该命令时,用于下载并生成所有当前启用的yum
仓库的元数据。元数据包括软件包列表、依赖关系和其他信息。可以确保你的系统具有最新的软件包信息,以便在安装或更新软件包时使用。
yum makecache
yum repolist
:执行该命令时,用于列出当前系统中所有可用的yum
仓库。它会显示每个仓库的ID、名称、状态和软件包数量等信息。对于查看系统中可用的软件包来源非常有用。
yum repolist
局域网内共享 YUM 仓库配置完毕
References
aliyun 官方 yum 源:https://developer.aliyun.com/article/675241
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !