环球热门:如何解决Linux磁盘乱序的问题
来源:腾讯云     时间:2023-03-01 18:23:10

背景

最近看腾讯云云硬盘一篇文档(https://cloud.tencent.com/document/product/362/32403) 以下这段通过软链接挂载磁盘方式,开始没太明白为什么要做这样复杂 ??

此云硬盘文档(https://cloud.tencent.com/document/product/362/32403) 分为量部分来介绍挂载磁盘:

1) 购买云硬盘后,直接格式化,通过设备方式挂载,如以下红色部分。


【资料图】

2)然后是将磁盘放到fstab中,就出现第一个截图的挂载方式。

原因

将软链接的方式写入fstab中其实是为解决Linux磁盘挂载乱序的问题 。 当Linux磁盘较多的情况,如/vda、/vdb、/vdc等,假如某块盘坏掉换盘后,前面盘符就会出现顺序错乱的情况,这是Linux工作机制导致的问题,当前Linux磁盘映射会通过以下依次三种顺序:

磁盘驱动程序加载;主机PCI插槽检测;磁盘本身监测。

所以这里出现热插拔、异常重启、磁盘异常换盘就会导致磁盘乱序,所以我们可以采用软连接的方式来解决此问题。

操作方式

查找磁盘映射关系。

tree /dev/disk/*/dev/disk/by-id|-- ata-QEMU_DVD-ROM_QM00002 -> ../../sr0`-- virtio-disk-91mkfy6l -> ../../vdb/dev/disk/by-label`-- config-2 -> ../../sr0/dev/disk/by-partuuid`-- 4c5be527-01 -> ../../vda1/dev/disk/by-path|-- pci-0000:00:01.1-ata-1 -> ../../sr0|-- pci-0000:00:06.0 -> ../../vda|-- pci-0000:00:06.0-part1 -> ../../vda1|-- pci-0000:00:07.0 -> ../../vdb|-- virtio-pci-0000:00:06.0 -> ../../vda|-- virtio-pci-0000:00:06.0-part1 -> ../../vda1`-- virtio-pci-0000:00:07.0 -> ../../vdb/dev/disk/by-uuid|-- 2023-02-28-09-55-50-00 -> ../../sr0|-- 7ce2278a-742e-4a79-8385-116636fe842c -> ../../vdb`-- c21f153f-c0a8-42db-9ba5-8299e3c3d5b9 -> ../../vda1

通过软链接的方式来挂载磁盘(还可以用标签,操作方式见参考)。

mount -t ext4 /dev/disk/by-uuid/7ce2278a-742e-4a79-8385-116636fe842c /mnt

成功挂载后,再将挂载盘动作写入/etc/fstab ,重启服务器时init会加载此文件,并将此文件中的设备进行挂载。

/dev/disk/by-uuid/7ce2278a-742e-4a79-8385-116636fe842c      /data1  ext4 defaults 0 0

执行以下命令,无报错为加载成功。

mount -a

参考

https://blog.csdn.net/foxempire/article/details/83609081

标签: