在initramfs脚本中修改/设置根设备

时间:2014-05-17 03:48:41

标签: linux encryption boot initrd

我想将根设备节点修改为initramfs中脚本的一部分。我不想自己执行switch_root(除非我必须)。我想添加一个脚本,如果满足某些条件,可以更改根设备。

我尝试了各种选项,例如阅读/设置$ root变量,但这不起作用。

背景问题是我只在满足某些条件时才尝试加密根设备。在这种情况下,我将数据从旧的根设备复制到新的加密设备,并希望将根切换到新的加密/ dev / mapper / secret设备,而不是预先配置的/ dev / sda2。

1 个答案:

答案 0 :(得分:2)

根据我的研究,看来给内核的根参数不能通过initramfs脚本进行更改。

请参阅https://unix.stackexchange.com/questions/65589/kernel-grub-how-override-root-parameter-inside-initrd-script

@ enzo2提供了通过重写grub配置文件(在我的情况下为/boot/grub/menu.lst)实现此目的的唯一方法,并发出重启,以便可以使用不同的根设备加载内核。