yum仓库搭建 服务端搭建
应用场景
在项目实施过程中,很多实施单位存在没有外网的情况。此时,在服务器上直接使用Yum命令根本无法使用,为了方便在本地搭建环境,为了方便快捷安装软件依赖包,我们采用临时解决方案进行本地Yum仓库搭建,不但可以供搭建机器使用,更可以供整个服务器群使用。
yum仓库搭建 服务端搭建
1.1 修改yum配置文件
yum下载软件不清空
sed -i ‘s#keepcache=0#keepcache=1#g’ /etc/yum.conf
1.2 创建目录用来做 YUM 仓库的使用
mkdir -p /yum/centos7
1.3 安装 createrepo 软件,用于生成 yum 仓库数据库的软件
yum -y install createrepo yum-utils
1.4 初始化repodata索引文件
cd /yum/centos7
只下载软件不安装
yumdownloader tree
#更新repodata索引文件
createrepo -pdo /yum/centos7/ /yum/centos7/
1.5提供yum服务
可以用Apache或nginx提供web服务,但用Python的http模块更简单,适用于内网环境
cd /yum/centos7/
python -m SimpleHTTPServer 81 &>/dev/null &
可以通过浏览器输入本机IP查看: 如http://10.0.0.36:81/
1.6添加新的rpm包
只下载软件不安装
yumdownloader pcre-devel openssl-devel
每加入一个rpm包就要更新一下
createrepo --update /yum/centos7/
客户端配置
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.ori
cat >/etc/yum.repos.d/centos7.repo<<EOF
[centos7]
name=Server
baseurl=http://10.0.0.36:81
enable=1
gpgcheck=0
EOF
临时使用指定的自己指定的centos7 库
yum --enablerepo=centos7 --disablerepo=base,extras,updates,epel list
永久使用
sed -i -e ‘19a enabled=0’ -e ‘29a enabled=0’ -e ‘39a enabled=0’ /etc/yum.repos.d/CentOS-Base.repo
测试下载
注释/etc/resolv.conf
[[email protected] c7-42 yum.repos.d]# cat /etc/resolv.conf
#nameserver 223.5.5.5
#nameserver 223.6.6.6
[[email protected] c7-42 yum.repos.d]# ping qq.com
ping: qq.com: Name or service not known
服务端安装nginx或者找nginx相关rpm
[[email protected] c7-41 centos7]# yum -y install nginx
找到nginx所有的相关rpm
[[email protected] c7-41 7]# cd /var/cache/yum/x86_64/7/
[[email protected] c7-41 7]# find . -name ‘*.rpm’
然后,添加到自己的yum仓库
[[email protected] c7-41 7]# find . -name ‘*.rpm’|xargs -i cp {} /yum/centos7
更新自己的yum仓库
[[email protected] c7-41 centos7]# cd /yum/centos7/
[[email protected] c7-41 centos7]# createrepo --update /yum/centos7/
客户端重新加载yum缓存并下载nginx
yum clean all
yum makecache
yum -y install nginx