--- elwix/config/etc/default/rc.cfg 2014/09/15 19:06:44 1.2 +++ elwix/config/etc/default/rc.cfg 2017/06/18 22:20:21 1.3.2.3 @@ -2,14 +2,16 @@ # # U-boot cfg nand map load/save management script # -# $Id: rc.cfg,v 1.2 2014/09/15 19:06:44 misho Exp $ +# $Id: rc.cfg,v 1.3.2.3 2017/06/18 22:20:21 misho Exp $ CFG_NAND_LIST="/etc/cfg.map" CFG_NAND_MAP="/dev/ada0g" CFG_NAND_SIZE=262144 -UPGRADE_GPIO_PINS="" +UPGRADE_GPIO_PINS="1 2 3" +ELWIX_CFG_BACKUP_NAME="elwix_cfg_$(hostname).bin" + cd ${2:-/etc} case "$1" in @@ -45,12 +47,13 @@ case "$1" in echo "ELWIX starting restore process from ${ELWIX_REMOTE_HOST}" fetch -q -o- --user-agent=ELWIX_Restore --allow-sslv2 \ - --no-verify-peer --no-verify-hostname ${ELWIX_REMOTE_HOST} | \ + --no-verify-peer --no-verify-hostname \ + ${ELWIX_REMOTE_HOST}/${ELWIX_CFG_BACKUP_NAME} | \ imgupd -R -is ${CFG_NAND_SIZE} -f ${CFG_NAND_MAP} || exit 1 echo "ELWIX restore process complete. Now rebooting system ..." ;; backup) - ELWIX_REMOTE_HOST="/tmp/elwix_cfg.bin" + ELWIX_REMOTE_HOST="/tmp/${ELWIX_CFG_BACKUP_NAME}" echo "ELWIX starting backup process to ${ELWIX_REMOTE_HOST}" imgupd -gs ${CFG_NAND_SIZE} -f ${CFG_NAND_MAP} ${ELWIX_REMOTE_HOST} || exit 1 @@ -61,12 +64,22 @@ case "$1" in echo " You can upload now elwix_firmware.bin image to device with \"firmware\" name!!!" echo " Example: put elwix_firmware.bin firmware" for i in ${UPGRADE_GPIO_PINS}; do - gpioctl $i 1 >/dev/null 2>&1 + gpioctl $i 1 >/dev/null 2>&1 || pceng "$i=0" >/dev/null 2>&1 done TFTPd -wR ;; + pkg_save) + echo "ELWIX syncing information about installed packages into storage" + cfexec tar -czvf /elwix/altroot/pkg/db/pkgz.tar.gz /var/db/pkg/* + echo "ELWIX sync process complete." + ;; + pkg_load) + echo "ELWIX loading information about installed packages from storage" + tar -xzvpf /elwix/altroot/pkg/db/pkgz.tar.gz -C / + echo "ELWIX load process complete." + ;; *) - echo "Missing parameter - available options are (load | save | erase | backup | restore | upgrade)" + echo "Missing parameter - available options are (load | save | erase | backup | restore | upgrade | pkg)" ;; esac