Größe: 9043
Kommentar:
|
Größe: 9041
Kommentar:
|
Gelöschter Text ist auf diese Art markiert. | Hinzugefügter Text ist auf diese Art markiert. |
Zeile 194: | Zeile 194: |
==== DLW Chroot bereitstellen ==== | === DLW Chroot bereitstellen === |
Diskless Workstation Server (bullseye)
Inhaltsverzeichnis
Installation
Das Debian Edu Minimalsystem disklserver.intern installieren wir über die PXE-Installationsumgebung von Debian Edu / Skolelinux. Die Vorbereitung der VM Instanz werden hier für libVirt bzw. Ganeti beschrieben.
Die VM fährt hoch und bootet über PXE ins iPXE Bootmenü. Hier bitte den 64bit Installer auswählen.
Es startet der Debian (Edu) Installer im grafischen Modus:
- Installationsprofil: Minimal
- Automatische Partitionierung: ja
- Paketerfassung verwenden: Ja
- Kennwort für root festlegen
Wichtig: Nach der Installation von disklserver.intern, aber vor dem ersten Start muss der Server im Debian Edu / Skolelinux Netzwerk bekannt gemacht werden:
- GOsa² auf TJENER:
System (Typ: Server) anlegen für disklserver.intern
Beschreibung: Diskless Workstations Image Server
IP: 10.0.2.9
- ermittelte MAC-Adresse eintragen (vergl. Info-Seite bzgl. VM-Instanz Setup, s.o.)
- DHCP (10.0.0.0-Netz)
- DNS aktivieren
NIS Netgroups Eintrag in Gruppe: server-hosts (hierfür muss der Systemeintrag in GOsa² erstmal angelegt worden sein, danach nochmal die NIS Netgroup nachbearbeiten)
- GOsa² auf TJENER:
Konfiguration
Nach dem Neustart der VM disklserver.intern sollte der Hostname des gestarteten Systems auf disklserver.intern gesetzt sein. Wird stattdessen ein Hostname angezeigt, der die MAC-Adresse der primären NIC des Systems enthält, hat die Eintragung des Systems in GOsa² nicht funktioniert. Bevor man weiter fortfahren kann, muss dieser Fehler behoben werden.
Zum aktuellen Zeitpunkt (Debian Edu 11.2 Release) kommt es bei der Installation eines Minimal-Profils zu einem Fehler. Es fehlt das DEB-Paket libpam-krb5. Dies muss nachinstalliert werden (vergl. Debian bug #1002299):
apt-get install libpam-krb5
Um als Admin-User (bzw. allgemein als LDAP-User) bei Anmeldung System eine Verbindung zum $HOME-Verzeichnis auf tjener.intern zu erhalten, muss eine /etc/krb5.keytab Datei auf disklserver.intern kopiert werden (welche die Principals für host/disklserver.intern und nfs/disklserver.intern enthält. Dies erfolgt über folgenden Befehlsaufruf:
root@disklserver:~# /usr/share/debian-edu-config/tools/copy-host-keytab Passwort für root@INTERN: disklserver.intern.keytab 100% 324 9.0KB/s 00:00 root@disklserver:~#
Danach sollte es möglich sein, sich mit einem LDAP-Benutzerkonto an disklserver.intern via Login TTY od. SSH einzuloggen.
Fine-Tuning der VM-Einstellungen
Nach der Installation und dem ersten Start führen wir die folgenden Änderungen an der VM-Konfiguration von disklserver.intern durch. Hierfür muss die VM herunter gefahren werden und die VM-Konfiguration angepasst werden:
zweite Festplatte hinzufügen (Name für libVirt: disklserver.intern_sdb)
- VM wieder anschalten und in der VM weiterarbeiten
Paket-Quellen für ITZkS aktivieren
Für den Diskless-Workstation-Server gibt es ein eigenes Overlay-Paket, welches aus dem IT-Zukunft Schule Projekt-APT-Repository installiert wird:
root@disklserver:~# editor /etc/apt/sources.list.d/itzks.list """ deb http://packages.it-zukunft-schule.de/debian bullseye main contrib non-free """ root@disklserver:~# apt-get --allow-insecure-repositories update && apt-get install itzks-keyring && apt-get update root@disklserver:~# apt-get install itzks-systems-common
Bei der Installation von itzks-systems-common wird das Kürzel der Schule / des Schulkundens abgefragt. Diese Kürzel sind im Paket hinterlegt. Es besteht die Möglichkeit, ein Kürzel für die eigene Schule zu beantragen. Bitte dafür Kontakt mit Mike Gabriel vom IT-Zukunft Schule Projekt aufnehmen.
Nach der Installation von itzks-systems-common dann folgenden Befehl aufrufen:
root@disklserver:~# itzks-systems.do_preseed Preseeding ocsinventory-agent/tag to <SCHOOL> Preseeding ocsinventory-agent/method to http Preseeding ocsinventory-agent/server to inventory.it-zukunft-schule.de Silently running dpkg-reconfigure on package ocsinventory-agent ... DONE.
Software nachinstallieren
Die weitere Software wird über die Installation des Meta- und Config-Pakets itzks-systems-disklserver installiert:
root@disklserver:~# sudo apt-get install itzks-systems-disklserver
System konfigurieren
Login als root
Standard-Editor festlegen (an der Unix-Console)
$ update-alternatives --config editor
Hier vim.basic auswählen.
Das Programm Midnight Commander starten (Kommando: mc):
- F9 drücken
Optionen -> Konfiguration: [x] Internen Editor benutzen
Optionen -> Einstellungen speichern
- F10: Midnight Commander beenden
Den Midnight Commander Editor (Kommando: mcedit) starten:
- F9 drücken
Menüpunkt: Optionen -> Allgemein
- "Backspace durch Tabs" auswählen
- "Tabs mit Leerzeichen auffüllen" auswählen
- "Return rückt automatisch ein" abwählen
- mit "OK" bestätigen
- F10: Editor beenden
Boot-Verzögerung bei Stromausfall
Debian Edu Systeme setzen beim Systemstart einen erreichbaren Hauptserver voraus. Für Debian Edu Server-VMs ergibt sich die Anforderung einer Boot-Verzögerung, die z.B. bei Stromausfall dafür sorgt, dass der Haupt-Server nach Neustart aller Systeme verfügbar ist.
Anstelle aufwendiger VM-Host Skripte wird eine Startverzögerung durch ein hohes Timeout im Bootloader GRUB erwirkt.
<user>@disklserver:/# diff -u /etc/default/grub.orig /etc/default/grub --- /etc/default/grub.orig 2012-08-31 16:06:51.000000000 +0200 +++ /etc/default/grub 2012-08-31 16:06:59.000000000 +0200 @@ -2,7 +2,7 @@ # /boot/grub/grub.cfg. GRUB_DEFAULT=0 -GRUB_TIMEOUT=5 +GRUB_TIMEOUT=600 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet" GRUB_CMDLINE_LINUX=""
Danach muss die Konfigurationsänderung übernommen werden:
$ sudo update-grub
Nur Admin-User und Junior-Admins dürfen sich auf DISKLSERVER einloggen
Schul-Admins und IT-Dienstleister:innen tragen wir in der LDAP-Gruppe admins ein. Junior-Admins (z.B. Schüler:innen einer Computer-AG) tragen wir in der Gruppe jradmins ein.
Wichtig: Der Diskless Workstation Server darf ein Login nur für Dienstleister, Schul-Admins und Junior-Admins erlauben. Hierfür müssen die Dateien /etc/security/access.conf und /etc/pam.d/sshd angepasst werden:
--- /etc/security/access.conf.orig +++ /etc/security/access.conf @@ -120,3 +120,6 @@ # # All other users should be denied to get access from all sources. #- : ALL : ALL + ++ : admins jradmins root : ALL +- : ALL : ALL
--- /etc/pam.d/sshd.orig 2012-07-30 17:51:12.000000000 +0200 +++ /etc/pam.d/sshd 2012-07-30 17:51:26.000000000 +0200 @@ -15,7 +15,7 @@ # Uncomment and edit /etc/security/access.conf if you need to set complex # access limits that are hard to express in sshd_config. -# account required pam_access.so +account required pam_access.so # Standard Un*x authorization. @include common-account
Einrichtung des Diskless Workstation Chroot
Speicherplatz für DLW Chroot bereit stellen
Zunächst muss der für das Diskless Workstation Chroot Image vorgesehene Festplattenplatz vorbereitet werden:
$ sudo lvcreate vg_system -n srv -L 60G $ sudo mkfs.ext4 /dev/vg_system/srv Jetzt noch einen Eintrag in {{{/etc/fstab
anlegen:
--- /etc/fstab.orig 2012-07-31 13:31:19.000000000 +0200 +++ /etc/fstab 2012-07-31 13:34:46.000000000 +0200 @@ -10,6 +10,7 @@ /dev/mapper/vg_system-root / ext4 errors=remount-ro 0 1 # /boot was on /dev/vda1 during installation UUID=<blkid-/boot> /boot ext4 defaults 0 2 +/dev/mapper/vg_system-srv /srv ext4 defaults 0 2 /dev/mapper/vg_system-usr /usr ext4 defaults 0 2 /dev/mapper/vg_system-var /var ext4 defaults 0 2 /dev/mapper/vg_system-swap_1 none swap sw 0 0
und zuletzt das Dateisystem mounten (unter der Voraussetzung, dass /srv keine Daten enthält):
$ sudo mount /srv
DLW Chroot bereitstellen
Das DLW Chroot wird zentral gepflegt und per Skript auf die DLW Server in den versch. Schulen übertragen.
FIXME: Die Bereitstellung der Diskless Workstations bei einem Neu-Rollout einer Schule muss noch im Detail dokumentiert werden.