diff options
Diffstat (limited to 'package/base-files/extra/sbin/update')
-rwxr-xr-x | package/base-files/extra/sbin/update | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/package/base-files/extra/sbin/update b/package/base-files/extra/sbin/update index 10d6e58c2..0cd4ee713 100755 --- a/package/base-files/extra/sbin/update +++ b/package/base-files/extra/sbin/update @@ -6,9 +6,6 @@ if [ $who -ne 0 ]; then exit 1 fi -cd / -umount -f /etc -mount -o remount,rw / check_exit() { if [ $? -ne 0 ];then @@ -17,17 +14,26 @@ check_exit() { fi } +prepare() { + cd / + umount -f /etc + mount -o remount,rw / +} + extract_from_file() { + prepare cat $1 | gunzip -c | tar -xf - check_exit } extract_from_ssh() { + prepare ssh $1 "cat $2" | gunzip -c | tar -xf - check_exit } extract_from_http() { + prepare wget -O - $1 | gunzip -c | tar -xf - check_exit } |