Fonera 2.0, instalacion de sistema en USB

Bueno pues este fin de semana me he dedicada a darle algunas vueltas mas a la fonera, en este caso una Fonera 2.0 (mod.2202). El tema este de las foneras es algo que ya había andado bastante, pero en su día me "pelee" mas con la 2100. Aqui dejo la pagina que puse en su dia con info sobre esta y algun router mas https://sites.google.com/site/lsdios/Home Bien lo que vamos ha hacer por un lado darle capacidad extra de almacenamiento a la Fonera, y montar el sistema de archivos así como una partición swap para aumentar la RAM utilizando el puerto USB que trae la Fonera Para ello he utilizado una memora USB de 2Gb aunque se puede utilizar de cualquier otra capacidad, incluso un HD externo, siempre y cuando lo alimentemos de manera externa ya que el puerto USB de la Fonera no nos da suficiente tensión Bien, lo primero sera flashear la Fonera con el firmware Openwrt Backfire 10.03.1 RC4 (yo lo he hecho con este que es el ultimo estable. Los archivos necesarios son estos:

http://downloads.openwrt.org/backfire/10.03.1-rc4/atheros/openwrt-atheros-root.squashfs

http://downloads.openwrt.org/backfire/10.03.1-rc4/atheros/openwrt-atheros-vmlinux.lzma

Para flashear la Fonera de manera sencilla se puede utilizar Fon Flash lo puedes descargar de aquí:

http://www.gargoyle-router.com/downloads/fon-flash/fon-flash-linux.tar.gz (version para Linux)

http://www.gargoyle-router.com/downloads/fon-flash/fon-flash-linux-64bit.tar.gz (version para Linux 64-bit

http://www.gargoyle-router.com/downloads/fon-flash/fon-flash-windows.zip (version para windows)

bien una vez tengamos la Fonera flasheada y con Openwrt corriendo en ello, conectamos la Fonera al router y a nuestro PC. Posiblemente tengamos que cambiar al configuración de la Fonera para que esta tenga acceso a internet. Si al configuración de nuestra red es del rango 192.168.1.x deberemos entrar en la Fonera bien sea por web o por telnet y cambiar al configuración de la red local a otro rango, como por ejemplo 192.168.10.x, asignándole a la Fonera la ip 192.168.10.1, para hacer esto si lo hacemos por web accederemos desde el navegador a la dirección 192.168.1.1, aparecerá la pantalla de login, como no hemos puesta contraseña dejaremos la contraseña en blanco y pulsaremos sobre "login". Una vez logeados vamos a network/general y cambiamos "IPv4-Address" de la sección Local network por 192.168.10.1. Si prefieres hacerlo por terminal, accedemos a la Fonera por telnet:

Comando:

telnet 192.168.1.1

y una vez que hallamos accedido, editaremos el archivos /etc/config/network y cambiamos "option 'ipaddr" de la sección "'interface' 'lan'" y nos debería quedar lo como sigue:

/etc/config/network

config 'interface' 'lan'

option 'type' 'bridge'

option 'proto' 'static'

option 'netmask' '255.255.255.0'

option 'ifname' 'eth0.1'

option 'ipaddr' '192.168.10.1'

'

guaradamos y reiniciamos la red con

Comando

/etc/config/network restart

posiblemente deberemos de reiniciar también la conexión del PC o podemos desconectar y volver a conectar la Fonera Una vez hecho esto entramos de nuevo en al Fonera por telnet y comprobamos que esta tenga acceso a internet, con un ping a google por ejemplo. Una vez comprobado que tenemos acceso a internet pasaremos a actualizar los repositorios e instalar los paquetes necesarios para utilizar el USB.

Comando

opkg update

opkg install kmod-usb2 kmod-usb-storage kmod-fs-ext2 kmod-fs-ext3 kmod-fs-vfat block-hotplug block-extroot

