Welcome, Guest. Please login or register.
Did you miss your activation email?

Author Topic: [DE] PXE Installation: Client error: Negotiation: ..Error: Read failed: End of file  (Read 4107 times)

c.monty

  • Guest
Hallo!


Ich möchte Siduction über Netzwerk installieren und habe habe diesen Wiki-Artikel gefunden.


Allerdings funktioniert das ganze nicht mit NBD server version 3.14.


Versuche ich eine Verbindung mit NBD-Client herzustellen, dann erhalte ich diese Fehlermeldung:
 nbd-client 192.168.1.10 /dev/nbd0
 Warning: the oldstyle protocol is no longer supported.
 This method now uses the newstyle protocol with a default export
 Negotiation: ..Error: Read failed: End of file
 Exiting.
 
 Im Server syslog finde ich diese Einträge:
 Aug 21 14:23:42 <server-name> nbd_server[10150]: Spawned a child process
 Aug 21 14:23:42 <server-name> nbd_server[10436]: Negotiation failed/8a: Requested export not found
 Aug 21 14:23:42 <server-name> nbd_server[10436]: Exiting.
 Aug 21 14:23:42 <server-name> nbd_server[10150]: Child exited with 1
 Aug 21 14:23:42 <server-name> nbd_client[10435]: Read failed: End of file
 Aug 21 14:23:42 <server-name> nbd_client[10435]: Exiting.
 
Was ist die Ursache für diesen Fehler?
 
 Dies ist meine aktuelle NBD server Konfiguration:
 cat /etc/nbd-server/config
 [generic]
 # If you want to run everything as root rather than the nbd user, you
 # may either say "root" in the two following lines, or remove them
 # altogether. Do not remove the [generic] section, however.
         user = nbd
         group = nbd
         includedir = /etc/nbd-server/conf.d
 
 # What follows are export definitions. You may create as much of them as
 # you want, but the section header has to be unique.
         allowlist = true
 
 cat /etc/nbd-server/conf.d/siduction.conf
 [siduction-15.1.0]
     exportname = /var/lib/vz/template/iso/siduction-15.1.0-paintitblack-gnome-amd64-201601162124.iso
     readonly = true
     authfile = /etc/nbd-server/allow


cat /etc/nbd-server/allow
192.168.1.0/24

In der PXE-Konfiguration habe ich dies eingetragen:
LABEL 2
         MENU LABEL Siduction 15.1.0 (Paintitblack) (64-bit)
         KERNEL images/siduction/15.1.0/boot/vmlinuz0.amd
         APPEND initrd=images/siduction/15.1.0/boot/initrd0.amd fromhd=/dev/nbd0 root=/dev/nbd0 nbdroot=192.168.1.14,32770,siduction-15.1.0 boot=fll toram noeject nointro lang=de
         TEXT HELP
         Siduction 15.1.0 (64-bit) ISO starten und in RAM kopieren
         ENDTEXT


Und im Verzeichnis /var/lib/vz/template/iso/ befinden sich diese Dateien:
ls -l /var/lib/vz/template/iso/
 insgesamt 7970152
 -rw-r--r-- 1 nbd root   16719872 Aug 20 22:15 dban-2.3.0_i586.iso
 -rw-r--r-- 1 nbd root  998627328 Jul  1 17:59 faicd64-large_5.1.2.iso
 -rw-r--r-- 1 nbd root 1060241408 Jan 20  2016 kali-linux-light-2016.1-amd64.iso
 -rw-r--r-- 1 nbd root         75 Aug 18 19:34 kali-linux-light-2016.1-amd64.iso.sha1sum
 -rw-r--r-- 1 nbd root  114294784 Aug 18 20:23 openSUSE-Tumbleweed-NET-x86_64-Current.iso
 -rw-r--r-- 1 nbd nbd  1644167168 Jan 16  2016 siduction-15.1.0-paintitblack-gnome-amd64-201601162124.iso
 -rw-r--r-- 1 nbd root         93 Jan 16  2016 siduction-15.1.0-paintitblack-gnome-amd64-201601162124.iso.md5
 -rw-r--r-- 1 nbd root   56967168 Jun 16 17:34 virtio-win.0.1.118.iso
 -rw-r--r-- 1 nbd root  160755712 Apr 27  2015 virtio-win.stable.iso



 THX

c.monty

  • Guest
Update:
Nachdem der Paramter
authfile = /etc/nbd-server/allow
aus der Konfiguration
/etc/nbd-server/conf.d/siduction.conf
gelöscht wurde funktioniert die Verbindung mit dem NBD-Client.


Was ist das Problem mit /etc/nbd-server/allow?

Offline musca

  • User
  • Posts: 725
  • sid, fly high!
Hallo c.monty,

nbd-client 1:3.14 hat eine neue Konfiguration eingeführt. Es verwendet nun /etc/nbdtab.
Eine bestehende /etc/nbd-client wird beim Upgrade konvertiert.

siduction hatte vorher folgenden Hack verwendet, um /etc/nbd-client zu modifizieren:
        # Quite hacky, but /etc/nbd-client default conf
        # leaves a broken partial /dev/nbd0 config
          # commented 2016-07-03, /etc/nbd-client --> /etc/nbdtab
        # sed -i 's#/dev/nbd0##' /etc/nbd-client

(der Sed-Befehl wurde also auskommentiert, weil keine /etc/nbd-client mehr existiert.)

Insgesamt braucht nbd-client etwas Zuwendung von engagierten Fans.
Wenn wir Feedback zur Konfiguration bekommen, werden wir es gern aufnehmen.

Grüße
musca
„Es irrt der Mensch, solang er strebt.“  (Goethe, Faust)

c.monty

  • Guest
Hallo!

Vielen Dank für diese Info.

Allerdings verstehe ich nicht den Zusammenhang mit dem Finding / Workaround, dass nach Löschung des Parameters
authfile = /etc/nbd-server/allow
der NBD-Client keine Verbindungsfehler meldet.

Hinzu kommt, dass ich den NBD-Server primär für PXE-Netzwerk-Boot nutze, und da sehe ich keinen Zusammenhang mit der NBD-Client Version.
Ich denke, es ist eher eine Zusammenhang mit der Authentifizierungs-Funktion des NBD-Servers zu suchen.

Update:
Das Problem kann mit diesem Workaround behoben werden.
Anhängen einer IPv6-Adresse in /etc/nbd-server/allow.
Dies ist auch hier (https://github.com/yoe/nbd/issues/35) dokumentiert.

THX
« Last Edit: 2016/08/22, 11:31:58 by c.monty »