USB 中的 chroot gentoo

USB 中的 chroot gentoo

所以我真的尝试提取它,但它给了我这个错误:

命令(从 USB 上提取):

tar xpvf stage3-amd64-nomultilib-20201021T14503Z --xattrs-include='*.*' --numeric-owner

输出:

tar: ./sys/: cannot change ownership to uid 0, gid 0 operation not permitted

和:

tar: ./bin/mount: Cannot change mode to rws--x--x: operation not permitted

类似这样的错误

有没有办法让我chroot?在 USB 中? (注意——我只想 chroot,而不是安装 Gentoo)。


编辑

在用户 Binki 的评论后

谢谢

我将闪存驱动器的文件系统更改为 EXT4。运行 gentoo wiki 中的命令,你猜怎么着?有效。以下是我运行到 chroot 的命令列表(对于 nomultilib):

tar xpvf stage3-amd64-nomultilib-20201021T14503Z --xattrs-include='*.*' --numeric-owner

挂载文件系统:

mount --types proc /proc specified_usb/gentoo/proc
mount --rbind /sys specified_usb/gentoo/sys
mount --make-rslave specified_usb/gentoo/sys
mount --rbind /dev specified_usb/gentoo/dev
mount --make-rslave specified_usb/gentoo/dev
test -L /dev/shm && rm /dev/shm && mkdir /dev/shm
mount --types tmpfs --options nosuid,nodev,noexec shm /dev/shm
chmod 1777 /dev/shm

答案1

当您是 root 时,您可能仍然会收到如下错误:

tar: ./sys/: cannot change ownership to uid 0, gid 0 operation not permitted
tar: ./bin/mount: Cannot change mode to rws--x--x: operation not permitted

这些听起来像是权限错误。在某些情况下可能是这样。因此请注意,您确实需要成为 root 才能使这些命令发挥作用。

但是,如果您使用的文件系统不支持这些功能,这些错误也可能会出现。例如,如果闪存驱动器格式化为FAT32的变体,则它无法支持某些操作,例如存储unix权限。您可以切换闪存驱动器以使用支持这些操作(例如 EXT4)的文件系统来继续。根据您的使用情况,您可能希望在闪存驱动器上创建一个环回文件(以便闪存驱动器本身可以保持 FAT,但环回 EXT4)。

chroot时,一定要记住绑定挂载文件系统,如 Gentoo 手册中所述。某些操作/程序将在没有至少/dev/sys/procMounted 的情况下失败。

相关内容