(Q:) Box ueber NFS booten, (Yadd)BootFlag

Wünsche, Anträge, Fehlermeldungen
DieMade
Oberlamer, Administrator & Supernanny
Beiträge: 10532
Registriert: Samstag 13. Juli 2002, 10:49

Beitrag von DieMade »

DieMade hat geschrieben:2 NFS-Verzeichnisse vom selben PC über 2 verschiedene NFS-Server (Bootmanager und SFU) geht halt nicht.
justav
Interessierter
Interessierter
Beiträge: 26
Registriert: Montag 6. September 2004, 10:00

Beitrag von justav »

ich will ja keinen streit vom zaun brechen :)

aber ich habe hier einen rechner der zwei nfs laufwerke von
zwei verschiedenen nfs-servern gemountet hat.
wenn das nicht ginge waere ja doof.
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

justav hat geschrieben:ich will ja keinen streit vom zaun brechen :)

aber ich habe hier einen rechner der zwei nfs laufwerke von
zwei verschiedenen nfs-servern gemountet hat.
wenn das nicht ginge waere ja doof.
nochmal: mehr als ein NFS-Server auf dem _gleichen_ PC geht nicht.

cu,
peter
Treito
Semiprofi
Semiprofi
Beiträge: 1131
Registriert: Freitag 16. Januar 2004, 23:22

Beitrag von Treito »

justav hat geschrieben:ich will ja keinen streit vom zaun brechen :)

aber ich habe hier einen rechner der zwei nfs laufwerke von
zwei verschiedenen nfs-servern gemountet hat.
wenn das nicht ginge waere ja doof.
Der Rechner wäre dann ja auch ein NFS-Client
Sagem 2xIntel Kabel, Avia600vB0.28, ucode 00F0, JtG-Image vom 01.05.2004, Snap vom 22.05.2004
AMD Athlon XP 1800, 512 MB, Maxtor 120 GB und 80 GB
Win XP Home, JtG 0.7.2, udrec 0.12d
SuSE Linux 9.1 Professional, NFS-Server
justav
Interessierter
Interessierter
Beiträge: 26
Registriert: Montag 6. September 2004, 10:00

Beitrag von justav »

o.k. jetzt hab auch ich es verastanden :o

bootmanager ist das windows-proggi was den nfs port belegt.
und sfu ist der nfs von microsoft und kann natuerlich nicht
zusaetzlich gestartet werden :)

mit linux waer das nicht passiert :P
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

Treito hat geschrieben: Der Rechner wäre dann ja auch ein NFS-Client
jau, und 'Der Rechner' kann durch 'Die DBOX' ersetzt werden. Ich werde heute Abend mal versuchen die aktuelle Yadd von Homar mit dem SFU-NFS Server ans spielen zu bekommen....nochmal die Frage an die Experten: Wie kann ich das rootdir der Box bekannt machen und koennte ich auch ein beliebiges entpacktes Image so wie eine Yadd booten?
mit linux waer das nicht passiert
ja, wie booten die Linuxer denn eine Yadd? Gibts einen Bootmanager fuer Linux?

cu,
peter
justav
Interessierter
Interessierter
Beiträge: 26
Registriert: Montag 6. September 2004, 10:00

Beitrag von justav »

ja, wie booten die Linuxer denn eine Yadd? Gibts einen Bootmanager fuer Linux?
=> http://www.lug-kr.de/cgi-bin/lugwiki.pl?DBoxLinux

z.B. yadi wie yadd booten ist nicht so einfach. hab noch keine anleitung gefunden.
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

justav hat geschrieben:
ja, wie booten die Linuxer denn eine Yadd? Gibts einen Bootmanager fuer Linux?
=> http://www.lug-kr.de/cgi-bin/lugwiki.pl?DBoxLinux
....man braucht also keinen Bootmanager...muesste also aehnlich zB. auch mit einem Windows 2003 Server gehen....
z.B. yadi wie yadd booten ist nicht so einfach. hab noch keine anleitung gefunden.
ich befuerchte das geht nicht ohne eine speziell kompilierte Version des Images was als Yadd laufen soll..

