mis*_*256 24 automounting mount hard-disk
目前,我的 PC 上安装了Linux Mint,并将 USB 硬盘分区安装为/home
. 这运行良好。
如果我安装第二个 USB 硬盘驱动器,Linux 是否有可能在两者之间混淆,并尝试/home
在启动时挂载第二个硬盘驱动器的分区?那会很糟糕。
来自 Windows,我经常看到驱动器号没有正确“记住”导致各种问题。
我想主要问题是:Linux 如何真正知道哪个 USB 硬盘驱动器是/dev/sdb
哪个/media/misha/my_2nd_drive
?
wur*_*tel 26
通常 USB 端口(总线/设备)的位置决定了它被检测到的顺序。但是,不要依赖于此。
每个文件系统都有一个UUID,它代表通用唯一标识符(FAT和NTFS使用略有不同的方案,但它们也有一个可以用作 UUID 的标识符)。您可以依赖 (Linux) UUID 是唯一的。有关 UUID 的更多信息,请参阅此 Wikipedia 文章。
使用磁盘 UUID 作为装载参数。要找出 UUID 是什么,请运行以下命令:
$ sudo blkid /dev/sdb1
Run Code Online (Sandbox Code Playgroud)
(blkid
需要读取设备,因此它需要 root 权限,因此sudo
。如果您已经成为 root,sudo
则不需要。)
然后,您可以/etc/fstab
像这样使用该 UUID :
UUID=7e839ad8-78c5-471f-9bba-802eb0edfea5 /home ext4 defaults 0 2
Run Code Online (Sandbox Code Playgroud)
这样就不会混淆要安装在 /home 上的磁盘。
对于手动安装,您可以使用 /dev/disk/by-uuid/.....
Dmi*_*yev 11
如果您fstab
引用分区为/dev/sdx
,那么添加新驱动器肯定会混淆系统。然而,最近的做法是使用分区 UUID来标识分区。
如果您的系统已udev
安装(必须是 2.6+ Linux 内核的情况),您可以在fstab
. 默认情况下,分区通过 UUID 标识:
/dev/disk/by-uuid/31f8eb0d-612b-4805-835e-0e6d8b8c5591
Run Code Online (Sandbox Code Playgroud)
但是,您可以创建一个有意义的分区标签,例如“home”,并像这样引用您的分区:
/dev/disk/by-label/home
Run Code Online (Sandbox Code Playgroud)
这些 ID 可以用作/dev/sdx
in的替代品fstab
。
归档时间: |
|
查看次数: |
2214 次 |
最近记录: |