Hallo,
ich kann ich mich am Client nicht mehr als linuxadmin anmelden. Wenn ich als anderer sudo-User auf dem Client die grafische Benutzerverwaltung aufrufe (LinuxMint17), kommt die Fehlermeldung: „Die Konfiguration konnte nicht geladen werden. Es wurden ungültige Daten gefunden.“
Das kommt wohl von dem erst seit kurzem eingesetzten universellen-postsync-Skript für trusty. Wenn ich das aus dem Postsync entferne, klappt die Anmeldung wieder.
Im postsync.log habe ich diesen zum Fehler passenden Eintrag gefunden:
Executing: /mnt/postsync.d/01-lcst-setlocalpasswords - patching password hashes - linuxadmin
Ich habe das Universelle postsync-Skript eigentlich nur eingesetzt, weil ich die /etc/hosts editieren musste und weil es in Zukunft bestimmt noch praktisch sein könnte.
(Vgl: Netzwerkdrucker cups-lokal ? ipp://server.local:631 ? - #19 von S.Senft)
Kann mir jemand sagen, ob ich alle Anpassungen, die das Universelle postsync-Skript schon mitbringt nutzen sollte - und wie ich dann das linuxadmin-Problem löse?
Oder soll ich nur Teile des Universelle postsync-Skripts verwenden - und wie deaktiviere ich dann die problemverursachenden Teile (Dateien auf dem Server löschen, Skriptteile auskommentieren)?
Für Tipps dankbar.
Stefan
P.S:
Hier das Universelle postsync-Skript von meinem Server
#################################################### # Universelles postsync-Skript ##################### #################################################### # 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="trusty" # 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 ### Veränderung von Holger und Stefan, weil/etc/hosts nicht gepatcht wurde sed -i "s/HOSTNAME/$HOSTNAME/g" /mnt/etc/hosts sed -i "s/#SERVERIP/$SERVERIP/g" /mnt/etc/hosts ###
P.P.S:
Hier mal das ganze postsync.log vom Client:
##### POSTSYNC BEGIN ##### 20170825-1110 Hostname: adm-p01iii Raum: adm Patchcache: /linuxmuster-client/serverpatches Hostgruppe: qiana64update Patchclass: trusty - getting patchfiles receiving incremental file list trusty/common/passwords 0 0% 0.00kB/s 0:00:00 46 100% 44.92kB/s 0:00:00 (xfer#1, to-check=16/19) trusty/common/etc/hosts 0 0% 0.00kB/s 0:00:00 210 100% 205.08kB/s 0:00:00 (xfer#2, to-check=11/19) trusty/common/etc/xdg/autostart/loeschwarnung_schuljahresende.desktop 0 0% 0.00kB/s 0:00:00 111 100% 108.40kB/s 0:00:00 (xfer#3, to-check=8/19) trusty/common/opt/loeschwarnung_schuljahresende.sh 0 0% 0.00kB/s 0:00:00 342 100% 333.98kB/s 0:00:00 (xfer#4, to-check=7/19) trusty/common/postsync.d/00-lcst-fix-initrd 0 0% 0.00kB/s 0:00:00 269 100% 262.70kB/s 0:00:00 (xfer#5, to-check=6/19) trusty/common/postsync.d/01-lcst-setlocalpasswords 0 0% 0.00kB/s 0:00:00 540 100% 263.67kB/s 0:00:00 (xfer#6, to-check=5/19) trusty/common/postsync.d/02-lcst-patch-sshd-config 0 0% 0.00kB/s 0:00:00 232 100% 113.28kB/s 0:00:00 (xfer#7, to-check=4/19) trusty/common/postsync.d/03-lcst-fix-fstab 0 0% 0.00kB/s 0:00:00 673 100% 328.61kB/s 0:00:00 (xfer#8, to-check=3/19) trusty/common/postsync.d/04-lcst-generate-hosts 0 0% 0.00kB/s 0:00:00 564 100% 275.39kB/s 0:00:00 (xfer#9, to-check=2/19) trusty/common/root/.ssh/authorized_keys 0 0% 0.00kB/s 0:00:00 623 100% 304.20kB/s 0:00:00 (xfer#10, to-check=0/19) sent 286 bytes received 990 bytes 2552.00 bytes/sec total size is 3610 speedup is 2.83 - patching local files - patching common to /mnt Executing: /mnt/postsync.d/00-lcst-fix-initrd - fixing initrd links ...done. Executing: /mnt/postsync.d/01-lcst-setlocalpasswords - patching password hashes - linuxadmin -done ...done. Executing: /mnt/postsync.d/02-lcst-patch-sshd-config - patching sshd_config for server root - done ...done. Executing: /mnt/postsync.d/03-lcst-fix-fstab - fixing fstab - done ...done. Executing: /mnt/postsync.d/04-lcst-generate-hosts - fixing hosts ...done. ##### POSTSYNC END #####