我使用的是debian linux,在这个操作系统中,我使用2个磁盘
1 -> 主磁盘 (/dev/sda1)
2 -> 辅助磁盘 (/dev/sdb1)
第一个磁盘安装在“/”上,第二个磁盘安装在 /mnt/disk 上,两个磁盘的条目都在 /etc 中的 fstab 文件中定义。
每次我重新启动 Linux 机器时,挂载点都会自动更改,这意味着有时 /dev/sdb1 会附加到 / ,而 /dev/sda1 会附加到 /mnt/disk ,反之亦然。
我尝试了很多解决方案,但未能找到此问题的确切根本原因
答案1
/dev/sdX
不固定。他们将要在重新启动之间进行更改,您对此无能为力。这是由于设备异步初始化造成的,并且存在竞争条件;这次谁的速度快就声称是 sda,另一个是 sdb。
所以你不应该像/dev/sdX
构建 fstab 时那样使用名称。
使用 LABEL、UUID 或/dev/disk/...
符号链接,是稳定,例如,它们识别设备或文件系统,即使 sda 和 sdb 交换角色也不会改变。或者/dev/mapper/VG-LV
,如果您使用 LVM,并且/dev/md/X
如果您使用 MD RAID,则可以使用链接;它们在底层使用 UUID,而且也很稳定。
例如:
UUID=cac830eb-9fd6-4161-989d-71be3a055978 /boot ext4 defaults 0 2
/dev/mapper/system-debian / ext4 errors=remount-ro 0 1
如果文件系统具有此 UUID,它将被挂载为 /boot,句号。我不在乎它是否恰好是 sda1、sdb1 或其他。根文件系统位于 LVM 上,并且将始终出现在,因为它是VG 上的/dev/mapper/system-debian
LV 。debian
system
要了解您的 UUID、标签等,请运行blkid
(以 root 身份或使用 sudo)。