Devices.csv -> import von DHCP-Optionen + OPSI-Option fehlerhaft(?)

Hallo Zusammen,

wir haben jüngst eine Linuxmuster beim Kunden geupdatet (7.0 → 7.1), welcher OPSI im Einsatz hat. In diesem Zusammenhang sind mir diese beiden Probleme aufgefallen.

a)
Für mein Verständnis müsste, wenn man hier OPSI-PXE setzt:


in Datei /etc/dhcp/devices/default-school.conf der Eintrag „next server “ hinzugefügt werden.
Das passiert aber nicht:
grafik
Und damit startet der client von Linbo, statt von OPSI.

hab mir hier kurz mit einen dirty sed-hook-skript abhilfe geschaffen:

cat /var/lib/linuxmuster/hooks/device-import.post.d/changedhcpfile.bash 
#!/bin/bash
echo "jawohll, hook wird ausgeführt!"

echo "passe /etc/dhcp/devices/default-school.conf für OPSI an:"

sed -i 's/option\ extensions-path\ "opsi-hp-clients";/option\ extensions-path\ "opsi-hp-clients";\n\ \ next-server\ 10.0.0.2;'/g  /etc/dhcp/devices/default-school.conf

…damit starten die Clients wieder von OPSI.

  1. Am Standort ist das Opsi-Secureboot-UEFI-Modul im Einsatz, dass wir lizenzsiert haben. Damit das funktioniert muss diese DHCP-Option mitgegeben werden:

filename „linux/pxelinux.cfg/shimx64.efi.signed“

Hier gibt es ja auch das Feld „dhcp-options“ in der .csv:

Gebe ich hier meine Parameter an, so startet der DHCP-Server nicht mehr:

'NoneType' object has no attribute 'replace'
####   opsi-a3510      | not yet configured!  | not yet configured!       ####
/var/lib/linuxmuster/hooks/device-import.post.d
------------------------------------------------------------------------------
#### Executing post hooks:                                                ####
#### * changedhcpfile.bash jawohll, hook wird ausgeführt!
passe /etc/dhcp/devices/default-school.conf für OPSI an:
------------------------------------------------------------------------------
#### Restarting services:                                                 ####
#### * isc-dhcp-server Traceback (most recent call last):
  File "/usr/sbin/linuxmuster-import-devices", line 395, in <module>
    'systemctl is-active --quiet ' + service, shell=True)
  File "/usr/lib/python3.6/subprocess.py", line 311, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'systemctl is-active --quiet isc-dhcp-server' returned non-zero exit sta
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: exiting.
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: 
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: process and the information we find helpful for debugging..
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: before submitting a bug.  These pages explain the proper
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: bugs on either our web page at www.isc.org or in the README file
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: than a configuration issue please read the section on submitting
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: If you think you have received this message due to a bug rather
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: 
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: Configuration file errors encountered -- exiting
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]:           ^
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]:  include "/etc/dhcp/devices.conf"
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: /etc/dhcp/dhcpd.conf line 68: /etc/dhcp/devices.conf: bad parse.
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]:          ^
Nov 05 08:49:13 server.bz-bss.lan dhcpd[10869]: include "/etc/dhcp/devices/default-school.conf"

Verfolgt man die Fehlermeldung, findet man heraus, dass das Import-Skript die Zeile falsch anlegt:

(hier sind uz viele anführungszeichen, das kann der dhcpd nicht interpretieren).

So wäre es richtig:
grafik

auch hier der passende dirty-hook:

sed -i 's/"filename\ ""linux\/pxelinux.cfg\/shimx64.efi.signed""";/filename\ "linux\/pxelinux.cfg\/shimx64.efi.signed";'/g  /etc/dhcp/devices/default-school.conf

Ich glaub OPSI wird ja nicht so häufig verwendet, ich würde mich aber trotzdem (auch für die Schule) freuen, wenn man Ihn weiterverwenden kann.

Grüßle

Hallo Timo,

wir haben jüngst eine Linuxmuster beim Kunden geupdatet (7.0 → 7.1),
welcher OPSI im Einsatz hat. In diesem Zusammenhang sind mir diese
beiden Probleme aufgefallen.

… soweit ich weiß wurde die OPSI Funktionalität aus linbo 4.x entfernt,
da es so gut wie niemand einsetzt.

Ich hab jetzt auf die schnelle aber leider nicht die Stelle gefunden, wo
das kommuniziert wurde.
Ich suche weiter…

LG

Holger

Hi Holger,

danke für die schnelle Antwort.
Wir nutzen hier aber an einigen Geräten OPSI statt linbo. Meinst du diese linbo+opsi-funtkionalität?

Den Teil mit den DHCP-Optionen kann man aber vielleicht auch für andere Sachen nutzen :-)?

Timo

Hallo zusammen,

den Hinweis, dass die OPSI Unterstützung nicht mehr im Setup (Console & WebUI) enthalten ist, findet sich hier:

@Tw33ki: Dein Hook-Script und die DHCP-Anpassungen müssten dann ausgeführt werden, um die Unterstützung weiterhin umzusetzen.

VG
Chris

1 „Gefällt mir“