ipkg und mini_fo

Warum eigentlich alles so umständlich?
Rein theoretisch würde eine minimale Basis-Firmware mit den wichtigsten Anwendungen im Flash der Box reichen (dropbear, busybox, mc, dnsmasq, minihttpd). Das ganze als simples jffs2 verpackt und auf den Flash geschrieben. Alle anderen Anwendungen werden auf einem ext3 Formatierten USB Stick (oder NFS Share, für diejenigen, die keine 7170 haben) untergebracht, der unter /opt gemountet wird. Die Möglichkeit dafür müsste lediglich vom minimal System gegeben sein. Das ganze dann wegen mir auch mit ipkg Funktionalität, wenn man auf Perfektionismus steht :)
 
JFFS2 ist ungeeignet, da hier die Kompression wegfällt und das minimale System dann garnicht mehr in den Flash passt. Aber du hast schon recht, ipkg geht schon auch ohne mini_fo, allerdings würde mini_fo das ganze schön abrunden, indem es keine Rolle spielt, ob das Paket im read-only Bereich oder in der "Erweiterung" steht.

Wenn mini_fo bis nach meinen Prüfungen noch nicht will, dann werd ich aber auch ohne es auf ipkg umsteigen.

Mfg,
danisahne
 
Wir können mit mini_fo auf ipkg umsteigen. ;-)

Stand hier im Thread schonmal was zur Umsetzung? Es wäre ja sicher nicht sinnvoll das ganze Rootverzeichnis so zu mounten. Und ausschließen kann man da nichts, ich hab zumindest nichts dergleichen gesehen.

MfG Oliver
 

Anhänge

  • 100-no_lfs.patch.tar.bz2
    1.6 KB · Aufrufe: 6
Soweit der erste Versuch:
Code:
RAMDISK: Minix filesystem found at block 0
RAMDISK: Loading 3900 blocks [1 disk]done.-\am|/\sk|//|-
Freeing initrd memory: 3900k freed
VFS: Mounted root (minix filesystem).
root device=/dev/rd/0
Mounted devfs on /dev
Freeing unused kernel memory: 52k freed
Algorithmics/MIPS FPU Emulator v1.5
+ insmod /lib/modules/mini_fo.o
Registering mini_fo version $Id$
+ mount -t tmpfs none /tmp
+ mkdir /tmp/sto
+ mount -t mini_fo -o base=/,sto=/tmp/sto / /rw
mini_fo: using base directory: /
mini_fo: using storage directory: /tmp/sto
+ cd /rw
+ mkdir old_rootfs
+ pivot_root . old_rootfs
+ sleep 1
+ exec /sbin/chroot . /sbin/init
[sys_reboot]: cmd=0x0
Sonderlich weit bin ich nicht gekommen...

MfG Oliver

edit: Eine Stunde später sieht es schon besser aus:
Code:
RAMDISK: Minix filesystem found at block 0
RAMDISK: Loading 3900 blocks [1 disk]done.-\am|/\sk|//|-
Freeing initrd memory: 3900k freed
VFS: Mounted root (minix filesystem).
root device=/dev/rd/0
Mounted devfs on /dev
Freeing unused kernel memory: 52k freed
[sys_reboot]: cmd=0x0
init started:  BusyBox v1.2.0 (2006.07.28-13:19+0000) multi-call binary
Algorithmics/MIPS FPU Emulator v1.5
*** Switching to mini_fo-root ... ***
Registering mini_fo version $Id$
mini_fo: using base directory: /
mini_fo: using storage directory: /tmp/sto
/bin/sh: /var/post_install: not found
[sys_reboot]: cmd=0x89abcdef
The system is going down NOW !!
Sending SIGTERM to all processes.
Sending SIGKILL to all processes.
[sys_reboot]: cmd=0x0
init started:  BusyBox v1.2.0 (2006.07.28-13:19+0000) multi-call binary
*** Already running from mini_fo, done. ***
AR7WDT: System Init UEberwachung 360 Sekunden
*************************************
**** adam2 environment ****

edit2: Ich hätte da auch schon ein Addon fertig. Leider läuft das durch die inkonsistente Nutzung von "/var/tmp" und "/tmp" nicht richtig. Ich könnte das Storage-Verzeichnis höchstens woanders hinlegen.
Kann man irgendwie verhindern, dass beim modload die Datei rc.$package ausgeführt wird?
 
Zuletzt bearbeitet:
Irgendwie scheinzt es da noch ein Problem zu geben.
Ich hab keine Ahnung warum die Files im alten Rootverzeichnis angelegt werden:
Code:
/ # ls /old_rootfs/var/ -al
drwxr-xr-x    3 root     root            0 Sep  8 14:00 .
drwxrwxrwx    1 root     root           79 Aug  9  2006 ..
-rw-r--r--    1 root     root          404 Sep  8 14:00 .CRWWLANMAP
-rw-r--r--    1 root     root            4 Sep  8 14:00 .CRWWLANMAP-M
-rw-r--r--    1 root     root          816 Sep  8 14:00 .IGDSERVER_API-MAINMA
-rw-r--r--    1 root     root            4 Sep  8 14:00 .IGDSERVER_API-MAINMA
-rw-r--r--    1 root     root         8208 Sep  8 14:00 .M-igddev_api-reply-d
-rw-r--r--    1 root     root            4 Sep  8 14:00 .M-igddev_api-reply-d-M
-rw-r--r--    1 root     root         8208 Sep  8 14:00 .M-igddev_api-requestld
-rw-r--r--    1 root     root            4 Sep  8 14:00 .M-igddev_api-requestld-M
-rw-r--r--    1 root     root        20000 Sep  8 14:00 .ar7events
-rw-r--r--    1 root     root          496 Sep  8 14:00 .dsld_statsimple
-rw-r--r--    1 root     root            4 Sep  8 14:00 .dsld_statsimple-M
-rw-r--r--    1 root     root           53 Sep  8 14:00 .igdd-del-portmap
-rw-r--r--    1 root     root            4 Sep  8 14:00 .igdd-del-portmap-M
-rw-r--r--    1 root     root          296 Sep  8 14:00 .inetstat
-rw-r--r--    1 root     root            4 Sep  8 14:00 .inetstat-M
-rw-r--r--    1 root     root         1848 Sep  8 14:00 .voipd_statsimple
-rw-r--r--    1 root     root            4 Sep  8 14:00 .voipd_statsimple-M
drwxr-xr-x    2 root     root            0 Sep  8 14:00 old_rootfs
Code:
/ # mount
/dev/mtdblock/7 on /old_rootfs type squashfs (ro)
none on /old_rootfs/var type tmpfs (rw)
/ on / type mini_fo (rw)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
ramfs on /var type ramfs (rw)
/ #
MfG Oliver
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.