是否可以将包含 Linux 根文件系统的设备设置为始终被检测为特定的块设备?

是否可以将包含 Linux 根文件系统的设备设置为始终被检测为特定的块设备?

我有一个可启动的 Linux 拇指驱动器,用于部署 Linux 操作系统映像,但我一直遇到问题,拇指驱动器偶尔会更改其安装的 /dev/sd 设备,从而对安装脚本造成严重破坏。是否可以强制拇指驱动器上的 Linux 系统始终将拇指驱动器检测为特定的 sd 设备?我的拇指驱动器通常安装为 sda,但我用作参考的拇指驱动器映像始终显示为 sdb。

我做了一些研究,看起来我可以使用 grub 或 udev 来做点什么,但我找不到足够具体的信息来得到我想要的东西。我发现 udev 的另一个有趣的事情是,你不一定非要使用 /dev/sd 设备,一个网站上有一个使用 /dev/thumb 的示例。最好将拇指驱动器检测为类似的东西,这样所有 sd 设备都是主机中的实际设备。

该拇指驱动器具有 CentOS 5.8 的正常安装(即未修改的实时 CD,针对驱动器的实际安装)。

所以我的问题是:是否可以强制 Linux 始终检测特定块设备上的特定硬件设备?

提前感谢您的回复。

答案1

device_mapper 解决了这个问题,在某种程度上。您可能想要使用/dev/disk/by-uuid(或可能/dev/disk/by-path)。

答案2

您需要研究如何为您的设备添加 udev 规则,以便它始终根据您的磁盘 uuid 在 /dev/thumb 处创建一个设备节点。

相关内容