Wie anderen NFS-Root-Pfad setzen???

Diskussionen um Bootloader, Kernel, Busybox
exim
Interessierter
Interessierter
Beiträge: 59
Registriert: Montag 11. August 2003, 04:29

Wie anderen NFS-Root-Pfad setzen???

Beitrag von exim »

Linux-Server, folgendes Problem beim Booten der Yadd, Bootlog Kernel:

Code: Alles auswählen

Linux version 2.4.22-dbox2 (von alexW) Wer Kernels nachmacht, oder faelscht, wir
d bestraft ;-) #1 Son Sep 7 12:12:49 CEST 2003
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0 ip=bootp root=/dev/nfs rw nfsroot=192.168.1.1:/boot/yaddroot/

  [...]

IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 2048 bind 4096)
Sending BOOTP requests . OK
IP-Config: Got BOOTP answer from 192.168.1.1, my address is 192.168.1.101
IP-Config: Complete:
      device=eth0, addr=192.168.1.101, mask=255.255.255.0, gw=192.168.1.1,
     host=192.168.1.101, domain=xxxxx, nis-domain=(none),
     bootserver=192.168.1.1, rootserver=192.168.1.1, rootpath=/db2-1
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Looking up port of RPC 100003/2 on 192.168.1.1
Looking up port of RPC 100005/1 on 192.168.1.1
Root-NFS: Server returned error -13 while mounting /boot/yaddroot/
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or 02:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 02:00
 <0>Rebooting in 180 seconds.. 
Gedacht ist das so:
- z.Zt. zwei Boxen, dritte Box kommt noch
- tftp-Files in /boot/tftpboot/
- Root-NFS in /db2-x/ wobei x die Nummer der Box ist

So wie es aussieht ist die NFS-Pfadgeschichte fest in der ppcboot der yadd eingebaut. ppcboot gibt dem Kernel wohl "nfsroot=$(serverip):$bootpath/yaddroot/" mit auf den Weg und das ist Mist denn $bootpath wird wohl von den vorangegangenen bootp-Konfigurationen (tftp-Bootfile aus /boot/tftpboot/...) übernommen. Das ist nicht so wirklich toll denn ich benötige das NFS-Root zwingend in einem anderen Verzeichnis - hier stehen wie schon geschrieben mehrere Boxen welche über Netz mit Yadd gebootet werden. Symlinks fallen aus. Der einzige Workaround wäre, wenn man für jede Box wirklich alles einzeln anlegt, also mit der Unterscheidung der Boxen schon bei TFTP anfängt und so den Kisten via Bootp/dhcp unterschiedliche $bootpath-Werte unterschiebt. Das scheitert jedoch am tftpd denn der kann nur mit einem Bootfile-Verzeichnis arbeiten und nicht abhängig vom Client verschiedene Verzeichnisse nutzen.
Grmpf!
Gibt es denn keine Möglichkeit, der bootp/dhcp-Konfiguration bezüglich des Rootpfades Beachtung zu schenken? Der Server macht was er soll, der Linux-Kernel der Yadd fängt es auch ordentlich auf, siehe obiges Bootlog. Leider interessiert es ihn nicht wirklich da für die Zeile Kernel-Kommandozeile "console=ttyS0 ip=bootp root=/dev/nfs rw nfsroot=192.168.1.1:/boot/yaddroot/" ja wohl schon ppcboot verantwortlich ist.

Hüülfääääää.... :-?

Gruß,
exim
Peri_meter
Interessierter
Interessierter
Beiträge: 54
Registriert: Sonntag 28. Oktober 2001, 00:00

Beitrag von Peri_meter »

Root-NFS: Server returned error -13 while mounting /boot/yaddroot/
Das sieht eher danach aus, dass das Verzeichnis auf dem NFS-Server (192.168.1.1:/boot/yaddroot/) nicht freigegeben ist.
exim
Interessierter
Interessierter
Beiträge: 59
Registriert: Montag 11. August 2003, 04:29

Beitrag von exim »

Genau das ist ja das Problem: /boot/yaddroot/ gibt es nicht, der NFS-Root-Export ist /db2-1/, wie er vom bootp/dhcp-Server auch korrekt an die Box geschickt, vom Yadd-Kernel auch ordentlich empfangen ("rootpath=/db2-1/"), aber trotzdem aufgrund der wahrscheinlich vom ppcboot stammenden Kernel-Kommandozeile "... nfsroot=192.168.1.1:/boot/yaddroot/" ignoriert wird. Ich benötige zwingend eine Möglichkeit, dem Yadd-Kernel irgendwie mitzuteilen, wo er das NFS-Root-fs findet. Die normale Variante via bootp/dhcp-Server funktioniert ja nicht ...

Gruß,
exim
Homar
Senior Member
Beiträge: 1278
Registriert: Mittwoch 5. September 2001, 00:00

Beitrag von Homar »

probier doch die u-boot aus einem der yadd es auf http://remote-admin.info

Der NFS-Root ist hierbei nicht fest eingetragen und läuft auf Windoof und Linux...