BusyBox v1.19.4 (2014-01-15 18:49:11 CET) built-in shell (ash)
Enter 'help' for a list of built-in commands.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
BARRIER BREAKER (Barrier Breaker, r39156)
-----------------------------------------------------
* ño Pour all ingredients into
* 4 oz cold Coffee an irish coffee mug filled
* 1 1/2 oz Dark Rum with crushed ice. Stir.
* 2 tsp. Creme de Cacao
-----------------------------------------------------
root@ar5387:/# df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 7457488 39272 7023004 1% /
/dev/root 5632 5632 0 100% /rom
tmpfs 30712 248 30464 1% /tmp
/dev/sda1 7457488 39272 7023004 1% /
tmpfs 512 0 512 0% /dev
root@ar5387:/#
Capitán, traigo buenas noticias desde el frente y además he aprendido en las trincheras. Al
enemigo le hemos podido hacer extroot satisfactoriamente...
Y con esto quiero compartir mi experiencia con extroot y openwrt que a tenor de mis últimos
post en este hilo se me estaba resistiendo y con razón...
Tal y como había sospechado no podía hacer extroot porque en el momento de intentar hacerlo,
openwrt no encontraba el dispositivo, pero ¿por qué?. Creo que he encontrado la razón y que
me corrijan si me equivoco: el módulo responsable de cargar ext4, kmod-fs-ext4 no lo tenía
cargado en la imagen que quemé en el router, sino que la tenía como módulo compilado y fue
cargada luego en el router (suponía que la compatibilidad ext4 se lograba con kmod-fs-autofs4
y fíjate tú por dónde, que no). De tal forma, el módulo ext4 cayó bajo el sistema de
archivos jffs2, sistema de archivos que NO ESTA INICIALIZADO en el momento de hacer extroot,
así que de esa manera no podía encontrar la forma de montar el pincho USB para hacer
extroot.
Las buenas noticias son que tras recompilar una imagen incorporando kmod-fs-ext4 en los
módulos principales he conseguido hacer tanto overlay como pivot root.
Dado que los módulos deben estar todos en el sistema de archivos squashfs para poder hacer
extroot, creo que el requerimiento se debería poner en el post principal de este tutorial,
para intentar evitar que otros que vengan después se partan la cabeza con una tarea similar.
Además creo que otras funcionalidades que requieran que los módulos estén cargados en el
preinit y que hayan sido cargados después como módulos (como en el caso de MMC over SPI)
pueden verse afectadas ya que no habrán sido cargados dichos módulos para obtener la
funcionalidad deseada en el momento de hacer extroot... así que, por favor, incorporad como
requisito que
todos los módulos que se necesiten para hacer funcionar dispositivos externos
deben estar cargados en la imagen precompilada o no se podrán hacer funcionar a posteriori.En vista de lo anterior, ¿existe alguna posibilidad de inicializar el sistema de archivos
jffs2 antes de hacer extroot, cargar los módulos necesarios y después desmontar jffs2?.
P.D.: también parcheé kexec por una advertencia que he visto y que hacía que no funcionara,
pero no creo que esto haya tenido que ver ya que lo tengo compilado como módulo y ni
siquiera lo he instalado:
https://www.mail-archive.com/openwrt-devel@lists.openwrt.org/msg22170.htmlP.P.D: al hacer extroot funciona perfectamente la detección por uuid, de hecho tras hacer un
block detect sólo hay que editar un par de caracteres para tener un fstab funcional.