From 9172bf4a705b9ea472593a3d9dbdbc9e8fb365fd Mon Sep 17 00:00:00 2001 From: Christian Rößler Date: Mon, 13 May 2013 16:07:22 +0200 Subject: Zusätzlich: Installation und Konfiguration von lighttpd und tftpd --- data/install_server.sh | 105 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 104 insertions(+), 1 deletion(-) (limited to 'data') diff --git a/data/install_server.sh b/data/install_server.sh index 947f1688..ca67a6ed 100755 --- a/data/install_server.sh +++ b/data/install_server.sh @@ -1,6 +1,6 @@ #!/bin/sh -TOOLS="git squashfs-tools rsync" # TODO: lighttpd tftpd(?) +TOOLS="git squashfs-tools rsync lighttpd tftpd" for tool in $TOOLS; do echo " ###### Installiere $tool ##########" @@ -10,12 +10,115 @@ done # lighttpd konfigurieren # konfig: www-root = /srv/openslx/www +# damit es keinen Ärger wg. noch nicht vorhandenem docroot gibt +echo "Konfiguriere lighttpd ..." +echo "Stoppe installierten lighttpd ..." +/etc/init.d/lighttpd stop +ERR=$? +if [ "$ERR" -gt 0 ]; then + echo "Konnte lighttpd nicht anhalten - Abbruch!" + exit 1 +fi + +# lighttpd-Konfiguration patchen + +echo "Passe lighttpd-Konfiguration an ..." +cp -p /etc/lighttpd/lighttpd.conf /etc/lighttpd/lighttpd.conf.orig +ERR=$? +if [ "$ERR" -gt 0 ]; then + echo "Konnte alte lighttpd-Konfiguration nicht sichern - Abbruch!" + exit 1 +fi + +cat /etc/lighttpd/lighttpd.conf|sed 's/\/var\/www/\/srv\/openslx\/www/g'>/etc/lighttpd/lighttpd.conf.tmp +ERR=$? +if [ "$ERR" -gt 0 ]; then + echo "Konnte lighttpd-Konfiguration nicht patchen - Abbruch!" + exit 1 +fi + +mv /etc/lighttpd/lighttpd.conf.tmp /etc/lighttpd/lighttpd.conf +ERR=$? +if [ "$ERR" -gt 0 ]; then + echo "Konnte neue lighttpd-Konfiguration nicht speichern - Abbruch!" + exit 1 +fi + +# neues docroot (/srv/openslx/www) prüfen und ggf. erzeugen - ggf. altes docroot löschen? +echo "Prüfe docroot für lighttpd (/srv/openslx/www) ..." +if [ ! -d /srv/openslx/www ] ; then + echo "Erzeuge neues docroot für lighttpd (/srv/openslx/www) ..." + mkdir -p /srv/openslx/www + ERR=$? + if [ "$ERR" -gt 0 ]; then + echo "Konnte kein lighttpd-docroot-Verzeichnis erstellen - Abbruch!" + exit 1 + fi +fi + +# ... und lighttpd wieder hochziehen: +echo "Starte installierten lighttpd ..." +/etc/init.d/lighttpd start +ERR=$? +if [ "$ERR" -gt 0 ]; then + echo "Konnte lighttpd nicht starten - Abbruch!" + exit 1 +fi + # tftpd konfigurieren # tftp root = /srv/openslx/tftp +echo "Konfiguriere tftpd ..." +# neues docroot (/srv/openslx/tftp) prüfen und ggf. erzeugen - ggf. altes docroot löschen? +echo "Prüfe docroot für tftpd (/srv/openslx/tftp) ..." +if [ ! -d /srv/openslx/tftp ] ; then + echo "Erzeuge neues docroot für tftpf (/srv/openslx/tftp) ..." + mkdir -p /srv/openslx/tftp + ERR=$? + if [ "$ERR" -gt 0 ]; then + echo "Konnte kein tftpd-docroot-Verzeichnis erstellen - Abbruch!" + exit 1 + fi +fi + +echo "Halte xinetd an ..." +# Erstmal xinetd (kam mit tftpd) anhalten +/etc/init.d/xinetd stop # besser wäre zB service xinetd stop, aber wg. Kompatibilität +ERR=$? +if [ "$ERR" -gt 0 ]; then + echo "Konnte xinetd nicht anhalten - Abbruch!" + exit 1 +fi + +# tftpd-Konfiguration einschreiben +cat>/etc/xinetd.d/tftp<