Hi Holger,
danke für die Rückmeldung und erneute Annahme des Problems.
Linbo Version ist 2.3.3-0
start.conf:
# LINBO start.conf, Beispiel fuer Ubuntu
#Ubuntu auf Partition 1
#Swap auf Partition 2
#Cache auf Partition 3
[LINBO] # Start der globalen Konfiguration
SystemType = bios
#SystemType = bios
KernelOptions = quiet splash acpi=force
Cache = /dev/sda3 # lokale Cache Partition
Server = 10.16.1.1
Group = xenial916
RootTimeout = 600 # automatischer Rootlogout nach 600 Sek.
AutoPartition = no # keine automatische Partitionsreparatur beim LINBO-Start
AutoFormat = no # kein automatisches Formatieren aller Partitionen beim LINBO-Start
AutoInitCache = no # kein automatisches Befüllen des Caches beim LINBO-Start
DownloadType = rsync # Image-Download per torrent|multicast|rsync, default ist torrent
BackgroundFontColor = white # Bildschirmschriftfarbe (default: white)
ConsoleFontColorStdout = white # Konsolenschriftfarbe (default: white)
ConsoleFontColorStderr = orange # Konsolenschriftfarbe für Fehler-/Warnmeldungen (default: orange)
[Partition] # Betriebssystem (Ubuntu)
Dev = /dev/sda1 # Device-Name der Partition (sda1 = erste Partition auf erster Platte)
Size = 25G # Partitionsgroesse in kB (Bsp.: ca. 20G)
Id = 83 # Partitionstyp (83 = Linux, 82 = swap, c = FAT32, 7 = NTFS, …)
FSType = ext4 # Dateisystem ext4
Bootable = yes # Bootable-Flag
[Partition] # Swap
Dev = /dev/sda2 # Device-Name der Partition (sda2 = zweite Partition auf erster Platte)
Size = 12G # Partitionsgroesse 8388608 kB (Bsp.: ca. 2,5G)
Id = 82 # Partitionstyp (83 = Linux, 82 = swap, c = FAT32, 7 = NTFS, …)
FSType = swap
[Partition] # Cachepartition
Dev = /dev/sda3 # Device-Name der Partition (sda4 = vierte Partition auf erster Platte)
Size = # Partitionsgroesse in kB (Bsp.: keine Angabe = Rest der Platte)
Id = 83 # Partitionstyp (83 = Linux, 82 = swap, c = FAT32, 7 = NTFS, …)
FSType = ext4 # Dateisystem ext4
Bootable = yes # Bootable-Flag
[OS]
Name = Ubuntu 16.04 LTS # Name des Betriebssystems
Version = # Version (optional)
Description = Ubuntu 16.04 xenial # Beschreibung
IconName = ubuntu.png # Icon fuer die Startseite, muss unter /var/linbo/icons abgelegt sein
#Image = xenial916.rsync # Dateiname des differentiellen Images (Erweiterung .rsync)
#Image = # erst eintragen, wenn es erzeugt werden soll
BaseImage = xenial916.cloop
Boot = /dev/sda1 # Partition, die Kernel & Initrd enthaelt
Root = /dev/sda1 # Rootpartition, in die das BS installiert ist
Kernel = vmlinuz # Relativer Pfad zum Kernel
Initrd = initrd.img # Relativer Pfad zur Initrd
Append = ro splash # Kernel-Append-Parameter, ggf. anpassen
StartEnabled = yes # “Start”-Button anzeigen
SyncEnabled = yes # “Sync+Start”-Button anzeigen
NewEnabled = yes # “Neu+Start”-Button anzeigen
Hidden = yes # verstecke OS-Reiter
Autostart = yes # automatischer synchronisierter Start dieses Betriebssystems: yes|no
DefaultAction = start # DefaultAction bei Autostart: start|sync|new
AutostartTimeout = 5 # Timeout in Sekunden für Benutzerabbruch bei Autostart
postsync
`echo "##### POSTSYNC BEGIN #####"
LOG=/mnt/var/log/postsync.log
echo “##### POSTSYNC BEGIN #####” > $LOG
NOW=$(date +%Y%m%d-%H%M)
echo $NOW | tee -a $LOG
#IP-Adresse des Servers
SERVERIP=$(nslookup dummy 2> /dev/null | head -n 1 | awk -F: ‘{print $2}’ | sed “s/\s*//g”)
#Die Hostgruppe des aktuellen Rechners
HOSTGROUP=$(hostgroup)
#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
#UVZ für die Patches auf dem Server. Mit dieser Variablen
#kann man verschiedene Patches, z.B. für unterschiedliche
#Linux-Versionen bereitstellen.
#Wenn man hier $HOSTGROUP einträgt, erhält jede Rechnerklasse
#ein eigenes Patchklassenverzeichnis auf dem Server.
#Damit kann man verschiedene Patchklassen mit derselben cloop-Datei
#bedienen, wenn man das benötigt.
PATCHCLASS=“xenial916”
#Das Verzeichnis, in dem die Serverpatches
#im lokalen Clientcache synchronisiert werden.
PATCHCACHE=/linuxmuster-client/serverpatches
echo “” | tee -a $LOG
echo “Hostname: ${HOSTNAME}” | tee -a $LOG
echo “Raum: ${RAUM}” | tee -a $LOG
echo “Patchcache: ${PATCHCACHE}” | tee -a $LOG
echo “Hostgruppe: ${HOSTGROUP}” | tee -a $LOG
echo “Patchclass: ${PATCHCLASS}” | tee -a $LOG
echo “” | tee -a $LOG
#-----------------------------------------
#Patchdateien auf das lokale Image rsyncen
#-----------------------------------------
echo " - getting patchfiles" | tee -a $LOG
#RAUM -> Raumname
#HOSTNAME -> Rechnername
#Verzeichnis anlegen, damit es sicher existiert
mkdir -p /cache/${PATCHCACHE}
rsync --delete --progress -r “${SERVERIP}::linbo/linuxmuster-client/${PATCHCLASS}” “/cache/${PATCHCACHE}” | tee -a $LOG
echo " - patching local files" | tee -a $LOG
#common: Bekommen alle clients der Patchklasse
#files
if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/common ]; then
echo " - patching common to /mnt" | tee -a $LOG
cp -ar /cache/${PATCHCACHE}/${PATCHCLASS}/common/* /mnt/ | tee -a $LOG
fi
#tarpacks
if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/common/tarpacks ]; then
echo " - unpacking tarpacks from common/tarpacks to /mnt" | tee -a $LOG
for pack in /cache/${PATCHCACHE}/${PATCHCLASS}/common/tarpacks/*; do
echo " - unpacking: $pack" | tee -a $LOG
tar xvzf $pack -C /mnt | tee -a $LOG
done
fi
#Raum: Nur die Clients des Raums
#files
if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/${RAUM} ]; then
echo " - patching ${RAUM} to /mnt" | tee -a $LOG
cp -ar /cache/${PATCHCACHE}/${PATCHCLASS}/${RAUM}/* /mnt/ | tee -a $LOG
fi
#tarpacks
if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/${RAUM}/tarpacks ]; then
echo " - unpacking tarpacks from ${RAUM}/tarpacks to /mnt" | tee -a $LOG
for pack in /cache/${PATCHCACHE}/${PATCHCLASS}/${RAUM}/tarpacks/*; do
echo " - unpacking: $pack" | tee -a $LOG
tar xvzf $pack -C /mnt | tee -a $LOG
done
fi
#Host: Nur der Rechner
#files
if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/${HOSTNAME} ]; then
echo " - patching ${HOSTNAME} to /mnt" | tee -a $LOG
cp -ar /cache/${PATCHCACHE}/${PATCHCLASS}/${HOSTNAME}/* /mnt/ | tee -a $LOG
fi
#tarpacks
if [ -d /cache/${PATCHCACHE}/${PATCHCLASS}/${HOSTNAME}/tarpacks ]; then
echo " - unpacking tarpacks from ${HOSTNAME}/tarpacks to /mnt" | tee -a $LOG
for pack in /cache/${PATCHCACHE}/${PATCHCLASS}/${HOSTNAME}/tarpacks/*; do
echo " - unpacking: $pack" | tee -a $LOG
tar xvzf $pack -C /mnt | tee -a $LOG
done
fi
#Hook, um eigene Skripte auszuführen
if [ -d /mnt/postsync.d ]; then
for SCRIPT in /mnt/postsync.d/*
do
chmod 755 $SCRIPT
echo “Executing: $SCRIPT” | tee -a $LOG
#$SCRIPT > /dev/null 2>&1
$SCRIPT | tee -a $LOG
echo " …done." | tee -a $LOG
done
rm -rf /mnt/postsync.d
fi
#wenn es /mnt/tarpacks gibt - löschen
rm -rf /mnt/tarpacks
#Epoptes Serverkey - Rechte
if [ -e /mnt/etc/epoptes/server.key ];
then chmod 600 /mnt/etc/epoptes/server.key
fi
#Zeitstempel letzter sync hinterlegen
echo $NOW > /mnt/lastsync
#Rechte Dateien Profil-AC
#chown -R 1000:1000 /mnt/home/linuxadmin
echo “##### POSTSYNC END #####” | tee -a $LOG
`:
Bin gespannt auf deine Prognose.
Vielen Dank.
LG
David