我以前overlayroot-chroot
在Ubuntu中使用:
http://manpages.ubuntu.com/manpages/bionic/man8/overlayroot-chroot.8.html
但现在我已经换成Debian了,它不存在了,也sudo apt install overlayroot-chroot
没有找到它。
如何在 Debian 上获得它?
答案1
看来这个二进制子包于 2014 年从 Debian 版本中删除因为此时没有覆盖文件系统在 Debian 上编译。当前的 Debian 11 内核确实提供了覆盖文件系统。
然后看起来 Launchpad 有这些来源有问题:
cloud-initramfs-tools 0.18 比当前打包版本旧。 Launchpad 可能缺少 trunk 系列的发行信息,或者此软件包链接到错误的 cloud-initramfs-tools 系列。
而 0.47 可用。 Debian 从未超过 0.18,这可能是巧合,也可能不是巧合。
你可以重建:
来自 Debian 源
apt-get source cloud-initramfs-tools
您必须取消
overlayroot
文件中包的构建部分的注释cloud-initramfs-tools-*/debian/control
,并希望稍后在 0.18 和 0.47 之间没有任何重要的调整。无论构建了额外的内容,您都应该仅安装新构建的
overlayroot_*.deb
包(使用apt-get
而不是dpkg
仍然引入依赖项)。或来自 Ubuntu Launchpad 来源:
最简单的方法是从https://launchpad.net/ubuntu/+source/cloud-initramfs-tools/0.47ubuntu1和
.tar.xz
文件.dsc
并使用:dpkg-source -x cloud-initramfs-tools_0.47ubuntu1.dsc
然后,在这两种情况下,请遵循有关如何从源代码(重新)构建包的指南:https://wiki.debian.org/BuildingTutorial包括步骤 2(依赖项)和 4(如果需要,编辑源)。
警告:未经测试,无法保证结果行为。
也可以看看:
答案2
以下是 @AB 提供的流程的一些扩展详细说明:
从 Ubuntu 为 Debian 构建 Ubuntu Overlayroot-chroot
sudo apt install overlayroot
在 Debian 中不可用overlayroot
(启用overlayfs)和overlayroot-chroot
(允许更改文件系统)是cloud-initramfs-tools
为构建创建一个目录
mkdir ~/overlayroot; cd ~/overlayroot
获取源代码
- 使用 Ubuntu Repo 获取
cloud-initramfs-tools
0.47(0.18 不起作用!) - 从以下位置获取文件:https://launchpad.net/ubuntu/+source/cloud-initramfs-tools/0.47ubuntu1
wget -O cloud-initramfs-tools_0.47ubuntu1.dsc https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/cloud-initramfs-tools/0.47ubuntu1/cloud-initramfs-tools_0.47ubuntu1.dsc
wget -O cloud-initramfs-tools_0.47ubuntu1.tar.xz https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/cloud-initramfs-tools/0.47ubuntu1/cloud-initramfs-tools_0.47ubuntu1.tar.xz
解压应用程序
dpkg-source -x cloud-initramfs-tools_0.47ubuntu1.dsc
构建应用程序
debuild -b -uc -us
安装应用程序
sudo apt install -y ../overlayroot_0.47ubuntu1_all.deb
配置 OVERLAYROOT
/etc/overlayroot.conf
根据需要 设置,例如:overlayroot_cfgdisk="disabled" overlayroot="tmpfs:swap=1,recurse=0"
- 重启
笔记
- 可以使用以下命令进行永久更改: sudo Overlayroot-chroot