Problem nach Update opsi-boot-image
Re: Problem nach Update opsi-boot-image
Dein problem aktuell ist das die funktion getDHCPResult(device) fehlschlägt.
Diese Funktion benutzt ebenfalls nur die dhclient.leases und parst Sie nach den entsprechenden Parametern.
Zudem führt der Block master.py:684-703 bei Dir zu keiner Änderung.
Hier wird nur geschaut ob eine Netzwerkkarte einen Link zu einem Opsi DHCP hat, wenn ja werden im weiteren verlauf nur diese Netzwerkkarten benutzt. Ansonsten werden alle Netzwerkkarten verwendet.
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de
Re: Problem nach Update opsi-boot-image
Beim PXE-Boot des Clients zeigten sich dann unter /var/lib/dhcp zwei Files:
- dhclient.eth0.leases
- dhclient.leases
Nachdem die dhclient.eth0.leases kurzerhand ueber die dhclient.leases kopiert und master.py neu gestartet wurde, geht es zunaechst weiter.
Es folgte nun jedoch ein weiterer Fehler:
Code: Alles auswählen
Command '/sbin/modprobe efivars' failed (1):
modprobe: ERROR: could not insert 'efivars': No such device
Re: Problem nach Update opsi-boot-image
Wenn j, was für Dateien liegen in /sys/firmware/efi ?
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de
Re: Problem nach Update opsi-boot-image
Ich habe fuer den Test die master.py nochmal ganz quick'n'dirty erweitert.
Diff:
Code: Alles auswählen
696,711d695
<
< for device in ethernetDevices:
< if os.path.isfile('/var/lib/dhcp/dhclient.'+device+'.leases'):
< with open('/var/lib/dhcp/dhclient.'+device+'.leases') as f:
< for line in f:
< line = line.strip()
< if line.startswith('interface'):
< unused,interface = line.split(None, 1)
< interface = interface[:-1]
< elif line.startswith('option dhcp-server-identifier'):
< unused,unused,address = line.split(None, 2)
< address = address[:-1]
< if interface and address:
< interfaceAddress[interface.replace('"', '')] = address
< interface = address = None
<
715,716c699
< # response = requests.get('https://%s:4447' % address, verify = False)
< response = requests.get(re.sub('/rpc$','',nextserver), verify = False)
---
> response = requests.get('https://%s:4447' % address, verify = False)
Die dhclient.eth0.leases existierte diesmal nicht und die dhclient.leases hatte (diesmal) den erwarteten Inhalt.
Der EFI-Fehler besteht allerdings noch.
Re: Problem nach Update opsi-boot-image
an welcher Stelle tritt dieser Fehler denn auf?
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de
Re: Problem nach Update opsi-boot-image
Ich hatte aus einem - inzwischen offenbar veralteten - win7-Paket von uib ein eigenens win7-x64-mpimsp-image abgeleitet und erweitert.
Am Anfang der setup.py gibt es noch den Code:
Code: Alles auswählen
# use 'os.system' to do not break on exitcode != 0
useGptOnUefi = False
logger.notice(u"try to load efivars module: modprobe efivars")
execute('/sbin/modprobe efivars')
logger.notice(u"check if we run in uefi mode")
# use 'os.system' to do not break on exitcode != 0
efiexitcode = os.system("efibootmgr >> /dev/null 2>&1")
if (0 == int(efiexitcode)):
useGptOnUefi = True
logger.notice(u"we are running in uefi mode")
scriptMessageSubject.setMessage(u"we are running in uefi mode")
else:
logger.notice(u"we are not running in uefi mode")
Code: Alles auswählen
inUefi = inUefiMode()
Das Log-File sieht das so:
Code: Alles auswählen
[6] [Okt 29 13:39:07] Copying from 'win7-x64-mpimsp-image/setup.py' to '/tmp/setup.py' (Repository.py|503)
[7] [Okt 29 13:39:07] Length of binary data to download: 33454 bytes (Repository.py|721)
[7] [Okt 29 13:39:07] Transfer in from <open file u'/mnt/opsi/install/win7-x64-mpimsp-image/setup.py', mode 'rb' at 0xb62d4230> to <open file u'/tmp/setup
.py', mode 'wb' at 0xb62d4650>, dynamic bandwidth False, max bandwidth 0 (Repository.py|355)
[7] [Okt 29 13:39:07] Filesize is: 33454 (Repository.py|366)
[6] [Okt 29 13:39:07] Transfered 32.67 kByte in 0.00 minutes, average speed was 4642.01 kByte/s (Repository.py|406)
[6] [Okt 29 13:39:07] Copy done (Repository.py|587)
[7] [Okt 29 13:39:07] MessageSubject 'script' created (Message.py|103)
[7] [Okt 29 13:39:07] Executing jsonrpc method 'productOnClient_updateObjects' on host 10.26.1.5 (JSONRPC.py|115)
[7] [Okt 29 13:39:07] Starting new HTTPS connection (0) to 10.26.1.5:4447 (HTTP.py|604)
[7] [Okt 29 13:39:07] Connection established to: 10.26.1.5 (HTTP.py|617)
[7] [Okt 29 13:39:07] Failed to get peer cert: 'NoneType' object has no attribute 'getpeercert' (HTTP.py|188)
[7] [Okt 29 13:39:07] Closing connection: <httplib.HTTPSConnection instance at 0xb62e244c> (HTTP.py|531)
[7] [Okt 29 13:39:07] Content-Type: gzip-application/json;charset=utf-8, Content-Encoding: gzip (JSONRPC.py|719)
[7] [Okt 29 13:39:07] Expecting deflated data from server (backwards compatible) (JSONRPC.py|727)
[5] [Okt 29 13:39:07] try to load efivars module: modprobe efivars (setup.py|14)
[6] [Okt 29 13:39:07] Executing: /sbin/modprobe efivars (Posix.py|759)
[6] [Okt 29 13:39:07] Using encoding 'UTF-8' (Posix.py|792)
[7] [Okt 29 13:39:07] >>> modprobe: ERROR: could not insert 'efivars': No such device (Posix.py|836)
[7] [Okt 29 13:39:07] Exit code: 1 (Posix.py|843)
[2] [Okt 29 13:39:08] Traceback: (Logger.py|758)
[2] [Okt 29 13:39:08] line 1524 in '<module>' in file '/usr/local/bin/master.py' (Logger.py|758)
[2] [Okt 29 13:39:08] line 15 in '<module>' in file '/tmp/setup.py' (Logger.py|758)
[2] [Okt 29 13:39:08] line 850 in 'execute' in file '/usr/lib/python2.7/dist-packages/OPSI/System/Posix.py' (Logger.py|758)
[2] [Okt 29 13:39:08] ==>>> Command '/sbin/modprobe efivars' failed (1):
modprobe: ERROR: could not insert 'efivars': No such device (master.py|1572)
[7] [Okt 29 13:39:08] Backend: <JSONRPCBackend(address=None, host=u'10.26.1.5', deflate=False)> (master.py|1575)
[7] [Okt 29 13:39:08] ProductId: win7-x64-mpimsp-image (master.py|1576)
[7] [Okt 29 13:39:08] ClientId: celle.mpi-halle.mpg.de (master.py|1577)
[7] [Okt 29 13:39:08] ProductOnClient: <ProductOnClient(clientId=u'celle.mpi-halle.mpg.de', productId=u'win7-x64-mpimsp-image', installationStatus=u'unknown', actionRequest=u'none')> (master.py|1578)
[6] [Okt 29 13:39:08] Updating productOnClient: {'actionProgress': u'', 'actionResult': u'failed', 'clientId': u'celle.mpi-halle.mpg.de', 'modificationTime': None, 'actionRequest': u'none', 'targetConfiguration': None, 'productVersion': None, 'productType': u'NetbootProduct', 'type': u'ProductOnClient', 'lastAction': None, 'packageVersion': None, 'actionSequence': None, 'installationStatus': u'unknown', 'productId': u'win7-x64-mpimsp-image'} (master.py|1589)
[7] [Okt 29 13:39:08] Executing jsonrpc method 'productOnClient_updateObjects' on host 10.26.1.5 (JSONRPC.py|115)
[7] [Okt 29 13:39:08] Starting new HTTPS connection (0) to 10.26.1.5:4447 (HTTP.py|604)
[7] [Okt 29 13:39:08] Connection established to: 10.26.1.5 (HTTP.py|617)
[7] [Okt 29 13:39:08] Failed to get peer cert: 'NoneType' object has no attribute 'getpeercert' (HTTP.py|188)
[7] [Okt 29 13:39:09] Closing connection: <httplib.HTTPSConnection instance at 0xb62e26ec> (HTTP.py|531)
[7] [Okt 29 13:39:09] Content-Type: gzip-application/json;charset=utf-8, Content-Encoding: gzip (JSONRPC.py|719)
[7] [Okt 29 13:39:09] Expecting deflated data from server (backwards compatible) (JSONRPC.py|727)
[5] [Okt 29 13:39:09] Writing log to service (master.py|1599)
Re: Problem nach Update opsi-boot-image
Der bekannte Fehler mit der Netzwerkkonfiguration tritt wieder auf.
Blick in /var/lib/dhcp:
- dhclient.eth0.leases
- dhclient.leases
Der Code in der master.py, der dhclient.eth0.leases parsen soll, wird wohl erreicht, bevor das File existiert.
Re: Problem nach Update opsi-boot-image
Gebe bescheid sobald es was neues und greifbares gibt
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de
Re: Problem nach Update opsi-boot-image
Re: Problem nach Update opsi-boot-image
Damit erhoeht sich die Zeit von 30 auf 60 Sekunden, bzw. mit dem ifdown/ifup auf 120 Sekunden.
Das Problem loest das aber auch noch nicht.