Gelöschte Debian GNU/Linux Initscripte wiederherstellen

Nach der Reperatur meines Asterisk-Servers hatte ich noch das Problem, dass sich das Asterisk Init-Skript nicht durch eine Neuinstallation des Pakets mit apt oder dpkg wiederherstellen lies. Nachdem packages.debian.org wieder nach Dateien in Debian-Paketen suchen kann (zuletzt hatte er noch nichtmal im Paket bash Dateien gefunden), habe ich heute herausgefunden, dass das Init-Skript im Paket asterisk liegt. Ich habe das Skript dann über einen Zwischenschritt aus der .deb Datei extrahiert. Das ist nicht so schwer, wenn man weiß dass eine .deb Datei eigentlich nur ein ar Archiv ist, das die Dateien control.tar.gz, data.tar.gz und debian-binary enthält. In data.tar.gz liegen dann die Dateien, die das Paket im Filesystem installiert. Im Endeffekt muß man mit diesem Wissen nur noch zwei Archive entpacken und kann dann das Init-Skript kopieren. Am Beispiel vom Asterisk Init-Skript geht das dann so:

cd /tmp
cp /var/cache/apt/archives/asterisk_<em>Version</em>_all.deb .
ar x asterisk_<em>Version</em>_all.deb
tar xvzf data.tar.gz
mv etc/init.d/asterisk /etc/init.d/asterisk
chown asterisk:asterisk /etc/asterisk/*

Damit läuft mein Asterisk wieder komplett. 🙂