Hallo Max,
synchronisiert dieses Skript wirklich die zweite Partiton?
Die case-Anweisung ist doch auskommentiert!
Genau an der Stelle steht bei mir
---
/usr/bin/linbo_cmd synconly "$myserverip" "$1" "$mybaseimage"
"$myrsyncimage" "" "$myrootpartition"
---
und da hängt's.
Gruß Jürgen
Am 19.04.2016 um 22:33 schrieb Schule Führinger:
> Hallo Jürgen,
>
> ich hab das postsync auch etwas verändert, vll. hilft es trotzdem:
>
> LG
> Max
>
> echo "##### trusty-linuxmuster POSTSYNC BEGIN #####"
>
> # IP-Adresse des Server
> SERVERIP="$(grep ^linbo_server /tmp/dhcp.log | tail -1 | awk -F\'
> '{ print $2 }')"
> STARTCONF=/cache/start.conf
>
> # Raum feststellen. Dieses Skript geht davon aus
> # dass die Rechner Namen der Form
> # raumname-hostname haben, also z.B. cr01-pc18
> RAUM=${HOSTNAME%-*}
> # wenn der string leer ist, raum auf unknown setzen
> if [ "x${RAUM}" == "x" ]; then
> RAUM="unknown"
> fi
>
> # Das Verzeichnis, in dem die Serverpatches
> # local synchronisiert werden.
> PATCHCACHE="linuxmuster-client"
> # UVZ auf dem Server. Mit diesem Variablen kann
> # man verschiedene Images bedienen (was bei linux
> # selten nötig ist)
> PATCHCLASS="trusty-virt"
>
>
>
>
> echo ""
> echo "Hostname: ${HOSTNAME}"
> echo "Raum: ${RAUM}"
> echo "Patchcache: ${PATCHCACHE}"
> echo "Patchclass: ${PATCHCLASS}"
> echo ""
>
> # -----------------------------------------
> # Patchdateien auf das lokale Image rsyncen
> # -----------------------------------------
> echo " - getting patchfiles"
>
> # RAUM -> Raumname
> # HOSTNAME -> Rechnername
> # Verzeichnis anlegen, damit es sicher existiert
> mkdir -p /cache/${PATCHCACHE}
> rsync --progress --delete -rp -L
> "${SERVERIP}::linbo/linuxmuster-client/${PATCHCLASS}"
> "/cache/${PATCHCACHE}/"
>
> echo " - patching local files"
> # zuerst alles in common
> if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/common ]; then
> cp -ar /cache/${PATCHCACHE}/${PATCHCLASS}/common/* /mnt/
> fi
>
> # if [ -d /cache/${PATCHCACHE}/common ]; then
> # cp -ar /cache/${PATCHCACHE}/common/* /mnt/
> # fi
>
> # dann raumspezifisch
> if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/${RAUM} ]; then
> cp -r /cache/${PATCHCACHE}/${PATCHCLASS}/${RAUM}/* /mnt/
> fi
> # if [ -d /cache/${PATCHCACHE}/${RAUM} ]; then
> # cp -ar /cache/${PATCHCACHE}/${RAUM}/* /mnt/
> # fi
>
> # dann rechnerspezifisch hier auch wie oben geöndert.
> if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/${HOSTNAME} ]; then
> cp -ar /cache/${PATCHCACHE}/${PATCHCLASS}/${HOSTNAME}/* /mnt/
> fi
>
> # -----------------------------------
> # Berechtigungen anpassen, wenn nötig
> # -----------------------------------
> echo " - setting permissions of patched local files"
>
> # printers.conf
> [ -f /mnt/etc/cups/printers.conf ] && chmod 600
> /mnt/etc/cups/printers.conf
>
> # .ssh verzeichnis
> chmod 700 /mnt/root/.ssh/
> chmod 600 /mnt/root/.ssh/authorized_keys
>
> # /etc/sudoers
> chmod 440 /mnt/etc/sudoers
>
> # hostname in /etc/hosts patchen
> sed -i "s/HOSTNAME/$HOSTNAME/g" /mnt/etc/hosts
> sed -i "s/#SERVERIP/$SERVERIP/g" /mnt/etc/hosts
>
> # home vom linuxadmin dem zugehörig machen
> chown -R 1000:1000 /mnt/home/linuxadmin
>
> # fstab anpassen, damit Swap-Partition stimmt
> # SWAP=$(sed ':a;N;$!ba;s/\n/;UMBRUCH;/g' $STARTCONF | sed 's/
> //g'|sed 's/\[Partition\]/\n/g' | grep -i 'fstype=swap' | sed
> 's/;UMBRUCH;/\n/g' | grep -i 'dev=/' | cut -d'=' -f2 | head -c9)
> # sed -i "s/#dummyswap/$SWAP/g" /mnt/etc/fstab
>
>
>
> ##### -----------------------------------------------
> ##### Virtualbox-Partition aktuell halten
> ##### -----------------------------------------------
>
> ##### so gehts nicht (leider) #####
> # #linbo_wrapper sync:2 # geht so leider nicht
>
> ##### so gehts langsam, weil er es jedesmal neu synct (warum?) #####
> # echo " - getting virtual windows"
> # mkdir -p /virtual > /dev/null 2>&1
> # #sicherheitshalber unmounten:
> # umount /virtual > /dev/null 2>&1
> # VIRTUALDEVICE=/dev/sda3
> # VIRTUALMACHINESERVERDIR=virtualbox/aktuell/
> # mount $VIRTUALDEVICE /virtual && \
> # rsync --progress -r
> "${SERVERIP}::linbo/${VIRTUALMACHINESERVERDIR}" "/virtual/"
> #
> # echo " - setting permissions for virtual windows"
> # cd /
> # chmod -R 777 /virtual
> # umount /virtual
> #
> # rsync --progress -r "${SERVERIP}::linbo/postsync/vmlinuz" "/mnt/"
> # rsync --progress -r "${SERVERIP}::linbo/postsync/initrd.img" "/mnt/"
>
> ##### die elegante Version #####
>
> # Name des Rsyncimages, ggf. eintragen
> myrsyncimage=""
> # Zielpartition auf die gesynct werden werden soll, muss angepasst werden
> myrootpartition=/dev/sda3
>
>
> # Name des Basisimages das zusaetzlich synchronisert werden soll (muss
> angepasst werden)
>
> case ${RAUM} in
> "ch")
> mybaseimage=vbox_dgiss.cloop
> ;;
>
> "r009")
> mybaseimage=vbox_mindstorms.cloop
> ;;
>
> "r010")
> mybaseimage=vbox_mindstorms.cloop
> ;;
>
> "ph")
> mybaseimage=vbox_mindstorms.cloop
> ;;
>
> "bio")
> mybaseimage=vbox_dgiss_bio.cloop
> ;;
> "klzi")
> #evtl. vorhandenes aus den Klassenzimmer-PCs löschen wg. Lizenzen
> mkdir /test
> mount /dev/sda3 /test
> rm -rf /test/*
> umount /test
> ;;
>
>
> *)
> mybaseimage=keines
> #mybaseimage=vbox.cloop
> ;;
> esac
>
> case ${HOSTNAME} in
> "mm-pc02")
> mybaseimage=vbox_mindstorms.cloop
> ;;
> "mml-pc12")
> mybaseimage=vbox_mindstorms.cloop
> ;;
>
> *)
> mybaseimage=keines
> ;;
> esac
>
>
> # IP des LINBO-Servers, wird automatisch aus dhcp.log ermittelt (wurde
> oben schon gemacht)
> #myserverip="$(grep ^linbo_server /tmp/dhcp.log | tail -1 | awk -F\'
> '{ print $2 }')"
>
>
> # Ausgabe der Parameter auf der LINBO-Konsole
> echo "cachepartition: $1"
> echo "myserverip: $SERVERIP"
> echo "mybaseimage: $mybaseimage"
> echo "myrsyncimage: $myrsyncimage"
> echo "myrootpartition: $myrootpartition"
>
> # Befehl zur Synchronisation der zweiten Partition
> #case $vbox in
> # virtual) /usr/bin/linbo_cmd synconly "$SERVERIP" "$1"
> "$mybaseimage" "$myrsyncimage" "" "$myrootpartition" ;;
> # real) /usr/bin/linbo_cmd synconly "$SERVERIP" "$1" "$mybaseimage"
> "$myrsyncimage" "" "$myrootpartition" ;;
> # *) echo "Nichts zu tun." ;;
> #esac
>
> # Syntax fuer linbo_cmd synconly:
> # /usr/bin/linbo_cmd synconly "<LINBO-Server-IP>" "<Cachepartition>"
> "<Basisimage>" "<Rsyncimage>" "<Bootpartition>" "<Rootpartition>"
> /usr/bin/linbo_cmd synconly "$SERVERIP" "$1"
> "$mybaseimage" "$myrsyncimage" "" "$myrootpartition"
>
> echo "##### POSTSYNC END #####"
>
>
> LG
> Max
>
_______________________________________________
linuxmuster-user mailing list
[email protected]
https://mail.lehrerpost.de/mailman/listinfo/linuxmuster-user