Commande groupée de Sheeva Plug
Quoi ?
Combien ça coûte ?
- Commande du 02/11/2009, reçue le 07/12/2009: 11 unités à 875,49 € + 19,26 € (commission) + ???,?? € (douane), soit 81,34 € + ε par unité.
Comment ?
Copier un système dans la flash interne
- créer une image jffs2 du système de fichiers racine, en utilisant une autre machine, et en s'assurant qu'il reste suffisamment de place:
# cd /path/to/mounted/rootfs # mkfs.jffs2 -r . -e 0x20000 -o /tmp/squeeze.jffs2 -l -t # cp /tmp/squeeze.jffs2 .
booter le sheeva plug avec le paramètre noyau additionnel suivant (variable bootargs d'u-boot):
mtdparts=orion_nand:0x100000@0x000000(u-boot),0x200000@0x100000(uImage),0x500000@0x300000(uInitrd),0x1f800000@0x800000(rootfs)
- les partitions mtd suivantes devraient alors être visible:
# cat /proc/mtd dev: size erasesize name mtd0: 00100000 00020000 "u-boot" mtd1: 00200000 00020000 "uImage" mtd2: 00500000 00020000 "uInitrd" mtd3: 1f800000 00020000 "rootfs"
- effacer les partitions mtd:
# flash_eraseall /dev/mtd1 # flash_eraseall /dev/mtd2 # flash_eraseall -j /dev/mtd3
- flasher les partitions mtd:
nandwrite -p /dev/mtd1 /boot/uImage nandwrite -p /dev/mtd2 /boot/uInitrd nandwrite -p /dev/mtd3 /squeeze.jffs2
mémoriser la taille de /boot/uImage et de /boot/uInitrd en hexadécimal
- rebooter dans u-boot:
>>> setenv bootcmd_nand 'nand read.e 0x400000 0x100000 0x<uImage-size>; nand read.e 0x800000 0x300000 0x<uInitrd-size>' >>> setenv bootcmd 'setenv bootargs $(bootargs_console) $(bootargs_mtd) root=/dev/mtdblock3 rootfstype=jffs2 ro; run bootcmd_nand; bootm 0x400000 0x0800000' >>> saveenv >>> boot