Como faço para remover um atraso criado usando dm-delay?

Como faço para remover um atraso criado usando dm-delay?

Como parte do teste do meu aplicativo, eu queria ver o que aconteceria em caso de lentidão ou falha no disco rígido. Eu adicionei um atraso de 500ms usando dmsetup create delayed. Não estou muito familiarizado com o mapeador de dispositivos e não consigo encontrar nenhuma resposta online. Como removo com segurança o atraso de um dispositivo de bloco?

A saída do lsblk na minha VM é a seguinte:

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

Minha preocupação é causar instabilidade no disco se ocorrer alguma gravação quando a montagem estiver sendo removida.

Responder1

Você precisa colocar de volta o(s) mapeamento(s) linear(es) original(is) que presumivelmente estavam naquele ponto ou reescrever seu atraso para 0. Resumindo, observe sua entrada de atraso usando dmsetup table delayede pense em como transformá-la em uma linearentrada/usar um atraso de 0 , substitua-o pela entrada apropriada usando dmsetup reload delayedetc. e execute-o dmsetup resume delayedpara que tenha efeito.

informação relacionada