Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
anwenderwiki:linuxclient:linuxclient7 [2021/11/22 17:33] – [1. Klassenarbeitsmodus] martin.res | anwenderwiki:linuxclient:linuxclient7 [2022/01/13 14:11] (aktuell) – dorian |
---|
Offizielle Dokumentation -> [[https://docs.linuxmuster.net/de/latest/clients/linux-clients/linux-client-current-method.html]] | Offizielle Dokumentation -> [[https://docs.linuxmuster.net/de/latest/clients/linux-clients/linux-client-current-method.html]] |
| |
| Die hier dokumentieren Punkte beziehen sich auf einen Standard-Linuxclient, der in der Comunity seit August 2021 verteilt wird. |
| ====== Anpassungen ====== |
| ===== 1. Deinstallationen ===== |
| <code> |
| # apt remove unattended-upgrades |
| </code> |
====== Bugs-Fehler-Probleme ====== | ====== Bugs-Fehler-Probleme ====== |
| |
=====1. Klassenarbeitsmodus ===== | =====1. Klassenarbeitsmodus ===== |
* **Problem:** Ein Klassenarbeits-Benutzer kann sich nicht anmelden, Desktop friert ein | * **Problem:** Ein Klassenarbeits-Benutzer kann sich nicht anmelden, Desktop friert ein |
* **Ursache:** Er hat als Gruppenmitglied von "examusers" keine sudo-rechte zum Mounten seines home-shares | * **Ursache:** Er hat als Gruppenmitglied von "examusers" keine sudo-rechte zum Mounten seines home-shares |
* **Lösung:** Eine Datei ''/etc/sudoers.d/90-linuxclient-exam'' anlegen mit Inhalt: <code> %examusers </code> | * **Lösung:** Eine Datei ''/etc/sudoers.d/90-linuxclient-exam'' anlegen mit Inhalt: <code> %examusers ALL=(root) NOPASSWD: /usr/share/linuxmuster-linuxclient7/scripts/sudoTools </code> |
| Problem soll im nächten Update behoben werden (Okt'2021) |
| =====2. Konsolen-Login auf tty2 ===== |
| * **Problem:** Beim login auf einem tty2-Terminal (nach Strg-Alt-F2) erscheint nach Eingabe des Benutzernamens keine Passwortabfrage, man befindet sich in einer Schleife. |
| * **Ursache:** Die Datei ''/etc/pam.d/login'' hat Fehler: @include common-pammount , aber die Datei existiert nicht. |
| * **Lösung:** Die Datei ''/etc/pam.d/common-pammount'' mit leerem Inhalt anlegen: ''"# touch /etc/pam.d/common-pammount"'' |
| |
| =====3. Anmelden friert ein bei Verwendung des Server-CUPS am Linux-Client ===== |
| |
| * **Problem:** Beim Login friert das Anmelden vor dem Erscheinen des Desktop ein |
| * **Ursache:** Für den User wird bei CUPS ein Drucker, den er über die Schulkonsole aktiviert hat, per lpadmin-Befehl eingerichtet. Als CUPS wird aber statt des lokalen CUPS der Server-CUPS verwendet, der eine Passwort-Eingabe erfordert. |
| * **1. Lösung:** Alle Drucker in der Schulkonsole/AD und der Workstations nicht als "Drucker", sondern als "IP-only" eintragen. |
| * **2. Workaround:** Das Login-Script für das Einbinden der Drucker mit einem Timeout versehen. **Wird bei einem Updaste ggf. aber wieder überschrieben. |
| ** |
| Datei am Client: ''/usr/lib/python3/dist-packages/linuxmusterLinuxclient7/printers.py'' editieren (mit zusätzlichen logging.debug-Meldungen) und für den lpadmin-Befehl einen Timeout von z.B. 5 Sekunden vorsehen: |
| <code> |
| import datetime |
| ... |
| |
| def _installPrinter(username, networkPath, name): |
| logging.debug("_installPrinter Printer {0} on {1}".format(name, networkPath)) |
| installCommand = ["timeout", "5", "lpadmin", "-p", name, "-E", "-v", networkPath, "-m", "everywhere", "-u", f"allow:{username}"] |
| logging.debug("* running '{}'".format(" ".join(installCommand))) |
| p = subprocess.Popen(installCommand, stdout=subprocess.PIPE, stderr=subprocess.PIPE) |
| output, error = p.communicate() |
| now = datetime.datetime.now() |
| logging.debug(f"* subprocess.Popen finished ({now})") |
| logging.debug(f"* stdout: {output}") |
| logging.debug(f"* stderr: {error}") |
| if p.returncode == 0: |
| logging.debug("* Success _installPrinter!") |
| return True |
| elif p.returncode == 124: |
| logging.debug("* Error Timeout lpadmin-Befehl") |
| else: |
| logging.debug(f"* Error installing printer {name} on {networkPath}!\n") |
| return False |
| |
| ... |
| </code> |
| oder nur die eine maßgebliche Zeile editieren: |
| installCommand = ["timeout", "5", "lpadmin", "-p", name, "-E", "-v", networkPath, "-m", "everywhere", "-u", f"allow:{username}"] |