Noto que, se um mapeamento de dispositivo for criado com dmsetup de baixo nível ou por meio de ioctls, o mapeamento de dispositivo não estará mais disponível após a reinicialização.
- Isso é normal? Estou usando um USB para testar o dm_crypt
- Se é normal, como faço para manter o mapeamento? Preciso olhar para o udev?
Obrigado!
Editar para esclarecimentos
O que quero dizer com mapeamento de dispositivo é a entrada de tabela que especifica como mapear cada intervalo de setores de bloco físico para um dispositivo de bloco virtual. Você pode ver o que quero dizer, se estiver usando o LVM, com o comando dmsetup table . Isso fará o dump de todos os mapeamentos de tabela de dispositivos atuais. Aqui está um exemplo para o destino linear de mapeamento de dispositivo, vinculando dois discos juntos em uma troca de LVM (abstração de bloco físico):
vg00-lv_swap: 0 1028160 linear /dev/sdb 0
vg00-lv_swap: 1028160 3903762 linear /dev/sdc 0
O formato aqui é:
<mapping_name>: <start_block> <segment_length> <mapping_target> <block_device> <offset>
Onde:
-
mapping_name: o nome do dispositivo virtual
-
start_block: bloco inicial para o dispositivo virtual
-
comprimento segment_length: em setores (blocos de 512 bytes)
-
Destino de mapeamento de dispositivo mapping_target: , como linear , crypt , ou striped
-
block_device: qual dispositivo de bloco físico usar, neste caso definido por major: menor
-
deslocamento: deslocamento no dispositivo de bloco físico
Meu problema é que, depois de criar uma nova entrada na tabela de mapeamento de dispositivos, ela desaparece após a inicialização. Isto é, executando algo como:
dmsetup create TestEncrypted --table "0 $(blockdev --getsz /dev/sdb) crypt serpent-cbc-essiv:sha256 a7f67ad...ee 0 /dev/sdb 0"
e, em seguida, a reinicialização faz com que a entrada da tabela de mapeamento desapareça (ou seja, não aparece com a tabela dmsetup ), assim como o /dev/mapper/TestEncrypted
correspondente