cellerier.net

OpenWrt for dummies

Le but de la manip est d'avoir le / en NFS ce qui permet d'avoir plus 2 Mo (ou 4 Mo pour ceux qui ont de la chance) de disponible pour installer des programmes.

Le site web d'OpenWRT au cas où : http://openwrt.org.

flashage

sur un pc :

ATTENTION
WARNING
ACHTUNG

Ne pas oublier de changer boot_wait avant de poursuivre. pour plus d'infos sur cette manip consultez le site web d'OpenWRT.

tftp 192.168.1.1
tftp> binary
tftp> rexmt 1
tftp> trace
Packet tracing on.
tftp> put openwrt-g-code.bin

install de la borne

dans toute la suite, ne pas hésiter à rebooter souvent ...

telnet 192.168.1.1

si premier boot sur la borne

firstboot

avoir le dhcp sur la borne au démarrage. vérifier que le serveur dhcp est bien configuré ...

cd /etc
rm nvram.overrides
cp /rom/etc/nvram.overrides .
vi nvram.overrides
commenter NVRAM_lan_proto="static"
nvram set lan_proto="dhcp"
nvram commit
reboot

vérifier route ...
si y'a des merdes "nvram show | grep wan"

installer ssh

ipkg update
ipkg install dropbear
/etc/init.d/S51dropbear

vérifier que le ssh marche
rebooter
vérifier que le ssh marche toujours

rm /etc/init.d/S50telnet

Tada ! y'a plus de open telnet. C'est quand même plus secure.

installer ntp

ipkg install ntpclient
ntpclient -h 138.195.130.71

installer et utiliser nfs

ipkg install kmod-nfs
insmod sunrpc
insmod lockd
insmod nfs
mkdir /mnt/nfs
mount -t nfs muscipula:/home/via/flowerpower /mnt/nfs -o nolock

préparer le nfs pour le monter en / au démarrage

mkdir /mnt/nfs/jffs
mkdir /mnt/nfs/mnt
mkdir /mnt/nfs/proc
ln -sfn /jffs/rom /mnt/nfs/rom
cp -a /bin /dev /etc /lib /sbin /tmp /usr /var /www /mnt/nfs

monter le nfs en / au démarrage

cd /etc
cp preinit postinit
vi postinit

Il faut ensuite mettre ça dans postinit :

 #!/bin/sh
 # executed from jffs2 after init to
 # transfer root to the nfs partition

 insmod sunrpc
 insmod lockd
 insmod nfs
 mount -t nfs 138.195.157.14:/home/via/flowerpower /mnt/nfs -o nolock
 pivot_root /mnt/nfs /mnt/nfs/jffs
 #le nfs est maintenant /
 #l'ancien / est dans /jffs
 mount none /dev -t devfs
 mount none /proc -t proc 
 umount /jffs/proc /jffs/dev

tester :

/etc/postinit

si plus rien ne marche ... hard reboot ... lalala
si le mount -t nfs ne marche pas ... essayer de voir route ...

dans une configuration avant pivot_root :

ln -sfn /etc/postinit /etc/init.d/S42postinit

ATTENTION : toutes les actions après S42 sont effectuées sur le nfs

après un pivot_root :

ln -sfn /jffs/etc/init.d/S10boot /etc/init.d/S10boot
ln -sfn /jffs/etc/init.d/S40network /etc/init.d/S40network
ln -sfn /jffs/etc/init.d/S42postinit /etc/init.d/S42postinit

ATTENTION : ces scripts utilisent les fichiers de conf dans /jffs/etc

administration des interfaces

ipkg install admcfg
insmod adm
admcfg
openwrt/nfsinstall.html - © Antoine Cellerier 2004-2005 - Created with vim - XHTML 1.1 - CSS 2.0