Petze Geschrieben 31. Januar 2006 Melden Share Geschrieben 31. Januar 2006 Was muss man bei "Bootfile für Dbox" im Bootmanager einstellen? In der Anleitung steht man soll die "ppcboot" auswählen. Ist doch aber gar keine in dem Verzeichnis "tftpboot" des Yadds!!! Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Worschter Geschrieben 31. Januar 2006 Melden Share Geschrieben 31. Januar 2006 Hi, hast Du stattdessen ne Datei u-boot oder so? Dann nimm die, ist die "aktuellere Variante" des ppcboot Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 31. Januar 2006 Melden Share Geschrieben 31. Januar 2006 Vorsicht! Das bei den YADDs mitgelieferte u-boot funktioniert nicht, dem fehlt die Netzwerk-Bootfähigkeit. Wird standardmäßig mit dem falschen Header compiliert, da muß man manuell nachhelfen und das u-boot selber compilieren. Header muß aus den CVS-Sourcen /tuxbox-cvs/boot/u-boot-config/u-boot.yadd.dbox2.h verwendet werden. Dazu vor Konfigurieren und Compilieren des CDK entweder die /tuxbox-cvs/cdk/makefile.am entsprechend anpassen: UBOOT_CONFIG_FILE:="./u-boot.cdk.dbox2.h" ersetzen mit UBOOT_CONFIG_FILE:="./u-boot.yadd.dbox2.h" oder falls configure schon durch ist, nachträglich die Datei /tuxbox-cvs/cdk/Makefile entsprechend anpassen, die rote Zeile: ######################## # contrib libs # OPTIONAL_LIBCRYPTO = libcrypto UBOOT_CONFIG_FILE := "./u-boot.cdk.dbox2.h" #UBOOT_CONFIG_FILE := "./u-boot.cdk.2_6.dbox2.h" CONFIGURE_OPTS = \ --build=$(build) \ --host=$(target) \ --prefix=$(targetprefix) \ --with-driver=$(driverdir) \ --with-dvbincludes=$(driverdir)/dvb/include \ --with-target=cdk Ich hatte vor paar Tagen auch die Problematik und bin bald verzweifelt, bis ich mir mal die Sourcen genauer angesehen habe. Bei Bedarf hab ich YADD-fähiges u-boot in Version 1.1.2 und 1.1.4 fertig hierliegen. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Petze Geschrieben 1. Februar 2006 Autor Melden Share Geschrieben 1. Februar 2006 @merkwuerden, kannst du mir ein funktionierendes u-boot zu kommen lassen? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 1. Februar 2006 Melden Share Geschrieben 1. Februar 2006 (bearbeitet) @petze Gleich kommt hier ein Anhang mit u-boot v1.1.2 und 1.1.4, muß nach /tftpboot und dem Bootmanager als Startfile beigebracht werden. Ich hab beide Dateien getestet, damit lassen sich YADDs problemlos über Netzwerk auf die Box laden. u_boot_yadd_dbox2.zip bearbeitet 1. Februar 2006 von Worschter Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Worschter Geschrieben 1. Februar 2006 Melden Share Geschrieben 1. Februar 2006 so angehängt . Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Petze Geschrieben 2. Februar 2006 Autor Melden Share Geschrieben 2. Februar 2006 Irgendwie bekomm ich das nich hin mit dem Yadd!!! Hab mir ein aktuelles Yadd heruntergeladen von dietmarw und hab es auch richtig entpackt!!! Im log des Bootmanagers steht folgendes: debug: DDF: Calibrating delay loop... debug: DDF: 67.79 BogoMIPS debug: WATCHDOG RESET debug: BMon V1.2 mID 01 debug: feID dd gtxID 0b debug: fpID 5a dsID xx-xx.xx.xx.xx.xx.xx-xx debug: HWrev 09 FPrev 0.81 debug: B/Ex/Fl(MB) 32/00/08 WATCHDOG reset enabled dbox2:root> debug: BOOTP/TFTP bootstrap loader (v0.3) debug: debug: Transmitting BOOTP request via broadcast debug: Got BOOTP reply from Server IP 192.168.0.101, My IP 192.168.0.100 debug: Sending TFTP-request for file D/xxx/tftpboot/u-boot will verify ELF image, start= 0x800000, size= 135620 verify sig: 262 boot net: boot file has no valid signature Branching to 0x40000 U-Boot 1.1.4 (Tuxbox) (Jan 24 2006 - 09:45:01) CPU: PPC823ZTnnB2 at 67.100 MHz: 2 kB I-Cache 1 kB D-Cache Board: DBOX2, Nokia, BMon V1.2 Watchdog enabled I2C: ready DRAM: 32 MB FLASH: 8 MB FB: ready LCD: ready In: serial Out: serial Err: serial Net: SCC ETHERNET BOOTP broadcast 1 Using SCC ETHERNET device TFTP from server 192.168.0.101; our IP address is 192.168.0.100 Filename 'D/xxx/tftpboot/u-boot'. Load address: 0x100000 Loading: Using SCC ETHERNET device TFTP from server 192.168.0.101; our IP address is 192.168.0.100 Filename 'logo-lcd'. Load address: 0x100000 Loading: ## done Bytes transferred = 7680 (1e00 hex) BOOTP broadcast 1 Using SCC ETHERNET device TFTP from server 192.168.0.101; our IP address is 192.168.0.100 Filename 'D/xxx/tftpboot/u-boot'. Load address: 0x100000 Loading: Using SCC ETHERNET device TFTP from server 192.168.0.101; our IP address is 192.168.0.100 Filename 'logo-fb'. Load address: 0x100000 Loading: ##### done Bytes transferred = 25588 (63f4 hex) Options: 1: Console on null 2: Console on ttyS0 3: Console on framebuffer Select option (1-3), other keys to stop autoboot: 0 Using SCC ETHERNET device TFTP from server 192.168.0.101; our IP address is 192.168.0.100 Filename 'kernel-yadd'. Load address: 0x100000 Loading: ################################################################# ################################################################# ########################## done Bytes transferred = 798114 (c2da2 hex) ............................................................... Un-Protected 63 sectors ## Booting image at 00100000 ... Image Name: dbox2 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 798050 Bytes = 779.3 kB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK Linux version 2.4.32-dbox2 (dietmarw@linux) (gcc version 3.4.4) #1 Do Feb 2 01:4 2:06 CET 2006 On node 0 totalpages: 8192 zone(0): 8192 pages. zone(1): 0 pages. zone(2): 0 pages. Kernel command line: console=ttyS0 root=/dev/nfs rw nfsroot=192.168.0.101:D/xxx /yaddroot/ ip=192.168.0.100:192.168.0.101:::::off Decrementer Frequency = 251625000/60 m8xx_wdt: active wdt found (SWTC: 0xFFFF, SWP: 0x1) m8xx_wdt: keep-alive trigger installed (PITC: 0x2580) Console: colour dummy device 80x25 Calibrating delay loop... 66.76 BogoMIPS Memory: 30508k available (1352k kernel code, 440k data, 68k init, 0k highmem) Dentry cache hash table entries: 4096 (order: 3, 32768 bytes) Inode cache hash table entries: 2048 (order: 2, 16384 bytes) Mount cache hash table entries: 512 (order: 0, 4096 bytes) Buffer cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 8192 (order: 3, 32768 bytes) POSIX conformance testing by UNIFIX Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket Starting kswapd devfs: v1.12c (20020818) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x1 JFFS2 version 2.2. (NAND) © 2001-2003 Red Hat, Inc. Squashfs 2.2-r2 (released 2005/09/08) © 2002-2005 Phillip Lougher i2c-core.o: i2c core module version 2.6.1 (20010830) i2c-dev.o: i2c /dev entries driver module version 2.6.1 (20010830) CPM UART driver version 0.04 ttyS0 at 0x0280 is on SMC1 using BRGttyS1 at 0x0380 is on SMC2 using BRG2 pty: 256 Unix98 ptys configured eth0: CPM ENET Version 0.2.dbox2 on SCC2, 00:50:9c:40:2f:67 loop: loaded (max 8 devices) D-Box 2 flash driver (size->0x800000 mem->0x10000000) D-Box 2 flash memory: Found 2 x16 devices at 0x0 in 32-bit bank Intel/Sharp Extended Query Table at 0x0035 cfi_cmdset_0001: Erase suspend on write enabled Creating 6 MTD partitions on "D-Box 2 flash memory": 0x00000000-0x00020000 : "BR bootloader" 0x00020000-0x00040000 : "FLFS (U-Boot)" 0x00040000-0x006a0000 : "root (cramfs)" 0x006a0000-0x00800000 : "var (jffs2)" 0x00020000-0x00800000 : "Flash without bootloader" 0x00000000-0x00800000 : "Complete Flash" Linux video capture interface: v1.00 mice: PS/2 mouse device common for all mice NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 2048 bind 4096) IP-Config: Guessing netmask 255.255.255.0 IP-Config: Complete: device=eth0, addr=192.168.0.100, mask=255.255.255.0, gw=255.255.255.255, host=192.168.0.100, domain=, nis-domain=(none), bootserver=192.168.0.101, rootserver=192.168.0.101, rootpath= NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. Looking up port of RPC 100003/2 on 192.168.0.101 Looking up port of RPC 100005/1 on 192.168.0.101 VFS: Mounted root (nfs filesystem). Mounted devfs on /dev Freeing unused kernel memory: 68k init Kernel panic: No init found. Try passing init= option to kernel. <0>Rebooting in 180 seconds.. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 2. Februar 2006 Melden Share Geschrieben 2. Februar 2006 Die Geschichte ist etwas kniffliger, als man meint. Und irgendwo vernünftig (deppensicher) beschrieben ist schon gar nichts... Entpackst Du das Yadd-Archiv (tar.bz2) unter Windows mit den Tools zum Entpacken, die dietmarw auch mit anbietet? Dann wird's Scheiße, weil die Symlinks alle kaputt sind. Zum Entpacken wird eine emulierte Linux-Umgebung unter Cygwin verwendet, das schreibt die Symlinks so, daß sie für Cygwin funktionieren würden. Damit kommt aber kein richtiges Linux mehr klar. Wie auch, die Suppe, die Cygwin da kocht, schmeckt hinten und vorne nicht. Cygwin ist allgemein Scheiße für's Arbeiten an dbox-Images. Du mußt das Archiv, speziell den Tarball da drin, unter einem echten Linux-System entpacken, damit die Symlinks richtig geschrieben werden. Das geht auch über die dBox über einen NFS-Mount (CIFS müßte auch gehen, hab ich aber nicht probiert, weil ich generell nur noch mit NFS arbeite (Microsoft SFU). Ich gehe im Folgenden von SFU unter Windows 2000 Professional aus, Vorgehen unter XP Pro analog, mit XP Home kann's Abweichungen geben, da kenne ich mich aber nicht aus... Entpacke zuerst das bz2, das geht mit den Tools von dietmarw: bunzip2 Neutrino_Enigma_LCars_yadd_Day4.tar.bz2 -f Den Tarball steckst Du dann in ein NFS-freigegebenes Verzeichnis, das mit der dBox gemounted ist, und auf daß Du Schreib-/Lesezugriff hast. Ich nehme mal als Beispiel den Mount /mnt/custom. Auf die dBox gehts Du per telnet: cd /mnt/customtar -xvf Neutrino_Enigma_LCars_yadd_Day4.tar Die Aktion dauert etwas (durchaus 4-5 Minuten), die Box ist ja nicht die Schnellste. Du bekommst dann auf dem PC im freigegebenen Verzeichnis die beiden Unterordner "tftpboot" und "yaddroot". Da ist alles drin mit korrekt funktionierenden Symlinks. Wichtig! An der Stelle mußt Du den Besitz der erzeugten Verzeichnisse samt Inhalt unter Windows ändern, sonst kannst Du die u.U. nicht korrekt kopieren, Löschen geht auch nicht! (Fällt eventuell bei CIFS-Mount weg, hab ich nicht probiert.) Beiden Verzeichnisse markieren -> Rechtsklick -> Eigenschaften -> Sicherheitseinstellungen. Du bekommst als erstes eine Warnmeldung, daß Du die Berechtigungen nur anzeigen kannst. Bestätigen, die Felder für die Berechtigungen sind alle ausgegraut. Gehe auf Erweitert -> Besitzer. Den neuen Besitzer auswählen und Haken rein bei "Besitzer für Untercontainer und Objekte ersetzen". Übernehmen und OK, Eigenschaften-Fenster schließen. Nochmal Eigenschaften der Verzeichnisse aufrufen, sonst hast Du auch als Administrator nur Ausführungs-/Leserechte, keine Schreibrechte. Entsprechenden Benutzer markieren (ich nehme der Einfachheit halber "jeder", Haken bei "Vollzugriff" rein, übernehmen, fertig. Jetzt kannst Du mit dem Zeug anstellen, was Du lustig bist. Nur noch das u-boot austauschen, und das Yadd wird korrekt booten. Kannst das entpackte Zeugs dann auch mit Zip oder Rar platzsparend archivieren, wenn Du willst, die Symlinks bleiben dabei erhalten, sind eigentlich nix anderes, als Textfiles in einem kombinierten ANSI-/Unicode-Format mit dem Attribut "System". Aber versuche nicht, die Symlinks mit einem Editor zu ändern, das geht nach hinten los. Mit einem Hex-Editor geht's aber... Und gleich noch ein Hinweis, falls Du mal ein normales Flash-Image zum Yadd umwandeln willst. Sowas kann man auch machen, ich hab z.B. das Keywelt-Januar-V4 als komplett vom Netzwerk aus bootfähige Version: In der /etc/fstab darf nichts weiter drinstehen, als maximal das: proc /proc proc defaults 0 0tmpfs /tmp ramfs defaults 0 0 sysfs /sys sysfs noauto 0 0 devpts /dev/pts devpts noauto 0 0 Keinesfalls Einträge wie /dev/mtdblock/2 /var jffs2 defaults 0 0 sonst geht beim Booten des Yadds das Image auf der Box zum Teufel. Es dürfen beim Booten über Netzwerk auch keine Module für CIFS- oder NFS-Unterstützung geladen werden (normal in der rcS.local), bringt das Yadd in Verlegenheit, da die Sachen im kernel-yadd fest eincompiliert sind. Wenn da irgendwie das insmod sunrpcinsmod lockd insmod nfs insmod cifs drinsteht, auskommentieren! Der Kernel aus dem eigentlichen Flash-Image läßt sich nicht verwenden, geht nur mit einem fertigen kernel-yadd aus einem Yadd, das zur Kernelversion des Images paßt. Und versuche niemals, bei einem gebooteten Yadd auf der Box unter Neutrino die Netzwerkeinstellungen zu ändern und per "jetzt zuweisen" sofort zu aktivieren. Dabei stürzt das Zeugs ab, Du kannst dann gleich die Box neu booten. Die geänderten Netzwerkeinstellungen werden beim Runterfahren der Box in Deep-Standby automatisch abgespeichert (auf'm PC im yaddroot). Viel Spaß beim Experimentieren! Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Petze Geschrieben 2. Februar 2006 Autor Melden Share Geschrieben 2. Februar 2006 So ich hab das Yadd jetzt mit der Box entpackt. Ich weis nur nicht wie ich den Besitz der erzeugten Verzeichnisse ändern kann. Ich gehe davon aus du hast Windows 2000 bei dir drauf. Ich hab aber XP Home drauf! Da geht das nicht mit -> Rechtsklick -> Eigenschaften -> Sicherheitseinstellungen? Hat jemand ne idee? Kann ja nich mal mehr die Verzeichnisse löschen. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 2. Februar 2006 Melden Share Geschrieben 2. Februar 2006 Jaja, die scheiß Rechteverwaltung in XP Home... mich tät mal interessieren, was diese Idioten bei MS veranlaßt hat, die Sache derart zu kastrieren. Schau mal hier nach: http://www.fajo.de/portal/index.php FaJo XP File Security Extension (XP FSE) ist das, was Du brauchst. Damit kriegst Du die Rechteverwaltung, wie sie auch unter Win2k/XP Pro vorhanden ist. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Petze Geschrieben 3. Februar 2006 Autor Melden Share Geschrieben 3. Februar 2006 Danke @merkwuerden!!! Ich habs heut endlich hinbekommen! Bei dem aktuellen Yadd von heute geht es auch wieder mit dem u-boot was im Ordner "tftpboot" liegt. Wenn man bei dem Yadd das Image ausliest, kann man das dann auch als normales Image flashen? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Puhvogel Geschrieben 3. Februar 2006 Melden Share Geschrieben 3. Februar 2006 Danke @merkwuerden!!! Ich habs heut endlich hinbekommen! Bei dem aktuellen Yadd von heute geht es auch wieder mit dem u-boot was im Ordner "tftpboot" liegt. Wenn man bei dem Yadd das Image ausliest, kann man das dann auch als normales Image flashen? nein, weil u-boot und kernel für ein flashimage falsche Parameter eingestellt haben (sihe auch hier weiter oben). Zusätzlich ist eine CVS-YADD deutlich zu groß zum flashen. cu Puhvogel Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Petze Geschrieben 3. Februar 2006 Autor Melden Share Geschrieben 3. Februar 2006 @merkwuerden, kannst mir mal genau sagen, wie man z.B. ein Keywelt-Image zu einem Yadd macht? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 3. Februar 2006 Melden Share Geschrieben 3. Februar 2006 (bearbeitet) @merkwuerden, kannst mir mal genau sagen, wie man z.B. ein Keywelt-Image zu einem Yadd macht? Geht ganz einfach (und normalerweise auch mit jedem anderen Image): Voraussetzung ist ein gemountetes Verzeichnis zum PC mit Lese- und Schreibzugriff. Sonst wird unter Umständen für die Prozedur der Speicher knapp. Und zum Entpacken unter Windows braucht man das sowieso, siehe weiter oben im Thread. Ich mache das per NFS-Mount. Allgemein: Als erstes schaun wir auf der Box nach, wie die Partitionsaufteilung ist, speziell root und var sind interessant, alles andere ist unwichtig. Per telnet: cat /proc/mtd Oder auch über das Sysinfo-Plugin. Man erhält Auskunft in der Form: mdt0: 00020000 00004000 "BR bootloader"mtd1: 00520000 00020000 "root (squashfs)" mtd2: 002a0000 00020000 "var (jffs2)" mtd3 blablabla... root ist hier (Beispiel Keywelt-Januar V4) mtd1, var ist mtd2, brauchen wir gleich wieder. Weiter geht's per telnet auf der Box. Die Partitionen für root und var müssen auf der Box nochmal gemountet werden, im Verzeichnis /tmp/root bzw. /tmp/var. Anschließend wird der Inhalt dieser Verzeichnisse getart, und zwar auf einen freigegebenen und gemounteten Ordner am PC, siehe oben, ich gehe mal am Beispiel vom KW-Image nach /mnt/custom: mkdir /tmp/rootmkdir /tmp/var cd /tmp (nicht nach /tmp/root !) mount -t squashfs -o ro /dev/mtdblock/1 /tmp/root (Die 1 ist die Partition, die oben angezeigt wurde (mdt1)) tar -cf /mnt/custom/root.tar root (Verzeichnis /tmp/root wird in die Freigabe gepackt) umount /tmp/root Wieder unmounten, spart Resourcen mount -t jffs2 -o rw /dev/mtdblock/2 /tmp/var tar -cf /mnt/custom/var.tar var umount /tmp/var Die Verzeichnisse /tmp/root und /tmp/var kann man dann wieder löschen, muß aber nicht. Sind halt jetzt wieder leer und eigentlich unnötig. Nach dem nächsten Booten sind se eh weg, also is wurscht. Das Packen geht übrigens recht fix, wieder entpacken dauert dagegegen "etwas" länger. Dann müssen die tarballs auf dem PC wieder entpackt werden, wegen der Symlinks auch über die Box/Freigabe (telnet): cd /mnt/customtar -xvf root.tar tar -xvf var.tar Das Zeug liegt jetzt soweit fertig am PC. Weiter geht's auf dem PC: Als erstes wieder die Prozedur mit der Besitzer- und Rechteübernahme, damit sich die Dateien bearbeiten/kopieren/verschieben lassen. Nun in den auf dem PC entpackten Dateien in /root/etc die Datei fstab editieren (mit unix-fähigem Editor, ich nehme Proton32 dazu). Es darf keinesfalls ein Eintrag wie /dev/mtdblock/blablabla drinstehen, sonst geht beim Versuch, das Zeug über Netzwerk zu booten, das Image auf der Box zum Teufel. Die Box würde aus ihrem eigenen Flash mounten wollen, der kerner-yadd findet dann das Zeugs nicht, fängt gutmütig Reparaturversuche an und repariert dabei das Image im Flash kaputt. Folge: die Box startet nicht mehr -> neu flashen. In die fstab gehört nur das rein, mehr braucht's nicht: proc /proc proc defaults 0 0tmpfs /tmp ramfs defaults 0 0 sysfs /sys sysfs noauto 0 0 devpts /dev/pts devpts noauto 0 0 Dann noch nachsehen, ob eine rcS.local existiert, beim Keywelt in /var/etc/init.d/rcS.local Bei anderen Images (reinen jffs2 z.B.) eventuell auch in /root/etc/init.d/rcS.local Da drin unbedingt mindestens das auskommentieren oder löschen, falls es vorhanden ist, sonst meckert der kernel-yadd: insmod nfsinsmod cifs Normal kann insmod sunrpcinsmod lockd insmod lufs auch raus, ist im kernel-yadd fest eincompiliert. In den normalen YADDs gibt's eine rcS.local überhaupt nicht. Zum Abschluß noch den Inhalt von /var nach /root/var verschieben, in /root den Kernel löschen (vmlinuz, wird nicht gebraucht) und das Ganze dann ins Verzeichnis /yaddroot rein. Für /tftpboot einen kernel-yadd aus einem originalen YADD nehmen (muß zur Kernel-Version des Images passen!) und das passende u-boot dazu aus dem YADD (bzw. meines von oben, falls die aus dem YADD nicht gehen wollen). Das Image ist damit fertig zum Booten über Netzwerk. Auch hier gilt (zumindest für Neutrino, Enigma hab ich da noch nicht geschaut): keinesfalls auf der Box die Netzwerkeinstellungen ändern und dann über "jetzt zuweisen" laden, damit hängt sich das Image weg. Aber da das Image ja eh auf der Box war und damit vermutlich auch fertig eingerichtet ist, braucht man da normal sowieso nicht ranzulangen. Das so zum YADD gewordene Flash-Image sollte genau so funktionieren, als wenn es über den Flash der Box gebootet wurde. Hab die Prozedur grade nochmal anhand des Keywelt-Januar-V4 im Hintergrund mitgemacht, funktioniert einwandfrei. Bei dem aktuellen Yadd von heute geht es auch wieder mit dem u-boot was im Ordner "tftpboot" liegt. Liest da der "Feind" etwa hier mit? Ging jedenfalls 'ne ganze Zeit lang nicht, ich hab's mit diversen YADDs aus dem Zeitraum Oktober 2005 bis Mitte Januar 2006 versucht, no chance. Wenn man bei dem Yadd das Image ausliest, kann man das dann auch als normales Image flashen? Nö, geht nicht, weil das Image dann keine Partitionseinteilung wüßte. Die Box würde damit nicht booten. Außerdem ist in einem Standard-YADD Neutrino, Enigma und Lcars gleichzeitig drin, das würde nie und nimmer in die 8 MB Flash passen. Was geht: ein nach der oben genannten mount/tar-Methode ausgelesenes Flash-Image am PC zu modifizieren und anschließend die Partitionen wieder neu zu verpacken und partitionsweise zu flashen. Dazu braucht's aber Linux auf dem PC (mit Cygwin unter Windows wirds Scheiße). Und die Prozedur ist nicht ganz einfach, weil die Partitionsgrößen festgelegt sind und keinesfalls überschritten werden dürfen. Ich hab das bisher nur einmal mit einer squashfs-Partition gemacht. Hat aber funktioniert. JFFS2 müßte auch gehen, hab ich mich aber noch nicht damit befaßt. Fragt aber bitte jetzt keiner, wie das genau geht, ist schon 'ne Weile her. Und die Anleitung dazu müßte ich erst mal wieder suchen. bearbeitet 3. Februar 2006 von merkwuerden Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Petze Geschrieben 4. Februar 2006 Autor Melden Share Geschrieben 4. Februar 2006 Was geht: ein nach der oben genannten mount/tar-Methode ausgelesenes Flash-Image am PC zu modifizieren und anschließend die Partitionen wieder neu zu verpacken und partitionsweise zu flashen. Kann man das neu verpacken auch über die D-Box machen? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Worschter Geschrieben 4. Februar 2006 Melden Share Geschrieben 4. Februar 2006 @Petze Kann man das neu verpacken auch über die D-Box machen? ja und nein kommt drauf an ob die entsprechend nötigen Dateien vorhanden sind im aktuellen Image bzw. ob die in dem Image auch laufen, d.h. daß dafür alle nötigen Sachen in den Librarys drin sin. Im Keywelt Image geht das, da mksquashfs und mkfs.jffs2 bestandteil des Images sind. Bei andren Image wirds bei mkfs.jffs2 unter Umständen Schwierigkeiten geben. Nächster Knackpunkt ist der geringe RAM der Box, hast Du ein JFFS2 only Image, dann geht´s wenn dann nur mit ner Box mit 64MB RAM. auf ner 32MB Box wirst Du alles killen müssen was im Normalbetrieb läuft um ne SQuashfs ROOT Partition zu packen. Denn die hat in der Regel entpackt um die 12MB + Image ist schon etwa 17-18MB das hat keine Box frei. Alternativ wäre da ein NFS gemountetes Laufwerk aufm Rechner, da geht es dann problemlos. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Admin SnowHead Geschrieben 4. Februar 2006 Admin Melden Share Geschrieben 4. Februar 2006 Für Faule habe ich mal die Anleitung von merkwuerden in ein Script verpackt. Das Archiv in ein Verzeichnis auf dem PC packen und dieses Verzeichnis für die DBox freigeben und auf ihr mounten. Im Script noch den Mountpfad und die Kernel-Version anpassen. Für den Kernel 1.1.2. habe ich allerdings noch keinen Kernel gefunden. Den muß man sich also noch selber besorgen. Auf der Box im Telnet eingeben (angenommen das gemountete Laufwerk ist /mnt/custom: cd /mnt/customsh ./makeyadd.sh Das Erstellen der Yadd funktioniert bei mir damit problemlos, nur das Starten klappt noch nicht. Aber dazu später. Edit: aktuelle Version hängt weiter unten dran Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 4. Februar 2006 Melden Share Geschrieben 4. Februar 2006 @SnowHead Kernel 1.1.2... was is'n das für Ding? Solltest vielleicht das Script dahingehend abändern, daß da bei der kernel-Variablen korrekt 2.4.31 reinkommt und den Rest dahingehend passend machen. Kriegst gleich 'ne PM mit Link zu einem Kernel 2.4.31 fürs KW-Image. Kannste dann in das Script mit reinpacken. Und: mit dem Kernel 2.4.32 wird das KW-YADD nicht bootfähig sein. Die Kernel-Versionen vom Flash-Image und kernel-yadd müssen übereinstimmen. Das u-boot sollte dagegen unkritisch sein, das KW-YADD wird auch mit dem 1.1.4 booten. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Admin SnowHead Geschrieben 4. Februar 2006 Admin Melden Share Geschrieben 4. Februar 2006 @merkwuerden Danke. Hab es mal angepasst. War wohl heute irgendwie auf "Kernel" gepolt. KW_makeyadd.rar Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 4. Februar 2006 Melden Share Geschrieben 4. Februar 2006 @SnowHead Ich hab übrigens noch die dumme Idee, Dein Script allgemein verwendbar zu machen. Kernels und u-boote sollten sich auch für etwas ältere Images noch auftreiben lassen, irgendwo hatte ich da mal eine Webpage gefunden. Sonst wird das Zeugs eben neu compiliert. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Admin SnowHead Geschrieben 4. Februar 2006 Admin Melden Share Geschrieben 4. Februar 2006 @merkwuerden Das kann man machen. Wo die Partitionen "root" und "var" liegen, kann man ja auf die gleiche Weise ermitteln wie beim rescue-Plugin. Da ein Großteil der Zeilen in dem Script eh aus Deinem Posting stammt, solltest Du das überneh- men. Da ich im Moment unter Windows und mit dem Bootmanager eh keine YADD zum laufen kriege, klinke ich mich da mal aus. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 5. Februar 2006 Melden Share Geschrieben 5. Februar 2006 Hm... da muß ich mir die Konstruktion im rescue-Plugin mal genau ansehen. Problem könnte werden, daß sed und grep in manch älterem Image nicht vorhanden sind. Schaun mer mal, ob mir da was einfällt. Die Scripterei ist eigentlich nicht so meine Spezialität. Da ich im Moment unter Windows und mit dem Bootmanager eh keineYADD zum laufen kriege, klinke ich mich da mal aus. Sooo kompliziert ist das nicht. Für den Fall, daß Du MS-SFU am Laufen hast: Vom Bootmanager brauchst Du nur den BootP/TFTP Server und die COM-Schnittstelle für's Log. Dem BootP drehst Du das u-boot aus dem yaddroot auf. Kommt eventuell die Mecker, daß das kein gültiges ppcboot ist, aber kann man ignorieren. Und irgendwo hab ich dieser Tage einen Patch für den BM gefunden, der das Gemaule ein für allemal abstellt. Für yaddroot machst Du eine NFS-Freigabe am PC, Freigabename des Verzeichnisses ist ebenfalls "yaddroot". Encoding ANSI Allow anonymous access, Anonymous UID und GID -2 Permissions: read-write, allow root access Sollte dann funktionieren. Achtung! Zwei NFS-Server am PC vertragen sich nicht! MS-SFU z.B. blockiert den NFS-Server des BM, also bei SFU nicht das Ding vom BM mit starten. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Petze Geschrieben 5. Februar 2006 Autor Melden Share Geschrieben 5. Februar 2006 Danke @merkwuerden, es hat Dank deiner Anleitung gleich beim ersten Versuch geklappt!!! Habe das Keywelt V4 als Yadd auf meinem Rechner und es läuft wunderbar!!! Was geht: ein nach der oben genannten mount/tar-Methode ausgelesenes Flash-Image am PC zu modifizieren und anschließend die Partitionen wieder neu zu verpacken und partitionsweise zu flashen. Hast du dafür manchmal noch ne Anleitung für mich? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
merkwuerden Geschrieben 5. Februar 2006 Melden Share Geschrieben 5. Februar 2006 @Petze Muß ich mal suchen, ob ich die Anleitung noch finde. Auf meiner Festplatte herrscht ein leichtes Chaos, meine ursprüngliche Ordnung ist etwas zum Saustall verkommen. Hab aber auch keine Lust, mal aufzuräumen, da schmeiß ich bestimmt wieder zuviel weg. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Worschter Geschrieben 5. Februar 2006 Melden Share Geschrieben 5. Februar 2006 Naja, das zusammenbasteln ist ansich net soo schwer. Du brauchst mkfs.jffs2 und mksquashfs, alledings geht das erstmal nur in nem Linux System. Für Windows brauchst Du zumindest Cygwin, aber das entzieht sich meiner Kenntnis. den Var Bereich zusammenkleben machst Du dann so: Du hast alles in nem verzeichnis /var liegen, so lautet der Befehl dazu: mkfs.jffs2 -b -e 131072 -p -o var.img -r var für den im Verzeichnis /root liegenden Root Bereich lautet er: mksquashfs root root.img -be dann hast Du die jeweiligen einzelimages die Du flashen kannst. Wenn Du auf Deinem Linux Rechner nicht als root sondern als User angemeldet bist muss Du zusätzlich fakeroot installieren, dann lauten die Befehle: fakeroot mksquashfs root root.img -be fakeroot mkfs.jffs2 -b -e 131072 -p -o var.img -r var Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Empfohlene Beiträge