在更改VMware中的磁盘大小(例如,将磁盘大小再增加10 GB)之后,下一步是在Linux中重新扫描磁盘大小,以便内核识别这种大小更改。
为此,我们使用以下命令:
echo 1>/sys/class/block/sda/device/rescan在脚本中,我们每隔几分钟从cron作业中重新扫描一次,以验证是否需要调整相关磁盘的大小。
我想知道是否有某种方法可以识别磁盘大小是否改变了,而没有重新扫描,以及磁盘大小是否真的改变了,只有这样才能重新扫描。
到目前为止,我们还没有找到一种方法来验证磁盘大小是否在没有重新扫描的情况下被改变,但是我们希望我们能在这里得到答案。
我提出这个问题的原因是,我们对每隔几分钟进行一次扫描感到不舒服,尽管这一活动并不危险。
参考资料:https://kerneltalks.com/disk-management/how-to-rescan-disk-in-linux-after-extending-vmware-disk/
发布于 2022-08-10 13:20:18
识别块设备已被调整大小的方法是重新扫描它。就这样。没有必要找到重新扫描块设备的另一种方法来决定是否重新扫描它。
在虚拟环境中,每两分钟运行一次应该是安全的;无论何时运行rescan,性能都会受到很小的影响,因为rescan获得中断锁,但是重新扫描虚拟块设备的速度非常快。如果你每两分钟对rescans感到不舒服,你可以减少频率--你真的需要在两分钟内对磁盘大小做出反应吗?
(请注意,一些半虚拟化存储驱动程序会自动更新来宾看到的大小,因此没有必要进行重扫描;VMware显然不是这样。)
您可能想看看open-vm-tools,它应该允许在来自主机的来宾内部触发工作负载:这样,您可以在外部调整磁盘的大小,并在客户内部触发一个作业来重新扫描和调整卷的大小。我从来没有这样做过,所以我不知道这是否真的有可能。
https://unix.stackexchange.com/questions/713167
复制相似问题