Hallo,
Roland Wolters wrote:
[snip]
nun habe ich da aber zwei Probleme:
- rcS.d gibt es bei Fedora nicht, welches Verzeichnis ist dort das
entsprechende? Wie gesagt, es soll for fstab geschehen.
Es gibt für jedes Runlevel eigene Verzeichnisse in /etc/rc.d/:
$ ll /etc/rc.d/
insgesamt 68
drwxr-xr-x 2 root root 4096 14. Jul 00:03 init.d
-rwxr-xr-x 1 root root 2352 17. Mär 00:43 rc
drwxr-xr-x 2 root root 4096 14. Jul 00:03 rc0.d
drwxr-xr-x 2 root root 4096 14. Jul 00:03 rc1.d
drwxr-xr-x 2 root root 4096 14. Jul 00:03 rc2.d
drwxr-xr-x 2 root root 4096 14. Jul 00:03 rc3.d
drwxr-xr-x 2 root root 4096 14. Jul 00:03 rc4.d
drwxr-xr-x 2 root root 4096 14. Jul 00:03 rc5.d
drwxr-xr-x 2 root root 4096 14. Jul 00:03 rc6.d
-rwxr-xr-x 1 root root 220 23. Jun 2003 rc.local
-rwxr-xr-x 1 root root 25402 12. Jul 21:36 rc.sysinit
In rc.local kannst du das leider nicht eintragen, da diese Datei nach
allen anderen aufgerufen wird, es in rc.sysinit einzutragen wäre
"unsauber". Dein Skript muss also für jedes Runlevel (bis auf 0 und 6)
gestartet werden, und somit musst du je einen Link in den
entsprechenden Verzeichnissen erstellen. Dumm ist dabei nur, dass
einmal beim booten starten ja ausreicht, so würde das Skript bei jedem
Runlevel-Wechsel gestartet werden.
Hat da jemand noch andere Ideen?
- wie muss ich das Skript verändern, damit auch beim runterfahren
cryptsetup remove maildir
ausgeführt wird? Damit ich es also als K99cryptinit in das rcS.d
Äquivalent legen kann?
da könntest du zwei Links erstellen (in /etc/rc.d/rc0.d
und /etc/rc.d/rc6.d), die zum Beispiel K99cryptinit heißen. Im Skript
selbst steht in der Variable $0 das Kommando, mit dem es aufgerufen
wurde. Wenn das Skript über den Link aufgerufen wurde z.B.
"/etc/rc.d/rc0.d/K99cryptinit" (bzw. rc6.d).
Entsprechend modifiziertes Skript (/etc/init.d/cryptinit):
if [ -b /dev/mapper/maildir ]; then
/usr/bin/cryptsetup remove maildir
fi
if [ -z `echo $0 | grep "K99cryptinit" ]; then
/usr/bin/cryptsetup create maildir /dev/sda9
fi
Die if-Abfrage bewirkt, dass "cryptsetup create maildir" nur aufgerufen
wird, wenn das Skript *nicht* mit "K99cryptinit" gestartet wird.
Alternativ kannst du natürlich auch ein zweites Skript erstellen, das
nur für Shutdown/Reboot zuständig ist.
Wie üblich für jede Hilfe dankbar,
Roland
Ich hoffe, dass das halbwegs verständlich war. Ansonsten nochmal
nachfragen...
Grüße,
Andreas
P.S.
Muss cryptsetup überhaupt beim Runterfahren aufgerufen werden? Ich kenne
mich damit nicht aus.