Zugriff auf RootFS der unbenutzten Bank
- Janus
- NI - VIP
- Beiträge: 1188
- Registriert: Di 12. Apr 2016, 19:41
- Box: HD1, Zee, Neo, Tank, HD51, Duo4K
- Has thanked: 7 times
- Been thanked: 11 times
Zugriff auf RootFS der unbenutzten Bank
Sorry, ich hatte das schonmal im falschen Bereich als OT-Nachtrag gefragt.
Passt natürlich hier besser, zumal die CST-Boxen schon was älter sind und allgemein nicht mehr so relevant sind.
Nach dem Flashen eines aktuellen Selbstbaus für meinen Tank in die Bank 1, ist mir ein Vebesserungsvorschlag wieder eingefallen:
Gibt es einen Trick von einem laufenden Image in Bank 1 auf das Filesystem (RootFS) in Bank 0 zuzugreifen ?
In den Multiboot-Images (HD51 und Duo4K) geht das ja 'automatisch' über vorhandene Links in /mnt oder /media.
Eine Mount-Anweisung vielleicht, die man selbst in die Startsequenz einbauen kann ?
Ich wollte z.B. in Bank 0 den String "BOOT NI-IMAGE" in "Boot NI Bank 0" ändern, damit ich beim Start der Box besser erkennen kann, welche Version gerade startet. Die Meldung des Bootloaders ist so klein und so schnell weg, dass ich das nicht mitbekomme ohne mich direkt vor die Box zu legen und konzentriert das Display anzustarren.
Manchmal hat man ja auch bei dem "Neuen" was 'Aktuelles' vergessen oder eine Änderung gemacht, die man sofort in die andere Bank übernehmen will. Kopieren (Telnet|FTP|TuxCom) wäre einfacher als Hin- und Herschalten mit Transfer über ein Zwischenmedium.
Nach den bisherigen Erfahrungen mit den o.g. Multiboot-Images dürfte das auch keine Probleme für die Anwender bereiten, wenn man das generell ins Tank-Image einbaut.
Das Ganze braucht nix in der Benutzeroberfläche, sofern beim Booten die aktive Partition erkannt und die jeweils andere danach entsprechend verlinkt wird. Ich würde dafür /mnt/rootfs[0|1] vorschlagen.
Den Partitionswechsel selbst kann man ja wie gewohnt mit der Menü-Taste im Bootloader steuern.
Passt natürlich hier besser, zumal die CST-Boxen schon was älter sind und allgemein nicht mehr so relevant sind.
Nach dem Flashen eines aktuellen Selbstbaus für meinen Tank in die Bank 1, ist mir ein Vebesserungsvorschlag wieder eingefallen:
Gibt es einen Trick von einem laufenden Image in Bank 1 auf das Filesystem (RootFS) in Bank 0 zuzugreifen ?
In den Multiboot-Images (HD51 und Duo4K) geht das ja 'automatisch' über vorhandene Links in /mnt oder /media.
Eine Mount-Anweisung vielleicht, die man selbst in die Startsequenz einbauen kann ?
Ich wollte z.B. in Bank 0 den String "BOOT NI-IMAGE" in "Boot NI Bank 0" ändern, damit ich beim Start der Box besser erkennen kann, welche Version gerade startet. Die Meldung des Bootloaders ist so klein und so schnell weg, dass ich das nicht mitbekomme ohne mich direkt vor die Box zu legen und konzentriert das Display anzustarren.
Manchmal hat man ja auch bei dem "Neuen" was 'Aktuelles' vergessen oder eine Änderung gemacht, die man sofort in die andere Bank übernehmen will. Kopieren (Telnet|FTP|TuxCom) wäre einfacher als Hin- und Herschalten mit Transfer über ein Zwischenmedium.
Nach den bisherigen Erfahrungen mit den o.g. Multiboot-Images dürfte das auch keine Probleme für die Anwender bereiten, wenn man das generell ins Tank-Image einbaut.
Das Ganze braucht nix in der Benutzeroberfläche, sofern beim Booten die aktive Partition erkannt und die jeweils andere danach entsprechend verlinkt wird. Ich würde dafür /mnt/rootfs[0|1] vorschlagen.
Den Partitionswechsel selbst kann man ja wie gewohnt mit der Menü-Taste im Bootloader steuern.
-
- Beiträge: 146
- Registriert: Mi 20. Okt 2021, 15:20
- Box: Amiko Alien Mini 3x, Bre2ze 4k
- Has thanked: 1 time
- Been thanked: 8 times
Re: Zugriff auf RootFS der unbenutzten Bank
Da ich keine Coolstream Box mit mehreren Bänken habe, frage ich mal "trocken" nach:

