A realidade é que o Cryptsetup usa Loop devices / Losetup para montar um arquivo de loopback em /dev/mapper/MyEncryptedVolume
.
udev
pode resolver a situação.
Existem duas opções: deixar o cryptsetup escolher o dispositivo loop ou dedicar um dispositivo de loop para isso.
Eu escolhi a segunda parte.
Neste exemplo, uso /dev/loop5
- Crie um arquivo chamado
99-myspecial.rules
na pasta/etc/udev/rules.d/
-
insira isto:
KERNEL=="loop5" MODE="0600" OWNER="MyUser" GROUP="MyGroupUser" ENV{UDISKS_IGNORE}="1" ENV{UDISKS_PRESENTATION_HIDE}="1" ENV{ID_DRIVE_EJECTABLE}="0"
Isto diz a
udisk
(que é o verdadeiro criador de problemas nessa situação) ignorar o volume, esconder o ícone, o volume não é ejetável (também não é um cdrom). Você também especifica que apenas um usuário pode acessar esse volume. -
Em seguida, reinicie o serviço do udev
-
Então eu vinculo o dispositivo de loop assim:
losetup /folder/myflatfile.img /dev/loop5
E então eu uso cryptsetup como eu quero com o dispositivo de loop como fonte.
Esperanças que ajudam alguém mais do que eu.