建立私有的内部yum源,以方便内部无法联网的用户使用。
我的环境:FTP服务器,CentOS7系统。
必备软件:createrepo
下载软件包:
1、自行下载。
2、使用yum命令下载相关软件包及依赖包,建议使用该方法,可以解决依赖问题。
先配置服务器的仓库:
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
yum -y install --downloadonly --downloaddir=/ftproot/linux_soft/ software_name
3、创建yum仓库的元文件:
cd /ftproot/linux_soft/
createrepo -o . .
编写自动创建脚本,设置开机自动后台运行即可实现自动更新仓库数据库
[root@localhost linux_soft]# cat /usr/local/share/script/automkrepo.sh
#!/bin/bash
#监控目录
local_dir="/ftproot/linux_soft/rpm"
# 监控本地目录的创建和删除事件
/usr/bin/inotifywait -mq -e create -e delete --timefmt '%Y-%m-%d %H:%M:%S' --format '%T %w%f %e' "$local_dir" | while read date time file event
do
#if [ $event = "DELETE" ]||[ $event = "CREATE" ] then
/usr/bin/createrepo --update -o /ftproot/linux_soft/ /ftproot/linux_soft/
#fi
done
创建软件组的元数据文件:
cd /ftproot/linux_soft/
createrepo -g . .
4、搭建ftp服务器或http服务器,把仓库所在目录共享给用户下载
如ftp服务器可以使用匿名用户下载,设置匿名用户的根目录到软件目录即可(anon_root /path/to/rpmdir/)。http方式这把Document Root 指向 /path/to/rpmdir/即可。
5、配置客户端的yum仓库文件
vi /etc/yum.repos.d/My_repo.repo
[development]
name=guimei-repo
#ftp的路径需要指向仓库的元文件
baseurl=ftp://192.168.5.24/linux_soft/
gpgcheck=0
enabled=1
Leave a Reply