#!/bin/sh export DATE="12.4.2010";SCRIPT=${0#/rom} export TITLE="Administração: Reiniciar" . ${SCRIPT%/*}/cgi-bin-pre.sh cat<Administração: Reiniciar EOF if [ "$REQUEST_METHOD" = "POST" ]; then read QUERY_STRING fi if [ -z "$QUERY_STRING" ]; then ff_firmware= if ! grep -q ff_reset /rom/etc/preinit /etc/preinit>/dev/null 2>&1; then ff_firmware='" DISABLED="DISABLED' fi cat<
Reiniciar normalmente
Reiniciar no modo Failsafe
Reiniciar no modo ReadOnly (para update de firmware)
Reiniciar e inicializar ("formatar disco JFFS2", duração: 2 minutos) EOF if [ '"nvram"' = "$(grep mtd3: /proc/mtd|if read line; then set $line;echo $4;fi)" ]; then cat<
Reiniciar com a configuração do Bootlader. Esta opção só foi testada para aparelhos do tipo Linksys WRT54G + WRT54GS! Para aparelhos Siemens SE505 deve-se salvar as variáveis NVRAM (et0macaddr e il0macaddr) manualmente e depois reproduzi-las na consola EOF fi cat<
 
   
EOF if [ "$(nvram get boot_wait)" != "on" ]; then cat<Nota: A configuração boot_wait tem o valor actual "$(nvram get boot_wait)". Para em caso de emergência ser possíviel carregar um novo Firmware via TFTP, este valor será definido como "on".

EOF fi if [ -n "$ff_firmware" ]; then cat<Atenção: As várias opções de reiniciar só poderão ser usadas como o firmware do Freifunk.

EOF fi else IFS=\&;set ${QUERY_STRING%%[^%&=+-:@-_a-z~]*};unset IFS;eval $* DIRTY= if [ -n "$post_reset" ]; then if [ "$ff_reset" = "killnvram" ]; then if [ '"nvram"' = "$(grep mtd3: /proc/mtd|if read line; then set $line;echo $4;fi)" ]; then mtd erase /dev/mtd/3 fi else for V in ff_reset boot_wait; do eval "C=\$$V" C=$(httpd -d "$C") if [ "$C" != "$(nvram get $V)" ]; then DIRTY=1 nvram set $V="$C" fi done test -n "$DIRTY" && nvram commit>/dev/null 2>&1 fi cat< O aparelho será reiniciado. Aguarde... EOF if [ "$ff_reset" = "failsafe" ]; then cat<

Dica: No modo Failsafe o equipamento tem sempre o endereço IP 192.168.1.1. Durante a reinicialização pode usar este tempo para reconfigurar a placa de rede do PC, por exemplo com o endereço IP 192.168.1.2 .

EOF elif [ "$ff_reset" = "format" ] || [ "$ff_reset" = "killnvram" ]; then cat< EOF else cat< EOF fi sh -c "sleep 2;reboot">/dev/null 2>&1 & fi fi . ${SCRIPT%/*}/cgi-bin-post.sh