cu,
peter
justav
Interessierter
Interessierter
Beiträge: 26
Registriert: Montag 6. September 2004, 10:00

Beitrag von justav »

ist der funktionsumfang zwischen yadd und yadi eigentlich gleich oder gibt
es groessere unterschiede?

schliesslich haben beide neutrino als GUI?
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

justav hat geschrieben:ist der funktionsumfang zwischen yadd und yadi eigentlich gleich oder gibt
es groessere unterschiede?

schliesslich haben beide neutrino als GUI?
?? das hat nix damit zu tun...Yadi hat auch Enigma...ob's das aktuelle Yadi Image auch als Yadd gibt, weiss ich nicht.

cu,
peter
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

die von mir erstellen yadds haben zu 99,9% den default tuxbox-cvs stand.
yadi snaps haben noch div. änderungen aus dem yadi-cvs mit drin.
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

dietmarw hat geschrieben:die von mir erstellen yadds haben zu 99,9% den default tuxbox-cvs stand.
yadi snaps haben noch div. änderungen aus dem yadi-cvs mit drin.
danke fuer die Info! Macht's aus Deiner Sicht Sinn so etwas wie ein YaddBootFlag bei den Mountoptionen einzufuehren ? Es ist nicht besonders prickelnd den SFU-NFS Server vorm booten einer Yadd abzuschiessen und streamen klappt bei mir nicht mit dem Bootmanager NFS Server und wenn, haetter er sicher die 2GB Begrenzung....

cu,
peter
essu
Tuxboxer
Tuxboxer
Beiträge: 2452
Registriert: Montag 21. Oktober 2002, 10:04

Beitrag von essu »

Hier: http://www.yadi.org/disclaimer.php?file ... 451.tar.gz gibt es unter tools/yadd auch 2 Scripten mit denen Yadi_images zu Yadds gemacht werden können...
Schon gelesen ???
ENIGMA-DOC
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

essu hat geschrieben:Hier: http://www.yadi.org/disclaimer.php?file ... 451.tar.gz gibt es unter tools/yadd auch 2 Scripten mit denen Yadi_images zu Yadds gemacht werden können...
iss ja super! Dafuer muss sicher Linux installiert sein, oder gibt's bei DietmarW auch tagesaktuelle Yadd's vom Yadi zum download ? Die von Homar habe ich schon lange nicht mehr getestet.... :oops:
Dann fehlt ja 'nur' noch das KnowHow, nicht den im Bootmanager integrierten NFS-Server zu verwenden und der Box das rootdir bekannt zu machen und natuerlich den laufenden NFS-Server (bei mir SFU) direkt zum streamen verwenden.....das muss doch irgendwie gehen...???


cu,
peter
Npq
Senior Member
Beiträge: 1339
Registriert: Donnerstag 24. April 2003, 12:12

Beitrag von Npq »

Ich hätte das in den Wiki geschrieben, da gibt's aber noch keine Unterkategorie für's CDK und ich kann die erste Seite nicht ändern, daher auch nichts einfügen.

Also Bootvorgang:

Voraussetzung: im Netz befindet sich ein DHCP-, ein NFS- und ein TFTP-Server, die natürlich entsprechend konfiguriert sein müssen.

DHCP ist der Nachfolger von BOOTP, daher kann der dhcpd bei Linux auch das Bootstrap-Protokoll (BOOTP).

Und so funktioniert es:
Zunächst läuft der BMon los, initialisiert die nötige Hardware (CPU, LCD etc.). Danach folgt die Netzwerk-Kommunikation, hier der Übersicht halber mit Angabe der Richtung.

*=gesamtes Netzwerk
DBOX=dbox2
DHCP=DHCP-Server
TFTP=TFTP-Server
NFS=NFS-Server

