I'm developing a product running embedded Linux.
We have an SDcard with one partition on it, and this partition is an encrypted LUKS volume.
While the SDcard is mounted, the user can spontaneously eject the SDcard. I have successfully altered the UDEV script to handle this eventuality, as follows:
umount /mnt/sdcard
cryptsetup luksClose cryptocard
Then when the user re-inserts the SDcard after a spontaneous ejection, I try to re-mount it again. So the entire process from start to finish goes as follows:
echo -n password | cryptsetup luksOpen /dev/sdb1 cryptocard -
mount /dev/mapper/cryptocard /mnt/sdcard
[ User spontaneously ejects SDcard ]
umount /mnt/sdcard
cryptsetup luksClose cryptocard
[ ... ... ... 1 minute goes by ... ... ... ]
[ User re-inserts SD card ]
echo -n password | cryptsetup luksOpen /dev/sdb1 cryptocard -
mount /dev/mapper/cryptocard /mnt/sdcard
This appears to work just fine, however when I try to do more complex write operations, it starts to freak out a little (files that were previously visible are no longer visible). When I reboot the machine, everything's working fine again.
So it seems that the system is not adequately recovering from the spontaneous ejection of the SDcard. Do I need to somehow "flush out" the LUKS system in order to successfully re-mount the volume? Is it possible to 'restart' the LUKS subsystem to get this to work properly again? I only ever have one LUKS volume open at a time so I don't have to worry about closing other volumes before 'flushing out'.
Frederick
_______________________________________________ dm-crypt mailing list dm-crypt@xxxxxxxx https://www.saout.de/mailman/listinfo/dm-crypt