Una vez instalados los paquetes y sus dependencias, reiniciamos la Fonera y ya podemos pinchar el USB, pero antes lo preparamos creando 3 particiones en el USB de la siguiente manera partición 1 -> fat32, y de 1,3Gb en mi caso, la utilizaremos para el directorio /home, partición 2 -> ext3, de 300Mb, para el sistema partición 3 -> swap, de 300mb, para área de intercambio, así aumentaremos la RAM de la Fonera Con las particiones ya creadas y formateadas, lo pinchamos en la Fonera, y pasamos a montar la partición de sistema y copiar allí los archivos del mismo.

Comandos

mount -t ext3 -o rw /dev/sda2 /mnt

mkdir /tmp/root

mount -o bind /rom /tmp/root

cp /tmp/root/* /mnt -a

umount /tmp/root

umount /mnt

Ahora vamos a editar el archivo /etc/config/fstab y editamos la sección mount y la dejamos como sigue (la ultima linea tendremos que añadirla)

/etc/config/fstab (parte)

config mount

option target /overlay

option device /dev/sda2

option fstype ext3

option options rw,sync

option enabled 1

option enabled_fsck 1

option is_rootfs 1

guardamos y antes de reiniciar cambiaremos el archivos /etc/banner, para diferenciar cuando se a iniciado desde la ROM interna o desde el USB, para ello escribiremos:

Comando

echo "Iniciado desde ROM interno" >> /etc/banner

y reiniciamos la Fonera

Comando

reboot & exit

deberemos reiniciar también la conexión de red del PC (desconectando y conectando el cable de red) ya que al iniciar ahora volveremos a tener la configuración estándar de Openwrt, así que como hemos hecho al principio para que pueda tener conexión a internet debemos cambiar la configuración de la red local y volver a reiniciar al Fonera Para comprobar que el sistema de archivos esta montado desde el USB podemos utilizar el comando df -h nos debería de dar algo parecido a esto:

Terminal

root@OpenWrt:/# df -h

Filesystem Size Used Available Use% Mounted on

/dev/root 1.6M 1.6M 0 100% /rom

tmpfs 14.3M 48.0K 14.3M 0% /tmp

tmpfs 512.0K 0 512.0K 0% /dev

/dev/sda2 288.6M 15.5M 258.2M 6% /overlay

mini_fo:/overlay 1.6M 1.6M 0 100% /

Ahora para poder montar la partición fat32 instalaremos los siguientes paquetes

Comando

opkg install kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1

ahora para que nos monte /dev/sda1 en /home probe a ponerlo en /etc/config/fstab pero no funciono y como el archivo /etc/fstab es solo un enlace decidi borrar dicho enlace y crear un archivo en lugar del enlace así que hice lo siguiente.

Comandos

cd /etc cat

fstab > fstab.bak

rm fstab

mv fstab.bak fstab

luego editamos el archivo y le añadimos los parámetros para montar /dev/sda1 en /home, nos quedaría así:

/etc/fstab

/dev/sda2 /overlay ext3 rw,sync 0 0

/dev/sda1 /home vfat rw,sync 0 0

guardamos los cambios y por ultimo hacemos que se monte al inicio, para ello:

Comando

echo "mount -a" >> /etc/init.d/done

y si no nos monta la partición de intercambio:

Comando

echo "swapon /dev/sda3" >> /etc/init.d/done

ahora reiniciamos la Fonera y cuando inicie montara todas las particiones del USB si este esta pinchado quedándonos así el sistema de archivos.

Terminal

root@OpenWrt:/# df -h

Filesystem Size Used Available Use% Mounted on

/dev/root 1.6M 1.6M 0 100% /rom

tmpfs 14.3M 44.0K 14.3M 0% /tmp

tmpfs 512.0K 0 512.0K 0% /dev

/dev/sda2 288.6M 16.5M 257.2M 6% /overlay

mini_fo:/overlay 1.6M 1.6M 0 100% /

/dev/sda1 1.3G 4.0K 1.3G 0% /home