BMon: *<-DBOX
BMon sendet einen BOOTP-Request ins Netz

BMon: DHCP->DBOX
Der DHCP-Server anwortet mit der IP-Adresse der Dbox, der IP-Adresse des Servers und dem Namen der Bootdatei (z.Bsp: "dbox2/tftpboot/u-boot"). Die Bootdatei ist der 2.Phase-Bootloader (der BMon ist der erste, genaueres im Wiki). Damit weiß der BMon nun alle nötigen Daten.

BMon: TFTP<-DBOX
Der BMon erfragt per ARP die zur TFTP-Server-IP zugehörige MAC und fordert anschließend mit einem TFTP-Read Request die Bootdatei an. ARP ist hier nur der Vollständigkeit halber erwähnt, im folgenden wurde der Hinweis darauf weggelassen (ARP liegt unterhalb des IP-Protokolls).

BMon: TFTP->DBOX
Die Bootdatei wird nun an die dbox2 übertragen. Der BMon legt diese Datei im Speicher ab. Ist sie komplett übertragen berechnet er die Signatur. Wenn der BMon nun nicht im Debugmode ist, dann verweigert er an dieser Stelle die weitere Zusammenarbeit falls die Signatur nicht gültig ist und bootet neu.

Mit aktiviertem Debugmode gibt er zwar eine Fehlermeldung aus, startet aber anschließend die Bootdatei, in unserem Fall also den u-boot.

Der U-boot ist wesentlich intelligenter als der BMon, er weiß aber nichts von den Dingen, die bis zu diesem Punkt passiert sind. Für ihn hat die dbox2 zunächst wieder keine IP.

Eine Sache ist noch wichtig zu wissen. Der U-Boot führt nacheinander die Kommandos aus, die man ihm beim Kompilieren eingebaut hat. Daher ist die nachfolgende Beschreibung nur für die CDK-Konfiguration gültig.

Theoretisch kann man den Autostart des U-boots auch abbrechen und alle Befehle von Hand eingeben. Wer es individuell haben möchte, sollte sich das Verzeichnis u-boot-config im CDK ansehen. Dort sind die einzelnen Konfigurationen abgelegt.

Welche dieser Konfigurationen beim Kompilieren verwendet wird legt der Symlink u-boot.config in diesem Verzeichnis fest, welcher nur bei Nicht-Existenz automatisch auf die CDK-Config angelegt wird. Dadurch kann jeder ohne großen Aufwand seine persönliche Konfiguration erstellen.

U-boot: DHCP<-DBOX:
Der U-boot kennt zwar auch das Bootp-Protokoll, das dhcp-Protokoll erlaubt aber noch einige Dinge mehr, so daß dieses verwendet wird. Zunächst fragt der U-boot per DHCP Discover nach seiner IP.

U-boot: DHCP->DBOX:
Der DHCP bietet dem U-boot eine IP an und weil der U-boot nicht wählerisch ist, akzeptiert er diese.

Da wir einen Bootstrap machen sagt der DHCP dem U-boot auch noch seine Bootdatei. Also genauso wie bei der IP-Vergabe für den BMon. Das Problem ist natürlich, daß wir nicht nochmal den U-boot laden wollen. Damit der DHCP-Server nun weiß, welche Bootdatei wir möchten, sendet der U-Boot ein optionales Feld mit, den sogenannten "Vendor Class Identifier".

Dieser Identifier wird beim DHCP-Server in die dhcp-Konfiguration eingetragen und somit ist es möglich, den Bmon vom U-boot zu unterscheiden.

Der Windows-Bootmanager kennt diese Option nicht, daher wird er immer wieder den U-boot senden. Deswegen braucht man für den Bootmanager auch einen speziell angepaßten U-boot.

