【问题】在局域网环境中,由于不能连接公网安装组件,所以修改yum安装源为局域网的服务。
为了完成局域网的各种软件安装,需要自建YUM本地仓库。本教程以centos7为例,搭建本地yum私有仓库,机器需要联网,仓库创建成功后,导出虚机,在局域网内导入虚机,其它机器yum源指向此机器即可。(详见1.6 yum源修改过程)
本教程所使用rpm包下载地址如下:
链接:https://pan.baidu.com/s/1BxvJW5DXkMfn7be6G51UcA?pwd=ubzk
提取码:ubzk
本文使用的nginx作为下载服务容器。
1.1 nginx组件部署实现
1、nginx安装执行文件
准备好离线安装文件【nginx-1.20.1-10.el7.x86_64.rpm】
rpm -ivh nginx-1.20.1-10.el7.x86_64.rpm
3、启动nginx
systemctl start nginx
4、设定开机启动
systemctl enable nginx
注意:如果不能访问需要注意防火墙的设置
(或者临时关闭防火墙systemctl stop firewalld)
5、修改默认登录页信息
vi /etc/nginx/nginx.conf
修改前:
修改后:
6、热加载配置信息
systemctl reload nginx
7、创建目录
mkdir /usr/share/nginx/html/pack
1.2 nginx组件部署验证
1、浏览器验证(空目录)
1.3 yum源数据部署实现
1、安装rsync工具
准备好离线安装文件【rsync-3.1.2-4.el7.x86_64.rpm】
rpm -ivh rsync-3.1.2-4.el7.x86_64.rpm
2、同步数据
在可以上网的机器上从外部源同步数据。(或者直接复制已有的数据)
rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/os/x86_64/Packages//usr/share/nginx/html/pack/centos/7/os/x86_64/Packages/
rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/extras/x86_64/Packages//usr/share/nginx/html/pack/centos/7/extras/x86_64/Packages/
rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/updates/x86_64/Packages//usr/share/nginx/html/pack/centos/7/updates/x86_64/Packages/
rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/centosplus/x86_64/Packages//usr/share/nginx/html/pack/centos/7/centosplus/x86_64/Packages/
提供几个支持rsync同步的网站
mirrors.ustc.edu.cn
mirrors.tuna.tsinghua.edu.cn
mirrors.kernel.org
mirrors.neusoft.edu.cn
3、安装createrepo工具
准备好离线安装文件
【createrepo-0.9.9-28.el7.noarch.rpm】
【deltarpm-3.6-3.el7.x86_64.rpm】
【python-deltarpm-3.6-3.el7.x86_64.rpm】
rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm
4、使用createrepo创建元数据
createrepo/usr/share/nginx/html/pack/centos/7/os/x86_64/
createrepo/usr/share/nginx/html/pack/centos/7/extras/x86_64/
createrepo/usr/share/nginx/html/pack/centos/7/updates/x86_64/
createrepo/usr/share/nginx/html/pack/centos/7/centosplus/x86_64
1.4 yum源数据部署验证
1、浏览器查看,对应的目录下会生成repodata目录,下层目录有repomd.xml文件。
1.5 yum源数据更新
1、下载需要缺少的rmp文件放到如下目录。
cd /usr/share/nginx/html/pack/centos/7/os/x86_64/Packages/
2、使用createrepo更新元数据
createrepo --update /usr/share/nginx/html/pack/centos/7/os/x86_64/
1.6 yum源修改过程
1、备份原始文件CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_back
2、添加新的yum源信息
cat>> /etc/yum.repos.d/CentOS-Base.repo << eof
添加内容:
[base]
name=CentOS-7 - Base
baseurl=http://192.168.1.220/centos/7/os/x86_64/
enabled=1
gpgcheck=0
#released updates
[updates]
name=CentOS-7
baseurl=http://192.168.1.220/centos/7/updates/x86_64/
enabled=1
gpgcheck=0
#additional packages that may be useful
[extras]
name=CentOS-7
baseurl=http://192.168.1.220/centos/7/extras/x86_64/
enabled=1
gpgcheck=0
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-7 - Plus
baseurl=http://192.168.1.220/centos/7/centosplus/x86_64/
enabled=1
gpgcheck=0
eof
3、清除所有缓存
yum clean all
4、建立新缓存
yum makecache
1.7 yum源修改后确认
1、查看yum源列表
yum repolist