ubuntuusers.de

Keyfile auf USB-Stick um LUKS-Partition bei Boot zu mounten?

Status: Ungelöst | Ubuntu-Version: Kubuntu 7.10 (Gutsy Gibbon)
Antworten |

edi2xs

Anmeldungsdatum:
10. Mai 2008

Beiträge: Zähle...

*Starting early crypto disks...
mount: special device /dev/disk/by-uuid/f73xxx does not exist
[  32.282151] sd 2:0:0:0: [sdb] Assuming drive cache: write through
[  32.285748] sd 2:0:0:0: [sdb] Assuming drive cache: write through

Das kommt beim starten, vorher läuft alles nach Plan, danach kommt:

home: key-file not found

Ich werde jetzt mal ausprobieren, ob es funktioniert wenn ich das Keyfile auf nem USB Stick hab, statt auf der SD Card, aber ich denke nicht, da dürfte ja eigentlich kein Unterschied sein. Die SD Card wird bei "lsusb" auch mit aufgelistet.

Ich bin noch ziemlich neu in der Linux-Welt, aber ich habe Spaß daran mich so durch zu würschteln. Ich mach halt alles so nach diversen Tutorials, aber wenn es dann zu nem unerwarteten Fehler kommt steh ich doof da... Vielen Dank für die Hilfe! ☺

Red_Radish

Anmeldungsdatum:
7. September 2007

Beiträge: 770

edi2xs schrieb:

*Starting early crypto disks...
mount: special device /dev/disk/by-uuid/f73xxx does not exist
[...]

Was ist dieses /dev/disk/by-uuid/f73xxx (Das kannst du per ls -l /dev/disk/by-uuid/f73xxx nachschauen). Ist das zufällig deine SD-Karte? /media/disk bzw. auch gleichzeitig /dev/sdb ? Wenn ja scheint der Fehler gefunden: Es dauert beim Start zu lange bis die Karte erkannt wird.

edi2xs

Anmeldungsdatum:
10. Mai 2008

Beiträge: 6

hmm, ja, /dev/disk/by-uuid/f73xxx ist meine SD Karte, aber das löst das Problem noch nicht. Die Karte ist in die fstab mit ihrer UUID eingetragen, darum der Fehler beim mounten von /dev/disk/by-uuid/f73xxx. Wenn ich die Karte in die fstab als /dev/sdb1 eintrage kommt der selbe Fehler.

radieschen schrieb:

Wenn ja scheint der Fehler gefunden: Es dauert beim Start zu lange bis die Karte erkannt wird.

Falls das der Fehler ist, wie kann man das ändern/umgehen?

Red_Radish

Anmeldungsdatum:
7. September 2007

Beiträge: 770

edi2xs schrieb:

radieschen schrieb:

Wenn ja scheint der Fehler gefunden: Es dauert beim Start zu lange bis die Karte erkannt wird.

Falls das der Fehler ist, wie kann man das ändern/umgehen?

Versuche mal Folgendes:

1) /lib/cryptsetup/cryptdisks.functions editieren (vorher Sicherheitskopie machen!!):

Diese Funktion suchen

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# Premounts file systems
mount_fs () {
        local point
        MOUNTED=""

        for point in $MOUNT; do
                if mount "$point" >/dev/null; then
                        MOUNTED="$MOUNTED $point"
                fi
        done
}

und durch folgende, leicht modifizierte Funktion ersetzen:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
# Premounts file systems
mount_fs () {
        local point i
        MOUNTED=""

        for point in $MOUNT; do
		i=0
		# warte bis zu 20 sekunden auf die SD-Karte
   	        while [ $i -lt 40 ] && [ ! -e "$point" ] ; do
                       /bin/sleep 0.5
                       i=$(( $i + 1 ))
                done

                if mount "$point" >/dev/null; then
                        MOUNTED="$MOUNTED $point"
                fi
        done
}

Wenn es dann immer noch nicht klappt, die Änderungen wieder rückgängig machen - das macht den Boot-Prozess dann nur extrem langsamer.

edi2xs

Anmeldungsdatum:
10. Mai 2008

Beiträge: 6

Super! Jetzt funktioniert es!

Vielen Dank!

Der Bootvorgang dauert jetzt schon etwas länger, aber die größte Verzögerung ist nicht das entschlüsseln, sondern danach.

*Starting early crypto disks...
keyslot 1 successful unlocked
command successful.

oder so ähnlich 😉 geht relativ schnell, aber danach das

*Starting remaining crypto disks...

dauert ewig, also die 20 Sekunden, und das ohne Ergebnis, weil ich ja sowieso nur eine verschlüsselte Platte habe. Kann man die "remaining crypto disks" nicht irgendwie abstellen?

[edit] Ich hab grad bemerkt, das das automatische unmounten nicht geht, aber das ist jetzt nicht so tragisch. Ich habe die Karte jetzt unter /mnt/disk eingehangen, damit sie nicht mehr aufm Desktop zu sehen ist und auf das Keyfile hat ja eh nur der Root Zugriff. Und das mit den "remaining cryptodisk muss wohl so sein, denn es wird ein [OK] dahinter angezeigt.

Red_Radish

Anmeldungsdatum:
7. September 2007

Beiträge: 770

edi2xs schrieb:

dauert ewig, also die 20 Sekunden, und das ohne Ergebnis, weil ich ja sowieso nur eine verschlüsselte Platte habe. Kann man die "remaining crypto disks" nicht irgendwie abstellen?

Was ist bei dir denn CRYPTDISKS_MOUNT? Versuche mal "/dev/disk/by-uuid/f73xxx" statt "/mnt/disk", sofern das noch nicht der Fall ist (wobei /dev/disk/by-uuid/f73xxx mit dem Wert der fstab übereinstimmen sollte,...)

Wenn das nichts nützt und da die zweite Funktion bei dir sowieso nichts macht:

while [ $i -lt 40 ] && [ ! -e "$point" ] ; do

testweise ersetzen durch

while [ "a${INITSTATE}" != "aremaining" ] && [ $i -lt 40 ] && [ ! -e "$point" ] ; do

edi2xs

Anmeldungsdatum:
10. Mai 2008

Beiträge: 6

Wenn ich das Skript so ändere geht es nicht mehr. Aber egal, ich hab jetzt das funktionierende genommen und die Wartezeit auf 10 Sekunden verkürzt, so lass ich das jetzt erst mal.

Laut dem Kommentar in der /etc/default/cryptdisks soll man bei CRYPTDISKS_MOUNT den Mountpunkt angeben, also /mnt/disk, oder

# Mountpoints to mount, before starting cryptsetup. This is useful for
# keyfiles on removable media. Seperate mountpoints by space.
CRYPTDISKS_MOUNT="/mnt/disk"
Antworten |