centos系统搭建本地yum服务器的方法

  • Post category:Linux

下面是详细的“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服务器的完整攻略。