Voici quelques questions-réponses sur l'utilisation du mod et sa structure
Comment formatter une clé usb en ext2 sans linux ?
utiliser (par exemple) gparted live sur CD ou clé USB
http://gparted.sourceforge.net/livecd.php
Comment repartir de zero ?
effacer le répertoire sto (ou renommer le ) sur la clé branché sur un pc linux ;
recréer le répertoire et réinstaller l'archive ;
attention le fichier /etc/config/openbox est conservé dans la flash de la box (l'effacer pour un vrai retour à zero)
rebooter avec la nouvelle clé en mode rootfs=usb
Comment changer le mot de passe ?
seul le compte ob4 peut changer son mot de passe
utiliser la commande passwd ob4
les fichiers initiaux /etc/passwd et /etc/shadow sont copiés dans /etc/passwd.old et /etc/shadow.old
Comment basculer entre le mode basic et expert ?
Utiliser la page cachée
http://box/openbox/config
Structure du mod
lors du boot, une fois le pivot-root effectué, le mod introduit le lancement précoce de
/etc/init.d/openbox (lien de /etc/rc.d/S12openbox)
ce script fait actuellement :
- modification du fs en créant les fichiers suivants dans l'arborescence sto/ à partir des originaux du fs (en fait ils sont écrasés (copie dans / = fsoriginal +sto/)
- /etc/banner (remplacemetn log neufbox par logo openbox)
/www/fcgiroot/tpl/menu.html
/etc/init.d/firewall (ouverture totale du port ssh)
créations des liens avec /bin/busybox2 pour les fonctions suivantes (si elles ne sont pas présentes) :
gunzip gzip less mktemp more netmsg netstat pidof stat tar zcat
depmod hwclock modprobe start-stop-daemon switch_root
bunzip bzcat bzip2 crontab diff dirname dos2unix find hostid id length nc passwd pgrep pkill printf sort tee tr unix2dos which xargs
crond httpd rdate
remplacement wget par un script lançant wget-nossl --bind-address=ip_adsl
création du fichier de configuration d'openbox (/etc/config/openbox.conf)
/etc/lighttpd/lighttpd.conf (création à partir de celui du fs et mise en place dela gestion de l'onglet openbox)
lancement des scripts :
- /etc/init.d/noupdate : blocage des MàJ de SFR
- /etc/init.d/opb_start : lancement des scripts (/etc/init.d/opb_xxx) des fonctions openbox
/etc/init.d/opb_start
ce script va :
- attendre la mis en place logique du réseau
while [ ! -e /var/state/services ]; do sleep 1; done
incorporer le nom d'hote openbox dnas le fichier /etc/hosts
lancer une liste de scripts opb_xxx correspondant aux fonctions du mod
/etc/init.d/opb_xxx
chaque script opb_xxx permet de lancer ou arrêter la fonction (restart aussi grâce à la ligne initiale #!/bin/sh /etc/rc.common)
La fonction start récupére les paramètres de la fonction dans le fichier /etc/config/openbox.conf avec la commande
grep "^xxx" $OPBCONF > /tmp/opbtmp
et initialiser ces paramètres pour le script avec la commande
./tmp/opbtmp
en fonctions des valeurs des paramètres (... et idéalement de l'état du process xxx)
le script effectue :
- la gestion des fichiers de configuration de la fonction
- le lancement des commandes de la fonction soit directement (pure-ftpd) ou indirectement via un script lancé via dtach
La fonction stop récupère les paramètres de la fonction dans le fichier /etc/config/openbox.conf (cf. start) et effectue la gestion des fichiers de configuration et des process pour un retour à l'état avant start.
Nota : il faut aussi gérer l'état des paramètres dans le fichier /etc/config/openbox.conf
Onglets de la page Openbox
A chaque onglet la page Openbox est associé un ensemble de scripts shell permettant d'activer et de gérer les fonctionnalités du mod
/www/openbox/xxx_opb ou /www/openbox/yyy