EDV:LTSP/stretch client: Difference between revisions

From KIP Wiki
⧼kip-jumptonavigation⧽⧼kip-jumptosearch⧽
(Created page with "=Debian Stretch as LTSP-Client= Als Test und Vorbereitung für spätere upgrades habe ich eine LTSP-Client-Umgebung auf stretch umgestellt. Dazu als root auf einem LTSP-Serv...")
 
 
Line 25: Line 25:
stretch benutzt systemd, d.h. die bisherige Methode, usb-mounts durch udev machen zu lassen, funktioniert nicht mehr.
stretch benutzt systemd, d.h. die bisherige Methode, usb-mounts durch udev machen zu lassen, funktioniert nicht mehr.
Ob das hier die richtige Methode ist, weiss ich nicht, aber zumindest funktioniert es.
Ob das hier die richtige Methode ist, weiss ich nicht, aber zumindest funktioniert es.

Bisher wurde von udev /lib/udev/ltspfs_entry aufgerufen, wenn ein Gerät eingesteckt oder entfernt wurde.
Mit systemd wird der mount zwar auch ausgeführt, aber gleich anschlissend wieder rückgängig gemacht.
D.h. man muss einen 'service' definieren und starten, wenn der mount dauerhaft sein soll.
Also definiert man den Servive so, dass wieder /lib/udev/ltspfs_entry aufgerufen wird und
passt die udev-Konfiguration an.





Latest revision as of 06:53, 12 September 2017

Debian Stretch as LTSP-Client

Als Test und Vorbereitung für spätere upgrades habe ich eine LTSP-Client-Umgebung auf stretch umgestellt.

Dazu als root auf einem LTSP-Server:

cd /opt/ltsp/
cp -avu i386 stretch

Die Datei /opt/ltsp/stretch/etc/apt/sources.list anpassen:

deb http://ftp.de.debian.org/debian/ stretch main non-free contrib
deb http://security.debian.org/ stretch/updates main non-free contrib

Dann

ltsp-chroot -a stretch
apt-get update
apt-get dist-upgrade
exit

und

ltsp-update-kernels

Ein Client muss jetzt den richtigen Kernel laden und /opt/ltsp/stretch als NFS-root mounten. D.h. DHCP anpassen!


USB-mounts

stretch benutzt systemd, d.h. die bisherige Methode, usb-mounts durch udev machen zu lassen, funktioniert nicht mehr. Ob das hier die richtige Methode ist, weiss ich nicht, aber zumindest funktioniert es.

Bisher wurde von udev /lib/udev/ltspfs_entry aufgerufen, wenn ein Gerät eingesteckt oder entfernt wurde. Mit systemd wird der mount zwar auch ausgeführt, aber gleich anschlissend wieder rückgängig gemacht. D.h. man muss einen 'service' definieren und starten, wenn der mount dauerhaft sein soll. Also definiert man den Servive so, dass wieder /lib/udev/ltspfs_entry aufgerufen wird und passt die udev-Konfiguration an.


/opt/ltsp/stretch/etc/systemd/system/ltspfsd.service

[Unit]
Description=LTSP Filesystem Daemon

[Service]
Type=forking
ExecStart=/usr/bin/ltspfsd

/opt/ltsp/stretch/etc/systemd/system/usbmount@.service

[Unit]
Description=Mount USB Drive on %i
[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/lib/udev/ltspfs_entry add %i
ExecStop=/lib/udev/ltspfs_entry remove %i

/opt/ltsp/stretch/usr/share/ltspfs/udev/ltspfsd.rules

# udev rules for ltspfs, usually installed into:
# /etc/udev/rules.d/ or /lib/udev/rules.d (for newer versions of udev)

# other drives:
ACTION=="add", SUBSYSTEM=="block", ENV{ID_TYPE}!="floppy", RUN+="/bin/systemctl start usbmount@%k.service"

# device removals:
ACTION=="remove", SUBSYSTEM=="block", RUN+="/bin/systemctl stop usbmount@%k.service"

# CD change events:
# ensure polling events happen for CD and DVD devices, may be needed if distro
# doesn't already support polling or change events.
ACTION=="add", ENV{ID_TYPE}=="cd", ATTR{removable}=="1", ATTR{events_poll_msecs}=="-1", ATTR{events_poll_msecs}="2000"
ACTION=="change", SUBSYSTEM=="block", ENV{ID_TYPE}=="cd", ENV{ID_CDROM_MEDIA}=="1", RUN+="/bin/systemctl start %k iso9660,udf"
ACTION=="change", SUBSYSTEM=="block", ENV{ID_TYPE}=="cd", ENV{ID_CDROM_MEDIA}!="1", RUN+="/bin/systemctl stop %k "