
В рамках тестирования моего приложения я хотел посмотреть, что произойдет при замедлении или отказе жесткого диска. Я добавил задержку в 500 мс с помощью dmsetup create delayed
. Я не очень хорошо знаком с device mapper и не могу найти никаких ответов в сети. Как безопасно удалить задержку из блочного устройства?
Вывод 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
, чтобы она вступила в силу.