一、搭建本地yum源
01.准备包
a.下载rpm包到本地
找一台有网的服务器,下好所需要的rpm包
1.编辑 /etc/yum.conf 将keepcache的值设置为1;
这样就可以将yum安装时的rpm包保存在 /var/cache/yum目录。
2.使用yum-plugin-downloadonly插件。
如:
yum -y install gcc-c++ libxml2 libxml2-devel php-gd php-ldap php-odbc php-soap openssl openssl-devel curl curl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel pcre pcre-devel libxslt libxslt-devel bzip2 bzip2-devel
** --downloadonly --downloaddir=/root/install_pack_new/gcc**
此命令是将安装包只下载不进行安装
有时centos的rpm源不是最新的,需要安装一个epel源, yum install epel-release
- 注意:
createrepo包也要下载啊,下面就用到了
02.创建本地yum源
a.上传rpm包
上传rpm包到本地源仓库(/root/Packages)
b.安装createrepo
deltarpm.x86_64 0:3.6-3.el7xxx
libxml2-python.x86_64 0:2.9.1-6.el7_2.3xxx
python-deltarpm.x86_64 0:3.6-3.el7xxx
这是装createrepo的依赖
rpm装好以上依赖,再rpm -ivh createrepoxxxx.rpm
c.创建repo文件
cat /etc/yum.repos.d/server.repo
[mhnz]
name=this is localhost
baseurl=file:///root/Packages #指定安装包的位置
gpgcheck=0
enabled=1
- 注解:
[…] 代表这个库的名字,必须是唯一的,不可以重复。
name= 是这个库的说明,没有太大的实际意义,只是一个字段说明。
baseurl= 说明采取什么方式传输,具体路径在哪里,可以使用的方式有,file:///,ftp://,http://等
enabled=1 说明启用这个更新库,0表示不启用。
gpgcheck=1 表示使用gpg文件来检查软件包的签名
gpgkey= 表示gpg文件所存放的位置,此处也可以有http方式的位置。
###d.创建yum索引
cd /root/Packages && createrepo ./
yum repolist
yum makecache
二、利用ftp服务搭建本地yum源
01.安装ftp
yum install vsftpd –y
systemctl start vsftpd
默认路径在/var/ftp/pub
##02.把包rpm放到/var/ftp/pub/
- 若不想用默认路径可以编辑配置文件
vi /etc/vsftpd/vsftpd.conf
添加anon_root=/opt/ #安装包的位置
保存退出
##03.创建repo文件
cat /etc/yum.repos.d/server.repo
[aliyun]
name=this is aliyun
baseurl=ftp://192.168.1.111/pub/Packages/ #指定安装包的位置,/var/ftp/pubPackages/
gpgcheck=0
enabled=1
04.创建yum索引
cd /var/ftp/pubPackages/ && createrepo ./
yum repolist
yum makecache
05.其他服务器要使用192.168.1.111这台的yum源
01.创建repo文件
cat /etc/yum.repos.d/server.repo
[aliyun]
name=this is aliyun
baseurl=ftp://192.168.1.111/pub/Packages/
gpgcheck=0
enabled=1
可以使用以下命令来检验yum源是否可用
yum clean all
yum repolist
- 若是遇到报错: ftp error 550,ftp引导yum源并发性错误
selinux改成SELinux=disabled,关防火墙,实在不行给/var/ftp/pubPackages/ 777的权限