跳转至内容

pacstrap

来自 ArchWiki

来自 pacstrap(8)

pacstrap 设计用于从头开始创建新的系统安装。

pacstrap 主要用于系统安装过程中,并且预装在 Arch 安装介质中。它也用于引导 Linux 容器


安装

安装 arch-install-scripts 包。

技巧与提示

创建干净的 chroot 环境

本文档或部分内容可能合并到 DeveloperWiki:Building in a clean chroot#Classic way

注意: 范围相同(请在 Talk:Pacstrap 中讨论)

当前,devtools 只支持 sudo。这无法更改,因为 devtools 需要使用 sudo 的复杂功能,而 opendoas 不支持。你可以使用 pacstrap 手动创建 chroot。

首先,创建 chroot 目录

# mkdir /var/chroot

然后,安装 base 系统和 base-devel元数据包,包含 makepkg 工具使用的包)

# pacstrap -K /var/chroot base base-devel
注意 -K 标志会初始化一个新的 pacman 密钥环,而不是使用主机的密钥环。对于在 chroot 环境中使用非官方镜像并希望从主机导入其密钥的人来说,可以省略此标志。

如果你没有将分区挂载到 /var/chroot,则必须将目录自身绑定挂载,以确保与 arch-chroot 兼容。

# mount --bind /var/chroot /var/chroot

然后你可以使用 arch-chroot 进入 chroot 环境

# arch-chroot /var/chroot

你不能以 root 用户身份构建 arch 页面,makepkg 出于安全考虑不允许使用 root 用户。创建一个构建用户

# useradd -m build
注意 需要 -m 标志来确保 useradd 以正确的权限创建构建用户的家目录。

然后你可以使用以下命令切换到构建用户

# su -l build
注意 -l 标志用于切换到你要切换到的用户的家目录,这可以防止你意外尝试读取/写入 root 的家目录。

你现在可以通过将它们克隆到 chroot 中来构建任何你想要的 AUR 包,或者使用 chroot 来测试和调试 arch 包。