ich habe meine /home-Partition mit dm-crypt und luks verschlüsselt und will anderen nicht vorenthalten, wie ich das mounten und umounten automatisiert habe. (Hier der Thread zu dem Problem, was ich hatte: http://forums.gentoo.org/viewtopic-p-3228740.html)
Die Howtos, mit denen ich dm-crypt, luks und das (mein erstes
http://de.gentoo-wiki.com/DM-Crypt
http://gentoo-wiki.com/SECURITY_System_ ... _with_LUKS
http://gentoo-wiki.com/TIP_Script_to_un ... sy_Devices
Die Kurzfassung der Installation von dm-crypt:
Automatisches mounten:# /sbin/badblocks -c 10240 -s -w -t random -v /dev/sda4
Kernel vorbereiten
Module laden
# modprobe dm-crypt
# modprobe sha256
# modprobe blowfish (oder: aes)
# echo dm-crypt >> /etc/modules.autolaod.d/kernel-2.6
# emerge -p cryptsetup-luks
# /bin/cryptsetup -c blowfish-cbc-essiv:sha256 -y -s 256 luksFormat /dev/sda4
# /bin/cryptsetup luksOpen /dev/sda4 localcrypt
# mkreiserfs /dev/mapper/localcrypt
# mount -t reiserfs /dev/mapper/localcrypt /mnt/localcrypt
nach dem umounten: # /bin/cryptsetup luksClose localcrypt
erneutes öffnen:
# /bin/cryptsetup luksOpen /dev/sda4 localcrypt
# mount -t reiserfs /dev/mapper/localcrypt /mnt/localcrypt
/etc/fstab:
/dev/mapper/localcrypt /home reiserfs noatime,noauto 0 0
Dazu verwende ich local.start und local.stop aus /etc/conf.d.
local.start
Code: Select all
/bin/cryptsetup luksOpen /dev/sda4 localcrypt && mount /homeCode: Select all
#moo_umount
#Quelle der Schleifenbedingung (wie gesagt, mein erstes Bashscript): http://gentoo-wiki.com/TIP_Script_to_unmount_Busy_Devices
#Mountpoint
mntp=/home
#sleep
sec=5
#Versuche bis zum fuser -ki $mntp
max_count=8
count=0
umountret=`umount $mntp 2>&1`
while [ `echo $umountret | grep busy | wc -l` -gt 0 ]; do
let count=count+1
echo "moo_umount $mntp: Try No. $count"
if [ $count == $max_count ];
then
fuser -ki $mntp 2>&1
count=0;
fi
echo "moo_umount $mntp: Device busy -> sleep $sec"
sleep $sec 2>&1
umountret=`umount $mntp 2>&1`
done
echo "moo_umount $mntp: Successfully umounted $mntp"
/bin/cryptsetup luksClose localcryptNach jedem Versuch wird $sec Sekunden pausiert, weil sich (zumindest bei mir) alle Prozesse nach kurzer Zeit von selbst beenden.
Ein "cd /" vor dem herunterfahren macht sich übrigens auch gut (Stichwort: alias).
Ich hoffe ich konnte helfen, Moorenkopf


