自建archlinux的源

在 Arch Linux 上自建一个第三方软件源(repo)可以让你集中管理打包好的 .pkg.tar.zst 包,方便多台机器共享、自动升级。以下是完整步骤:

✅ 一、自建 Arch Repo 的基本原理

本质就是:

你用 repo-add 命令生成一个 .db.tar.zst 文件,然后把 .pkg.tar.zst.db* 文件放到 HTTP/FTP 或本地文件服务器上,其他机器即可通过 pacman 使用这个源。

✅ 二、自建步骤(HTTP 服务)

1️⃣ 准备打包目录

mkdir -p /srv/http/archlinux/ovsea/os/x86_64
cp your-package-1.0-1-x86_64.pkg.tar.zst /srv/http/archlinux/ovsea/os/x86_64

2️⃣ 生成数据库文件(.db)

cd /srv/http/archlinux/ovsea/os/x86_64
repo-add myrepo.db.tar.gz *.pkg.tar.zst

结果会生成:

  • myrepo.db.tar.gz(或 .db.tar.zst,随 pacman 版本而变)
  • myrepo.files.tar.gz

如果你希望 .dbzst 格式(新版默认),可用:

repo-add --new myrepo.db.tar.zst *.pkg.tar.zst

3️⃣ 启动 HTTP 服务(推荐用 nginx 或 python)

server {
    listen 80;
    server_name your_repo_host;

    location / {
        autoindex on;
        root //srv/http/archlinux;
    }
}

✅ 三、上传/更新包后

每次添加新包都要重新运行:

repo-add myrepo.db.tar.zst new-package.pkg.tar.zst

删除旧包也建议用:

repo-remove myrepo.db.tar.zst old-package-name

关于Zeno Chen

本人涉及的领域较多,杂而不精 程序设计语言: Perl, Java, PHP, Python; 数据库系统: MySQL,Oracle; 偶尔做做电路板的开发,主攻STM32单片机
此条目发表在Linux分类目录。将固定链接加入收藏夹。