帮助中心 >
  关于独立服务器 >
  CentOS 8 上设置本地 Yum/DNF 存储库的流程
CentOS 8 上设置本地 Yum/DNF 存储库的流程
时间 : 2024-12-04 15:17:58
编辑 : Jtti

在CentOS 8上设置本地Yum/DNF存储库,可以帮助用户在没有互联网连接或者需要控制软件包版本环境中进行软件包管理。下面让我们一起来完成在CentOS 8上设置本地Yum/DNF存储库。

先要保证有一个CentOS 8系统,且有足够磁盘空间和存储软件包。先安装用于创建和管理本地存储的工具:

sudo dnf install -y createrepo yum-utils

再创建一个目录来存放本地存储库:

sudo mkdir -p /var/www/html/localrepo

再从CentOS 8镜像或其他源下载所需的软件包,如使用reposync命令从官方仓库同步软件包:

sudo reposync --repo=baseos --repo=appstream --repo=extras --download-path=/var/www/html/localrepo

以上命令可以从官方仓库下载软件包到/var/www/html/localrepo 目录。

就像创建存储库元素,使用createrepo命令在存储库目录中生成元数据:

sudo createrepo /var/www/html/localrepo

创建一个新的.repo文件来配置本地存储库:

sudo tee /etc/yum.repos.d/localrepo.repo <<EOF

[localrepo]

name=Local Repository

baseurl=file:///var/www/html/localrepo

enabled=1

gpgcheck=0

EOF

验证本地存储库,清楚缓存并重新生成缓存,来保证本地存储库配置正确:

sudo dnf clean all

sudo dnf makecache

再尝试从本地存储库安装一个软件包来验证配置:

sudo dnf install <package_name>

如果想通过HTTP访问本地存储库,可以配置一个简单的HTTP服务器,如使用Apache HTTP服务器。安装Apache HTTP服务器:

sudo dnf install -y httpd

配置Apache HTTP服务器,创建一个符号链接使存储库目录能通过HTTP访问:

sudo ln -s /var/www/html/localrepo /var/www/html/repo

修改Apache配置文件,/etc/httpd/conf/httpd.conf,确保包含以下内容:

<Directory "/var/www/html/repo">

Options Indexes FollowSymLinks

AllowOverride None

Require all granted

</Directory>

启动并启用Apache HTTP服务器:

sudo systemctl start httpd

sudo systemctl enable httpd

配置DNF使用HTTP访问本地存储库,修改 /etc/yum.repos.d/localrepo.repo 文件,将 baseurl 更改为 HTTP URL:

[localrepo]

name=Local Repository

baseurl=http://<your_server_ip>/repo

enabled=1

gpgcheck=0

清除缓存并重新生成缓存,然后尝试安装软件包以确保配置正确:

sudo dnf clean all

sudo dnf makecache

sudo dnf install <package_name>

通过以上步骤来设置本地Yum/DNF存储库,可以帮助用户在CentOS8系统中离线状态下管理软件包,可以通过文件系统直接访问存储库,也可以配置HTTP服务器提供远程访问。使用本地存储库,能更好控制软件包版本和依赖项,来适应不同使用场景。

JTTI-Defl
JTTI-COCO
JTTI-Selina
JTTI-Ellis
JTTI-Eom