如何从实时安装程序 preseed/early_command 访问启动介质上的文件?

如何从实时安装程序 preseed/early_command 访问启动介质上的文件?

我目前正在尝试为我的 ubuntu 桌面 18.04 设置一个预置文件。查看它是否正常工作的一个简单方法是更改​​ ubuntu live 安装程序的背景图像。因此,受到这个问题我在预置文件的开头添加了以下内容:

d-i preseed/early_command string cp /cdrom/preseed/warty-final-ubuntu-blue.png /root/usr/share/backgrounds/warty-final-ubuntu.png

/root我按照建议将前缀添加到目标路径无处不在的自动化

您可以在 Live CD 中使用 preseed/early_command;它将由 initramfs 中的“casper”(在启动时设置 Live 环境的组件)运行。
请注意,如果您想影响 Live 环境中的文件,这意味着您必须在其文件名前加上 /root 前缀。

当我从我的 USB 记忆棒(我用mkisofsisohybrid和创建dd的)启动时,我进入安装程序开始验证的部分。它会自动选择语言,因为我在启动参数中指定了该语言,然后显示分区对话框(正如预期的那样,我没有在预置文件中指定分区)。但背景保持不变。

当我按下打开 tty2CtrlAltF2并使用 ubuntu 登录时,我可以看到/log/var/casper.logcp 无法统计我的文件。

但此时我可以看到该文件。它就在那里,/cdrom/preseed/warty-final-ubuntu-blue.png正如我所期望的那样。当然,由 casper 运行,因此可能没有与安装期间相同的文件系统可访问。但如果是这种情况,它实际上执行位于 的预置文件中的命令preseed/early_command会很奇怪。在启动参数中,它使用该路径指定。cp/cdrom/preseed/early_command

我怎样才能将我的映像文件从 USB 驱动器复制到实时系统?
我明确询问的是实时系统,而不是正在安装的目标系统。

答案1

如果您想影响实时环境中的文件,[...] 您必须在其文件名前加上前缀/root

我知道在实时环境中我可以使用 访问 USB 驱动器的文件系统/cdrom。所以我尝试使用 是否/root/cdrom可以工作,结果确实可以工作。

d-i preseed/early_command string cp /root/cdrom/preseed/warty-final-ubuntu-blue.png /root/usr/share/backgrounds/warty-final-ubuntu.png

相关内容