Als nächstes versucht der U-boot nun die Datei "logo-lcd" und "logo-fb" über das TFTP-Protokoll zu laden. Dies hat keine Bewandnis für den eigentlich Bootvorgang, sondern dient nur der Bootlogo-Anzeige.

U-boot: TFTP<-DBOX:
Als vorletzter Schritt wird nun die Bootdatei angefordert, es handelt sich um den Linux-Kernel.

U-boot: TFTP->DBOX:
Der Linuxkernel wird in den Hauptspeicher der dbox2 geladen. Da der Kernel im Prinzip ein ausführbares Programm ist kann man ihm auch Parameter übergeben. In der U-boot-Konfiguration werden diese in der Umgebungsvariable "bootargs" gespeichert.

Die CDK-Bootargumente sehen so aus:

Code: Alles auswählen

root=/dev/nfs rw 
nfsroot=$(serverip):$(rootpath)
ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname)::off 
console=$(console);
Über diese Parameter erfährt der Kernel auch alle für ihn wichtigen Dinge.
Die Variablen serverip,rootpath,ipaddr,gatewayip,netmask und hostname werden per dhcp erfragt.

Als letztes führt der U-boot das Kommando "bootm" aus. Dieses startet den Linuxkernel und übergibt ihm die in bootargs gespeicherten Optionen.

Der Linuxkernel weiß durch den Parameter "root", daß er über NFS booten soll. Den genauen Pfad entnimmt er dem nfsroot und dieser Pfad wird dann noch während des Bootvorgangs als root-Verzeichnis ("/") gemountet. Anschließend wird das Programm "init" gestartet womit der eigentliche Kernel-Boot abgeschlossen ist. Danach folgt der normale Startvorgang für die Anwendungsumgebung.

Das Booten aus dem Flash funktioniert ähnlich, natürlich wird hier der Root nicht als NFS, sondern das entsprechende MTD-Device angegeben.
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

Hi,
danke fuer die sehr ausfuehrliche Antwort! Leider kann ich damit nicht so viel anfangen...noch mal die DauFragen:

Kann ich eine Yadd mit dem Bootmanger wie bisher laden und zB. den SFU-NFS Server statt des im Bootmanger integrierten NFS-Servers verwenden?

Waere es denkbar, eins der jetzt moeglichen 8 NFS/(Cifs) Mounts als BootDir zB. per BootFlag unter den Mountoptionen auf der Box festzulegen und fuer die Yadd zu benutzen ?

Danke an DietmarW fuer die tagesaktuellen Yadds die laut den downloads sehr beliebt zu sein scheinen. An die heutigen >27 Downloader: Wie benutzt Ihr die Yadd von DietmarW..wie bisher mit dem Bootmanger oder unter Linux und was haltet Ihr von der Idee ein NFS-Verzeichnis fuer die Yadd, auf der Box festzulegen ?

cu,
peter
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

hi,
...es ist ein Kreuz, jedesmal den SFU-NFS Server abschiessen zu muessen um eine Yadd mit dem Bootmanger zu booten....weiss denn keiner wie das eleganter geht ?

cu,
peter
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Yadd bootet nicht

Beitrag von petgun »

Hi,
ich schaff das nicht mehr eine Yadd zu booten...

Code: Alles auswählen

