Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
q00
- Beiträge: 36
- Registriert: 21.09.2008 13:16:37
Beitrag
von q00 » 02.11.2008 05:04:14
Hi Leute
Ich arbeite gerade an einem Skript, welches meine verschlüsselten Partitionen:
erst einhängen...
Code: Alles auswählen
sudo cat key.txt | sudo cryptsetup luksOpen /dev/sd<Partition> <Name>
sudo mount /dev/mapper/<Name> /mnt
..und nach 15 min. ohne lese-/schreibzugriff wieder aushängen soll:
Die beiden Skripte alleine funktionieren schonmal gut, nun fehlt mir noch der Zwischenteil mit den 15 min.
Hat jemand eine Idee wie ich das machen kann? Ich kenn mich mit Skripten leider nicht aus.
Danke und Gruß
q00
Desktop: Debian Squeeze x86 / LXDE
AMD Phenom X3 @ 2,2 GHZ
AsRock N68-S UCC, nForce 630a
NVIDIA GF 8800GTS
-
mragucci
- Beiträge: 598
- Registriert: 08.09.2004 03:21:24
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Endor
-
Kontaktdaten:
Beitrag
von mragucci » 02.11.2008 22:54:10
Hi,
im ersten Script folgendes hinzufügen
LG
-
Danielx
- Beiträge: 6419
- Registriert: 14.08.2003 17:52:23
Beitrag
von Danielx » 03.11.2008 01:12:22
mragucci hat geschrieben:im ersten Script folgendes hinzufügen
Und wie erkennst du damit die Lese-/Schreibzugriffe?
-
mragucci
- Beiträge: 598
- Registriert: 08.09.2004 03:21:24
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Endor
-
Kontaktdaten:
Beitrag
von mragucci » 03.11.2008 05:39:03
mragucci hat geschrieben:Hi,
im ersten Script folgendes hinzufügen
LG
Du kannst mit lsof abfragen, ob Dateien auf dem Stick geöffnet sind. Darauf machst Du in Deinem unmount Script eine if Bedingung, wenn keine Dateien geöffnet sind, dann unmount, ansonsten obigen Befehl wieder setzen
-
CrashMan
- Beiträge: 340
- Registriert: 07.04.2007 14:04:27
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: MD
Beitrag
von CrashMan » 03.11.2008 12:36:36
Wenn du dann aber nach 14 Minuten den Dateizugrif beendest und in der 15. Minute das Skript läuft, hast du nur 1 Minute zwischen Zugriff und umount.
mfg
debian stable + arch
-
q00
- Beiträge: 36
- Registriert: 21.09.2008 13:16:37
Beitrag
von q00 » 03.11.2008 14:52:34
mragucci hat geschrieben:Hi,
im ersten Script folgendes hinzufügen
LG
Thx, was soll ich nun genau in das umount Script schreiben?
Desktop: Debian Squeeze x86 / LXDE
AMD Phenom X3 @ 2,2 GHZ
AsRock N68-S UCC, nForce 630a
NVIDIA GF 8800GTS
-
jhr-online
- Beiträge: 2186
- Registriert: 18.09.2005 15:52:02
- Lizenz eigener Beiträge: GNU Free Documentation License
-
Kontaktdaten:
Beitrag
von jhr-online » 03.11.2008 15:08:35
Ich glaube nicht, dass du mit at wirklich weiter kommst. Du brauchst, wenn ich dich richtig verstehe, eine Schleife... Z.B. so:
Code: Alles auswählen
#!/bin/bash
# Beispiel: script.sh /dev/sda1
WAITSECONDS=900 # 15 Minuten * 60
DEVNAME="dev$RANDOM"
[ -z "$1" ] && echo "I need a device name to mount!"
[ -f "$1" ] && echo "Given device name not found!"
sudo cat /path/to/key.txt | sudo cryptsetup luksOpen "$1" "$DEVNAME"
sudo mount /dev/mapper/"$DEVNAME" /mnt
[ "$?" -ne 0 ] && exit 1
WAIT=$WAITSECONDS
while [ $WAIT -gt 0 ]; do
sleep $WAIT
if [ `lsof /mnt | wc -l` -ne 0 ]; then
WAIT=$WAITSECONDS
continue
fi
WAIT=$((WAIT-60))
done
sudo umount /mnt
sudo cryptsetup luksClose "$DEVNAME"
exit 0
Das ist aber vollkommen ungetestet!
jhr
Desktop: Intel Core2Quad Q8300 2.5GHz, 256GB SSD + 1 TB HDD, 8 GB RAM, Debian Sid, Kernel 3.13