如何消除使用 dm-delay 造成的延迟?

如何消除使用 dm-delay 造成的延迟?

作为测试应用程序的一部分,我想看看硬盘速度变慢或发生故障时会发生什么。我使用添加了 500ms 延迟dmsetup create delayed。我不太熟悉设备映射器,而且我在网上找不到任何答案。如何安全地从块设备中移除延迟?

我的虚拟机上的 lsblk 输出如下:

NAME              MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0                 2:0    1    4K  0 disk
sda                 8:0    0   60G  0 disk
├─sda1              8:1    0  500M  0 part /boot
└─sda2              8:2    0 59.5G  0 part
  └─delayed       253:16   0 59.5G  0 dm
    ├─centos-root 253:0    0 38.6G  0 lvm  /
    ├─centos-swap 253:1    0    2G  0 lvm  [SWAP]
    └─centos-home 253:2    0 18.9G  0 lvm  /home

我担心的是,如果在移除挂载时发生任何写入,都会导致磁盘不稳定。

答案1

您需要放回大概位于该点的原始线性映射,或者将您的延迟重写为 0。简而言之,查看您的延迟条目使用dmsetup table delayed并思考如何将其变成linear条目/使用 0 的延迟,将其替换为适当的条目使用dmsetup reload delayed等,然后运行dmsetup resume delayed以使其生效。

相关内容