.
.
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 2048 bind 4096)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Looking up port of RPC 100003/2 on 192.168.0.1
RPC: sendmsg returned error 101
portmap: RPC call returned error 101
Root-NFS: Unable to get nfsd port number from server, using default
Looking up port of RPC 100005/1 on 192.168.0.1
RPC: sendmsg returned error 101
portmap: RPC call returned error 101
Root-NFS: Unable to get mountd port number from server, using default
RPC: sendmsg returned error 101
mount: RPC call returned error 101
Root-NFS: Server returned error -101 while mounting C/dbox/cdkroot/
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..
den SFU-NFS Service habe ich vorher abgeschossen und auch mal die Firewall ausgeschaltet und ob mit oder ohne Haken bei 'NFS-Server starten' sieht's immer wie oben aus...woran koennte das liegen ? Ich habe schon laenger keine Yadd mehr versucht zu booten...nicht mit XPpro/SP2 und auch nicht mit SFU-NFS Server...irgendwie klappt's mit dem NFS Portmapping nicht, oder? Ich habe die neuste Yadd von DietmarW versucht zu booten...mit dem beliegenden tftboot/u-boot file klappt's garnicht (checksum error, bootp fehler, usw.) und mit einem 'alten' tftboot/ppcboot file ist es wie oben im log...oder liegt's am Bootmanager...oder muss ich den SFU-NFS Server sogar vorher komplett deinstallieren :-(
Wie macht ihr das...klappt das bei Euch wenn Ihr einen anderen NFS-Server laufen habt ?

cu,
peter

@Admin/Mods
Thread bitte abtrennen/verschieben wenn's nicht hierhin gehoert
justav
Interessierter
Interessierter
Beiträge: 26
Registriert: Montag 6. September 2004, 10:00

Beitrag von justav »

moin,

errorcode 101 bedeuted glaube ich "Network unreachable"

gruss
justav
mogway
Semiprofi
Semiprofi
Beiträge: 1287
Registriert: Montag 30. Dezember 2002, 08:02

Beitrag von mogway »

Scheinbar versucht er als das cdkroot:

Code: Alles auswählen

Root-NFS: Server returned error -101 while mounting C/dbox/cdkroot/ 
zu mounten.

Gib das Verzeichniss doch mal per SFU frei.

Gruss
mogway
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

hi,
mogway hat geschrieben:Scheinbar versucht er als das cdkroot:

Code: Alles auswählen

Root-NFS: Server returned error -101 while mounting C/dbox/cdkroot/ 
zu mounten.

Gib das Verzeichniss doch mal per SFU frei.
..habe ich versucht...mit 'nfs' als sharenamen....soll ich etwa 'c/dbox/cdkroot' als sharenamen nehmen ?

cu,
peter
mogway
Semiprofi
Semiprofi
Beiträge: 1287
Registriert: Montag 30. Dezember 2002, 08:02

Beitrag von mogway »

Ja !

PS: Bei NFS läuft das mit dem Sharenamen etwas anders als bei SMB. Ein NFS Sharename ist meist ein Pfad. Bei SMB ist es ja nur eine einzelne Bezeichnung.

Gruss
mogway
Gruss
mogway
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

hi,
mogway hat geschrieben:Ja !
habe ich eben auch noch ohne Erfolg probiert....gleiches log :-(
Kann es sein das, die Yadd's (Neutrino_Enigma_LCars_yadd_Day2[1].tar.bz2) von dietmarw nicht ohne Anpassungen funktionieren ? Da steht ja auch '...ungetestet...'...vielleicht sollte ich heute Abend mal eine Yadd von Homar versuchen...

cu,
peter
justav
Interessierter
Interessierter
Beiträge: 26
Registriert: Montag 6. September 2004, 10:00

Beitrag von justav »

nochmal moin,

etwas offtopic - aber interessant:

<werbung-ein>

[WERBUNG RAUS - siehe Boardregeln]

</werbung-aus>

gruss
justav
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

hi,
...ich warte darauf das http://www8.alternate.de/shop/infoNodes ... tNr=lwta01 auch NFS kann bzw. die genauen Spezifikationen bekannt werden. Das AsusTeil gefaellt mir viel besser als der Claxan Klotz, ist preiswerter und ich habe noch WLan dabei! Wenn das jetzt noch mit dem booten beliebiger Images ueber Netz klappen wuerde...:-)

@dietmarw
sind Deine Yadd's ohne Aenderungen lauffaehig? Ansonsten lade ich mir auch mal die aktuellste (Maerz 2004 ?) Yadd von Homar und hoffe das es damit geht.

cu,
peter