Bei 8. wird behauptet, dass es den Befehl nicht gibt, linuxmuster-client-adsso-setup könnte ich anbieten …
linuxadmin@vorlagenrechner:~$ sudo linuxmuster-client-adsso
[sudo] Passwort für linuxadmin:
sudo: linuxmuster-client-adsso: Befehl nicht gefunden
Mit Setup lande ich bei derselben Meldung wie vorher, nur halt jetzt mit nem anderen Rechnernamen …
Restarting services:
#### Joining domain LINUXMUSTER.
#### Note that you have to input the password of the global-admin.
Passwort für global-admin@LINUXMUSTER.LAN:
Using short domain name -- LINUXMUSTER
Joined 'VORLAGENRECHNER' to dns domain 'linuxmuster.lan'
Installing server certificate ... mount error(2): No such file or directory
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
cp: Aufruf von stat für '/var/lib/samba/sysvol/linuxmuster.lan/tls/cacert.pem' nicht möglich: Datei oder Verzeichnis nicht gefunden
umount: /var/lib/samba/sysvol: nicht eingehängt.
Failed!
(pam_mount.c:133): clean system authtok=0x564ecdbff0e0 (1073741824)
Es gibt weder ein .cloop.macct noch die Date kbr5.keytab.
LG Patrick
die Dateien vom Client sind aber die interessanten.
Bei 8. wird behauptet, dass es den Befehl nicht gibt,
linuxmuster-client-adsso-setup könnte ich anbieten …
linuxadmin@vorlagenrechner:~$ sudo linuxmuster-client-adsso [sudo]
Passwort für linuxadmin: sudo: linuxmuster-client-adsso: Befehl nicht
gefunden |
Mit Setup lande ich bei derselben Meldung wie vorher, nur halt jetzt mit
nem anderen Rechnernamen …
Restarting services: #### Joining domain LINUXMUSTER. #### Note that
you have to input the password of the global-admin. Passwort für
global-admin@LINUXMUSTER.LAN: Using short domain name – LINUXMUSTER
Joined ‚VORLAGENRECHNER‘ to dns domain ‚linuxmuster.lan‘ Installing
server certificate … mount error(2): No such file or directory Refer
to the mount.cifs(8) manual page (e.g. man mount.cifs) cp: Aufruf von
stat für ‚/var/lib/samba/sysvol/linuxmuster.lan/tls/cacert.pem‘ nicht
möglich: Datei oder Verzeichnis nicht gefunden umount:
/var/lib/samba/sysvol: nicht eingehängt. Failed! (pam_mount.c:133):
clean system authtok=0x564ecdbff0e0 (1073741824) |
OK: es hängt woanders (auf dem Server, nehme ich an).
ich hab unserem Server einen anderen Namen als server gegeben und diesen Namen bisher in den Posts immer auf den Standard zurückgesetzt, damit das für alle Nutzer generisch bleibt.
Auf dem Client stand in der /etc/hosts aber 10.0.0.1 server.linuxmuster.lan, anstatt dem eigenen Namen. Nach der Änderung hats getan! Yeah!
Mann das war eine schwere Geburt. Tausend Dank für deine Leidensbereitschaft!
Hab ich da was in der Installation übersehen oder ist das noch ein Fehler irgendwo, dass da der falsche Name übertragen wurde?
Hab ich da was in der Installation übersehen oder ist das noch ein
Fehler irgendwo, dass da der falsche Name übertragen wurde?
die /etc/hosts wird im postsync gepatched.
Schau mal auf dem Server in die Datei
/srv/linbo/linuxmuster-client/bionic/common/etc/hosts
Was steht das?
Wahrscheinlich ein Platzhalter.
Dann schau in die Datei /srv/linbo/.cloop.postsync
Da steht eine sed Zeile in der der Platzhalter in der hosts ersetzt
wird: was steht da?
# /etc/hosts
# Diese Datei wird per postsync gepatcht.
# Pfad: ${linbodir}/${postsyncdir}/${patchclass}/common/etc/hosts -> /mnt/etc/hosts in LINBO
########## DO NOT EDIT START
# HOSTNAME wird im Postsyncskript mit dem echten Namen gepatcht
127.0.0.1 localhost
127.0.0.1 HOSTNAME.linuxmuster.lan HOSTNAME
#Die nächste Zeile enthält die Hostnamen so, wie sie auf dem Server eingetragen sind...
10.0.0.1 server.linuxmuster.lan server
## damit CUPS zufrieden ist, muss noch diese Zeile hier dazu:
10.0.0.1 server.lokal server.local
########## DO NOT EDIT END
und hier die .postsync:
echo "##### POSTSYNC BEGIN #####"
LOG=/mnt/var/log/postsync.log
export LOG
echo "##### POSTSYNC BEGIN #####" > $LOG
NOW=$(date +%Y%m%d-%H%M)
export NOW
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")
export SERVERIP
# Die Hostgruppe des aktuellen Rechners
HOSTGROUP=$(hostgroup)
export 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
export RAUM
# 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="ubuntu_vanilla"
export PATCHCLASS
# Das Verzeichnis, in dem die Serverpatches
# im lokalen Clientcache synchronisiert werden.
PATCHCACHE=/linuxmuster-client/serverpatches
export PATCHCACHE
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 --exclude "- *~" -lr "${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
## copy all files in common/*
cp -ar /cache/${PATCHCACHE}/${PATCHCLASS}/common/* /mnt/ | tee -a $LOG
## rsync (with delete) all postsync.d-files
rsync --delete -lr /cache/${PATCHCACHE}/${PATCHCLASS}/common/postsync.d/ /mnt/postsync.d/ | 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
# Zeitstempel letzter sync hinterlegen
echo $NOW > /mnt/.lastsync
# Hostgroup hinterlegen
echo ${HOSTGROUP} > /mnt/.hostgroup
# /mnt/.linbo wurde von Linbo hinterlegt
image=$(cat /mnt/.linbo)
# Image Beschreibung hinterlegen
cp /cache/${image}.cloop.desc /mnt/.description
echo "##### POSTSYNC END #####" | tee -a $LOG
Auf dem Client stand in der |/etc/hosts| aber |10.0.0.1
server.linuxmuster.lan|, anstatt dem eigenen Namen. Nach der Änderung
hats getan! Yeah!
Mann das war eine schwere Geburt. Tausend Dank für deine
Leidensbereitschaft!
bitte schick mir mal die /etc/hosts vom Cleint nach einem frischen sync:
ich muss die mal sehen.
und dann noch die gleiche Datei, wie du sie verändert hast (wie sie dann
also funktionienrte).
# /etc/hosts
# Diese Datei wird per postsync gepatcht.
# Pfad: ${linbodir}/${postsyncdir}/${patchclass}/common/etc/hosts -> /mnt/etc/hosts in LINBO
########## DO NOT EDIT START
# HOSTNAME wird im Postsyncskript mit dem echten Namen gepatcht
127.0.0.1 localhost
127.0.0.1 HOSTNAME.linuxmuster.lan HOSTNAME
#Die nächste Zeile enthält die Hostnamen so, wie sie auf dem Server eingetragen sind...
10.0.0.1 server.linuxmuster.lan server
## damit CUPS zufrieden ist, muss noch diese Zeile hier dazu:
10.0.0.1 server.lokal server.local
########## DO NOT EDIT END
Nachher:
# /etc/hosts
# Diese Datei wird per postsync gepatcht.
# Pfad: ${linbodir}/${postsyncdir}/${patchclass}/common/etc/hosts -> /mnt/etc/hosts in LINBO
########## DO NOT EDIT START
# HOSTNAME wird im Postsyncskript mit dem echten Namen gepatcht
127.0.0.1 localhost
127.0.0.1 HOSTNAME.linuxmuster.lan HOSTNAME
#Die nächste Zeile enthält die Hostnamen so, wie sie auf dem Server eingetragen sind...
10.0.0.1 snowden.linuxmuster.lan server
## damit CUPS zufrieden ist, muss noch diese Zeile hier dazu:
10.0.0.1 server.lokal server.local
########## DO NOT EDIT END
(Wie gesagt, damals hieß der Server noch snowden und nicht server.)