在 Linux 8 系统上搭建本地 YUM 仓库,通常的步骤如下:
1. 准备好安装包
首先,你需要准备好你希望在本地 YUM 仓库中使用的 RPM 包。你可以从镜像站点下载 RPM 包,或者将本地安装的包进行收集。可以通过 `rsync` 或 `wget` 下载。
例如,从 CentOS 镜像下载 RPM 包:
```bash
rsync -avz rsync://mirrors.centos.org/centos/8/BaseOS/x86_64/os/ /path/to/your/repo/
```
2. 安装必要的工具
确保系统中安装了 `createrepo` 工具,它用于生成仓库的元数据。
```bash
sudo dnf install createrepo
```
3. 创建仓库目录
选择一个目录来存放你的 RPM 包,并确保该目录有适当的权限。
```bash
sudo mkdir -p /var/www/html/repo
```
将准备好的 RPM 包放到该目录下:
```bash
sudo cp /path/to/your/rpms/* /var/www/html/repo/
```
4. 生成仓库元数据
在 RPM 包目录中生成 YUM 仓库的元数据:
```bash
sudo createrepo /var/www/html/repo/
```
此命令将生成必要的元数据文件,如 `repodata/` 目录。
5. 配置 HTTP 服务
为了让其他机器可以访问你的本地 YUM 仓库,你需要配置一个 Web 服务器(如 Apache)。首先,确保 `httpd` 已经安装:
```bash
sudo dnf install httpd
```
然后启动并设置开机自启动:
```bash
sudo systemctl start httpd
sudo systemctl enable httpd
```
6. 配置防火墙
如果启用了防火墙,确保允许 HTTP 服务通过:
```bash
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --reload
```
7. 配置 YUM 仓库文件
在客户端机器上,配置新的 YUM 仓库。在 `/etc/yum.repos.d/` 目录下创建一个新的 `.repo` 文件:
```bash
sudo vi /etc/yum.repos.d/my_local.repo
```
然后将以下内容添加进去:
```ini
[my-local-repo]
name=My Local Repo
baseurl=http://
enabled=1
gpgcheck=0
```
确保 `
8. 测试仓库
你可以运行以下命令来测试是否能从本地 YUM 仓库中安装软件包:
```bash
sudo dnf repolist
```
如果一切配置正确,你应该能看到你的本地仓库列表。
然后,你可以尝试安装软件包:
```bash
sudo dnf install
```
总结
通过这些步骤,你已经成功在 Linux 8 上搭建了一个本地 YUM 仓库,并且其他机器也可以通过 HTTP 访问该仓库来安装软件包。