cryptsetup & Passworteingabe im Shell Script

E

embro

Mitglied
Hallo Leute,

ich habe gestern mein erstes Script für die Shell geschrieben. Bzw. damit angefangen, weil es noch alles seeehr provisorisch ist. Also seid nicht zu hart mit mir... :)

Hier mal ein Auszug:

Code:
function hda7 {  
dev=/dev/hda7 
dev_short=${dev:5} 
map=/dev/mapper/hda7 
mnt=/tmp  
answer="x"  

while [ $answer != "y" ] && [ $answer != "n" ]; do 	
   echo -n "Next device in list is "$dev". Do you want to open and mount it? (y/n): "
   read answer	 
done  

if [ $answer = "y" ]; then 	
   cryptsetup luksOpen $dev $dev_short
   # check for valid password 	
   mount $map $mnt 	
   echo $map" mounted on "$mnt
   echo "" 
else [ $answer = "n" ] 
   echo "Skipping "$dev"." 	
   echo "" 
fi  
}

Ich hab jetzt folgendes Problem:

mit dem Befehl "cryptsetup luksOpen $dev $dev_short" lande ich am Passwort Prompt von cryptsetup. Wenn ich das richtige Passwort eingebe, funktioniert auch alles. Nun will ich aber natürlich die Funktionalität haben, dass ich das Passwort bei einer Fehleingabe nochmal eingeben kann... Ich habe allerdings keinen blassen Schimmer, wie ich das anstellen soll und hoffe auf eure Hilfe. :)
 
Programme liefern in Unix einen return-Code zurück. Dieser ist "0" bei erfolgreicher Ausführung, ansonsten ungleich "0". Du musst diesen nur auswerten, also in Deinem Fall:

Code:
...
while ! cryptsetup luksOpen $dev $dev_short
do
  echo "Doh! Try it again."
done
...

Gruss, Phorus
 

Ähnliche Themen

Queue für copy Script

Windows clients können nicht mehr auf lange laufendes System zugreifen

Falsche Rechte gesetzt beim Anlegen von Ordnern via Samba-Client

Debian squeeze, Webmin, Samba Freigaben

Routing Problematik

Zurück
Oben