- Was steht in /proc/partitions
- was sagt "mount" über das root fs
- was steht in /proc/cmdline
- annie
- NI - Team
- Beiträge: 1042
- Registriert: Di 5. Apr 2016, 18:46
- Wohnort: zuhause
- Box: 1x E4HD, 4x HD51,1x VuUno4K
- Has thanked: 11 times
- Been thanked: 14 times
Re: Zugriff auf RootFS der unbenutzten Bank
Tank:
Code: Alles auswählen
/var/root # mount
rootfs on / type rootfs (rw)
mtd:root0 on / type jffs2 (rw,relatime)
devtmpfs on /dev type devtmpfs (rw,relatime,size=123480k,nr_inodes=30870,mode=755)
proc on /proc type proc (rw,relatime)
sys on /sys type sysfs (rw,relatime)
tmp on /tmp type tmpfs (rw,relatime)
media on /media type tmpfs (rw,relatime)
srv on /srv type tmpfs (rw,relatime)
mnt on /mnt type tmpfs (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
/dev/mtdblock1 on /var type jffs2 (rw,relatime)
nfs on /var/lib/nfs type tmpfs (rw,relatime)
samba on /var/samba type tmpfs (rw,relatime)
Code: Alles auswählen
/var/root # cat /proc/partitions
major minor #blocks name
31 0 262144 mtdblock0
31 1 32768 mtdblock1
31 2 753664 mtdblock2
31 3 256 mtdblock3
31 4 512 mtdblock4
31 5 128 mtdblock5
31 6 128 mtdblock6
31 7 3072 mtdblock7
179 0 7761920 mmcblk0
179 1 7757824 mmcblk0p1
8 0 1953514584 sda
8 1 1953513560 sda1
Code: Alles auswählen
/var/root # cat /proc/cmdline
noinitrd console=ttyS0,115200n8 mtdparts=e0632000.flash_sfc:256k@0k(uldr),512k@256k(u-boot),128k@768k(env),128k@896k(spare),-(kernel);e0631000.flash_nand:256m@0k(root0),32m@256m(var),-(root1) root=mtd:root0 rootfstype=jffs2 rw
- Janus
- NI - VIP
- Beiträge: 1188
- Registriert: Di 12. Apr 2016, 19:41
- Box: HD1, Zee, Neo, Tank, HD51, Duo4K
- Has thanked: 7 times
- Been thanked: 11 times
Re: Zugriff auf RootFS der unbenutzten Bank
Sieht hier ähnlich aus (Block 1 aktiv, Block 0 inaktiv):
Code: Alles auswählen
/var/root # mount
rootfs on / type rootfs (rw)
mtd:root1 on / type jffs2 (rw,relatime)
devtmpfs on /dev type devtmpfs (rw,relatime,size=123480k,nr_inodes=30870,mode=755)
proc on /proc type proc (rw,relatime)
sys on /sys type sysfs (rw,relatime)
tmp on /tmp type tmpfs (rw,relatime)
media on /media type tmpfs (rw,relatime)
srv on /srv type tmpfs (rw,relatime)
mnt on /mnt type tmpfs (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
/dev/mtdblock1 on /var type jffs2 (rw,relatime)
nfs on /var/lib/nfs type tmpfs (rw,relatime)
samba on /var/samba type tmpfs (rw,relatime)
/dev/sda1 on /media/sda1 type ext4 (rw,relatime,data=ordered)
/dev/mmcblk0p1 on /media/mmcblk0p1 type ext4 (rw,relatime,data=ordered)
/var/etc/auto.net on /mnt/autofs type autofs (rw,relatime,fd=6,pgrp=709,timeout=300,minproto=5,maxproto=5,indirect)
//fritz/../fb128GB/scan on /mnt/settings type cifs (...)
/var/root # cat /proc/partitions
major minor #blocks name
31 0 262144 mtdblock0
31 1 32768 mtdblock1
31 2 753664 mtdblock2
31 3 256 mtdblock3
31 4 512 mtdblock4
31 5 128 mtdblock5
31 6 128 mtdblock6
31 7 3072 mtdblock7
179 0 62782464 mmcblk0
179 1 62782456 mmcblk0p1
8 0 976762584 sda
8 1 976760001 sda1
/var/root # cat /proc/cmdline
noinitrd console=ttyS0,115200n8 mtdparts=e0632000.flash_sfc:256k@0k(uldr),512k@256k(u-boot),128k@768k(env),128k@896k(spare),-(kernel);e0631000.flash_nand:256m@0k(root0),32m@256m(var),-(root1) root=mtd:root1 rootfstype=jffs2 rw
/var/root #
-
- Beiträge: 146
- Registriert: Mi 20. Okt 2021, 15:20
- Box: Amiko Alien Mini 3x, Bre2ze 4k
- Has thanked: 1 time
- Been thanked: 8 times
Re: Zugriff auf RootFS der unbenutzten Bank
Das mit dem "mtd:root0" und "mtd:root1" ist mir neu, ich bin mir aber ziemlich sicher, daß
/dev/mtdblock0 -> root0
/dev/mtdblock2 -> root1 ist,
also wenn root0 das aktuelle rootfs ist, dann könntet ihr mit "mount /dev/mtdblock2 /mnt" das andere rootfs nach /mnt mounten.
Das könnte man mit einem kleinen Skript das entweder aus /proc/cmdline oder aus dem "mount" output rausliest ob gerade das eine oder das andere gemounted ist, und das jeweils andere an einen definierten Ort mounted automatisieren. Da ich keine entsprechende Box hier habe, überlasse ich das euch mal als Übung
Irgendwas in der Art:
/dev/mtdblock0 -> root0
/dev/mtdblock2 -> root1 ist,
also wenn root0 das aktuelle rootfs ist, dann könntet ihr mit "mount /dev/mtdblock2 /mnt" das andere rootfs nach /mnt mounten.
Das könnte man mit einem kleinen Skript das entweder aus /proc/cmdline oder aus dem "mount" output rausliest ob gerade das eine oder das andere gemounted ist, und das jeweils andere an einen definierten Ort mounted automatisieren. Da ich keine entsprechende Box hier habe, überlasse ich das euch mal als Übung
Irgendwas in der Art:
Code: Alles auswählen
if grep -q "root=mtd:root1" /proc/cmdline; then
mount -t jffs2 /dev/mtdblock0 /mnt/other
elif grep -q "root=mtd:root0" /proc/cmdline; then
mount -t jffs2 /dev/mtdblock2 /mnt/other
fi
- annie
- NI - Team
- Beiträge: 1042
- Registriert: Di 5. Apr 2016, 18:46
- Wohnort: zuhause
- Box: 1x E4HD, 4x HD51,1x VuUno4K
- Has thanked: 11 times
- Been thanked: 14 times
Re: Zugriff auf RootFS der unbenutzten Bank
/var/root # mount /dev/mtdblock2 /mnt
NTFS signature is missing.
Failed to mount '/dev/mtdblock2': Invalid argument
The device '/dev/mtdblock2' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
NTFS signature is missing.
Failed to mount '/dev/mtdblock2': Invalid argument
The device '/dev/mtdblock2' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
FUSE exfat 1.3.0
ERROR: exFAT file system is not found.
NTFS signature is missing.
Failed to mount '/dev/mtdblock2': Invalid argument
The device '/dev/mtdblock2' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
NTFS signature is missing.
Failed to mount '/dev/mtdblock2': Invalid argument
The device '/dev/mtdblock2' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
FUSE exfat 1.3.0
ERROR: exFAT file system is not found.
- Janus
- NI - VIP
- Beiträge: 1188
- Registriert: Di 12. Apr 2016, 19:41
- Box: HD1, Zee, Neo, Tank, HD51, Duo4K
- Has thanked: 7 times
- Been thanked: 11 times
Re: Zugriff auf RootFS der unbenutzten Bank
Ich musste noch das Zielverzeichnis vor dem mount-Befehl per Script anlegen, danach funktionierte es aber.
Ich habe das Ganze in mein zusätzliches Startscript in /var/etc/init.d/, also der gemeinsamen var-Partition, eingebaut. Damit hatte ich bisher nur meine externen Einzelscan-Verzeichnisse nach /mnt/settings/ gemountet.
Das wird bei jedem Start per rc.local automatisch aufgerufen.
Ich denke, das "Unmounten" der jeweils fehlenden Verbindung wird nicht tragisch sein.
Sonst muss ich das auch noch selektieren...
Danke an alle Beteiligten.
Ich liebe es, wenn ein Plan funktioniert!
Code: Alles auswählen
case $1 in
start)
...
if grep -q "root=mtd:root1" /proc/cmdline; then
mkdir /mnt/Bank_0
mount -t jffs2 /dev/mtdblock0 /mnt/Bank_0
elif grep -q "root=mtd:root0" /proc/cmdline; then
mkdir /mnt/Bank_1
mount -t jffs2 /dev/mtdblock2 /mnt/Bank_1
fi
cd /
;;
stop)
...
umount /mnt/Bank_0
umount /mnt/Bank_1
;;
Das wird bei jedem Start per rc.local automatisch aufgerufen.
Ich denke, das "Unmounten" der jeweils fehlenden Verbindung wird nicht tragisch sein.
Sonst muss ich das auch noch selektieren...
Danke an alle Beteiligten.
Ich liebe es, wenn ein Plan funktioniert!
-
- Beiträge: 146
- Registriert: Mi 20. Okt 2021, 15:20
- Box: Amiko Alien Mini 3x, Bre2ze 4k
- Has thanked: 1 time
- Been thanked: 8 times
Re: Zugriff auf RootFS der unbenutzten Bank
Evtl. das inaktive rootfs nur readonly mounten, damit sich nicht jemand aus versehen seine "rescuepartition" zerschießt?
Profis wie Janus, die wissen was sie tun, können es ja immer noch R/W remounten oder so...
Profis wie Janus, die wissen was sie tun, können es ja immer noch R/W remounten oder so...
- jokel
- Beiträge: 2594
- Registriert: Mi 31. Mär 2021, 14:23
- Box: ZGEMMA H7/C
- Has thanked: 31 times
- Been thanked: 68 times
Re: Zugriff auf RootFS der unbenutzten Bank
annie ja das stimmt,
ausgabe ist,
könnte man aber mit -o remount,ro ändern 
beispiel,
ausgabe,
dies ist nur ein beispiel für remount. auf arm boxen sollten man dies nicht machen.
Code: Alles auswählen
mount | grep '^/' | awk '{print "\n Partition : " $1 "\n Mountpoint: " $3 "\n Parameter : " $6}'
Code: Alles auswählen
[jokel ~]# mount | grep '^/' | awk '{print "\n Partition : " $1 "\n Mountpoint: " $3 "\n Parameter : " $6}'
Partition : /dev/mmcblk0p8
Mountpoint: /
Parameter : (rw,relatime,data=ordered)
Partition : /dev/mmcblk0p3
Mountpoint: /mnt/linuxrootfs1
Parameter : (rw,relatime,data=ordered)
Partition : /dev/mmcblk0p1
Mountpoint: /boot
Parameter : (rw,relatime,fmask=0000,dmask=0000,allow_utime=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
Partition : /dev/sda1
Mountpoint: /media/sda1
Parameter : (rw,relatime,data=ordered)
Partition : /dev/mmcblk0p8
Mountpoint: /mnt/linuxrootfs3
Parameter : (rw,relatime,data=ordered)
Partition : /dev/mmcblk0p8
Mountpoint: /mnt/linuxrootfs4
Parameter : (rw,relatime,data=ordered)
Partition : /var/etc/auto.net
Mountpoint: /mnt/autofs
Parameter : (rw,relatime,fd=6,pgrp=1699,timeout=300,minproto=5,maxproto=5,indirect)
[jokel ~]#
beispiel,
Code: Alles auswählen
mount -o remount,ro /mnt/linuxrootfs4
Code: Alles auswählen
Partition : /dev/mmcblk0p8
Mountpoint: /mnt/linuxrootfs4
Parameter : (ro,relatime,data=ordered)
- Janus
- NI - VIP
- Beiträge: 1188
- Registriert: Di 12. Apr 2016, 19:41
- Box: HD1, Zee, Neo, Tank, HD51, Duo4K
- Has thanked: 7 times
- Been thanked: 11 times
Re: Zugriff auf RootFS der unbenutzten Bank
Das angesprochene Gefahr könnte eventuell stärker sein, da viele zufriedene Tank-Nutzer zur Zeit noch keine Erfahrung mit den Multiboot-Boxen haben.Bei den Arm Boxen sind die Partitionen auch nicht readonly...
Andererseits ist die Wiederherstellung einer selbst 'abgeschossenen' Partition ein wichtiger Bestandteil persönlicher Fortbildung. So schwer ist es ja auch nicht und man denkt intensiver über "Sicherheitskopie" nach.
Geht beim Tank ja sehr selektiv!
Und ja - ich habe das auch auf diesem Weg (mit meiner HD51) 'gelernt'...
- Knicko
- NI - Team
- Beiträge: 802
- Registriert: Di 5. Apr 2016, 16:54
- Box: Neo, Neo², Zee², AX-HD51, HD60
- Has thanked: 43 times
- Been thanked: 26 times
Re: Zugriff auf RootFS der unbenutzten Bank
Immer diese Sicherheitskopien..
Solange du den Kernel nicht abschießt, bokommst du ja eine Partition normalerweise wieder gestartet.
Und kannst von da aus wieder die andere Partition flashen.
Was mich damals gestört hat, war das /var von beiden Images genutzt wurde.
Hatte auf root1 damals ein yocto laufen mit eigenem /var und dafür den kernel angepasst, damit beide Images liefen.
Und auch noch ab und an aus Spielerei von usb gestartet, um ein drittes Image zu verwenden.
Ich glaube aber, das das eh kaum einer nutzt. Das war damals als die Boxen noch aktuell waren, nur wenige, die damit rumgespielt haben.
gr. knicko
Solange du den Kernel nicht abschießt, bokommst du ja eine Partition normalerweise wieder gestartet.
Und kannst von da aus wieder die andere Partition flashen.
Was mich damals gestört hat, war das /var von beiden Images genutzt wurde.
Hatte auf root1 damals ein yocto laufen mit eigenem /var und dafür den kernel angepasst, damit beide Images liefen.
Und auch noch ab und an aus Spielerei von usb gestartet, um ein drittes Image zu verwenden.
Ich glaube aber, das das eh kaum einer nutzt. Das war damals als die Boxen noch aktuell waren, nur wenige, die damit rumgespielt haben.
gr. knicko
MAKE NEUTRINO GREAT AGAIN!
- Janus
- NI - VIP
- Beiträge: 1188
- Registriert: Di 12. Apr 2016, 19:41
- Box: HD1, Zee, Neo, Tank, HD51, Duo4K
- Has thanked: 7 times
- Been thanked: 11 times
Re: Zugriff auf RootFS der unbenutzten Bank
Ich hatte damals ein Selbstbau-Image mit Bellums BS und dann probiert, ein NG in Bank 1 zu flashen.
Das ging dann auch nicht.
Habe danach nur noch unterschiedliche Entwicklungsstände (master <> mine) des gleichen BS benutzt.
Das ging dann auch nicht.
Habe danach nur noch unterschiedliche Entwicklungsstände (master <> mine) des gleichen BS benutzt.
- imi8mm
- NI - VIP
- Beiträge: 509
- Registriert: Di 12. Apr 2016, 16:51
- Wohnort: Hessen , Mbg.
- Box: Trinity,Zee²,Neo²,D-Box2,2xAX51: UM
- Has thanked: 6 times
Re: Zugriff auf RootFS der unbenutzten Bank
Hallo , vor den Multiboots auf der HD51 hatte ich den Root-Wechsel auf meiner Zee² benutzt ,
der Wechsel war allerdings nicht so einfach wie heute auf meiner HD51 ...
daher nur wenig genutzt ...
Grüsse - imi8mm
der Wechsel war allerdings nicht so einfach wie heute auf meiner HD51 ...
daher nur wenig genutzt ...
Grüsse - imi8mm
CST Trinity V1 NI-Image 4.10 - Nightly > SPF-75h
CST Zee²Twin NI-Image 4.10 - Nightly
CST Neo²Twin NI-Image 4.10 - Nightly
2 x AX HD51 NI-Image 4.10 - Nightly + Keywelt + DDT + yocto 3.0.0 > SPF-75h/87h
UM-Fritzbox 6490---alles für Kabel/UM
CST Zee²Twin NI-Image 4.10 - Nightly
CST Neo²Twin NI-Image 4.10 - Nightly
2 x AX HD51 NI-Image 4.10 - Nightly + Keywelt + DDT + yocto 3.0.0 > SPF-75h/87h
UM-Fritzbox 6490---alles für Kabel/UM
- Knicko
- NI - Team
- Beiträge: 802
- Registriert: Di 5. Apr 2016, 16:54
- Box: Neo, Neo², Zee², AX-HD51, HD60
- Has thanked: 43 times
- Been thanked: 26 times
Re: Zugriff auf RootFS der unbenutzten Bank
Janus
Grade aus dem Kopf heraus.
Der Kernel im NI ist ein 3.10.108 , wenn ich das noch richtig im Kopf habe.. Wird im Prinzip dann wieder umbenannt in 3.10.93.
Also werden auch alle Module für den NI Kernel auf 3.10.108 gebaut.
Ergo, wenn du Bellums BS nutzen willst, neben NI, muss Bellums auch mit NI Kernel gebaut werden.
Das habe ich aber nie ausprobiert.
Nur halt im yocto von Markus. Hab aber die Änderungen damals nicht ins git hochgeladen.
Wenn du da Interesse hast, muss ich nochmal nachschauen.
Macht ja für mich eigentlich nur dann Sinn, wenn man auch unterschiedliche Images nutzt, oder NI so baut, das du für jedes Image auch getrennt /var nutzen kannst.
Zumindest bin ich dieser Meinung.
gr. Knicko
Grade aus dem Kopf heraus.
Der Kernel im NI ist ein 3.10.108 , wenn ich das noch richtig im Kopf habe.. Wird im Prinzip dann wieder umbenannt in 3.10.93.
Also werden auch alle Module für den NI Kernel auf 3.10.108 gebaut.
Ergo, wenn du Bellums BS nutzen willst, neben NI, muss Bellums auch mit NI Kernel gebaut werden.
Das habe ich aber nie ausprobiert.
Nur halt im yocto von Markus. Hab aber die Änderungen damals nicht ins git hochgeladen.
Wenn du da Interesse hast, muss ich nochmal nachschauen.
Macht ja für mich eigentlich nur dann Sinn, wenn man auch unterschiedliche Images nutzt, oder NI so baut, das du für jedes Image auch getrennt /var nutzen kannst.
Zumindest bin ich dieser Meinung.
gr. Knicko
MAKE NEUTRINO GREAT AGAIN!