下面是详细的“CentOS系统搭建本地YUM服务器”的攻略。包含以下步骤:
准备工作
在开始之前,首先需要准备一台CentOS系统的服务器或者虚拟机。
系统版本建议采用CentOS6或CentOS7。
安装Nginx
首先我们需要安装一个Web服务器,用来搭建YUM仓库的Web访问。
这里我们选择Nginx。
安装Nginx
执行如下命令安装Nginx:
# 安装nginx
yum install nginx -y
配置Nginx
下面是一个简单的Nginx配置文件示例:
server {
listen 80;
server_name yum.example.com;
access_log /var/log/nginx/yum.example.com.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
# Yum repository
location /repo {
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
alias /var/www/html/repo/;
client_max_body_size 1000m;
}
}
以上配置文件中的 autoindex
选项可以让我们在Web页面上浏览到整个YUM仓库的目录结构。
启动Nginx
执行如下命令启动Nginx:
# 启动nginx
systemctl start nginx
安装createrepo
接下来我们需要安装createrepo,用来创建YUM仓库。
# 安装createrepo
yum install createrepo -y
创建YUM仓库
首先创建一个目录,用于存储YUM仓库的软件包:
# 创建软件包存储目录
mkdir -p /var/www/html/repo
导入软件包
将软件包上传到上面创建的目录中。
创建YUM仓库
在软件包所在的目录下执行如下命令:
# 创建YUM仓库
createrepo .
以上命令将会在当前目录下生成一个 repodata
目录,用来保存YUM仓库的元数据信息。
修改目录权限
由于我们使用的是Nginx,需要把YUM仓库目录的权限修改为 nginx
用户可读:
# 修改目录权限
chown -R nginx:nginx /var/www/html/repo
配置YUM仓库
接下来我们需要在客户端配置YUM仓库。
在客户端的 /etc/yum.repos.d/
目录下创建一个新的文件,文件名可以随意命名,例子中我们命名为 myrepo.repo
:
[myrepo]
name=my local yum repo
baseurl=http://yum.example.com/repo
gpgcheck=0
enabled=1
其中 baseurl
的值为我们在Nginx配置文件中定义的值:http://yum.example.com/repo
。
验证
执行如下命令验证是否成功:
yum makecache
yum search <package_name>
以上就是CentOS系统搭建本地YUM服务器的完整攻略。