#!/bin/sh CONFIG_MTDC=/dev/mtd6 CONFIG_DIR=/var/config FILES="network/interfaces \ ppp/options \ ppp/pap-secrets \ ppp/chap-secrets \ ppp/peers \ passwd \ group" case $1 in start) echo "Mounting ${CONFIG_DIR}" mkdir -p ${CONFIG_DIR} mount ${CONFIG_DIR} # Prepare flash for JFFS2 if mount fails if [ $? -ne 0 ]; then echo "Creating ${CONFIG_DIR}" flash_eraseall -j ${CONFIG_MTDC} mount ${CONFIG_DIR} fi # Default all config files if requested cd ${CONFIG_DIR} if [ -f force_defaults ]; then echo "Extracting default config files" tar -xvf /etc/defaults.tar.gz rm -f force_defaults fi # Extract any missing files TARFILES=`tar -tf /etc/defaults.tar.gz` for file in $TARFILES; do if [ ! -e $file ]; then tar -xvf /etc/defaults.tar.gz $file fi done # Create links in /etc for file in $FILES; do if [ ! -L /etc/$file ]; then echo "Creating link to ${CONFIG_DIR}/$file" rm -rf /etc/$file ln -sf ${CONFIG_DIR}/$file /etc/$file fi done ;; *) echo "Usage: $0 {start}" exit 2 ;; esac