Решение: разбивать архив кусками не более 4Гбайт.
Скрипт для бэкапа:
Код:
#!/bin/sh
# - do bigtemp backup -
mkfifo /tmp/bigtemp.fifo
split -b 2G /tmp/bigtemp.fifo bigtemp/bigtemp.tar. &
tar -cvf /tmp/bigtemp.fifo /mnt/bigtemp >bigtemp.out 2>bigtemp.err
rm -f /tmp/bigtemp.fifo
# done
Скрипт для развертывания (на основе предыдущего, но обленился и ввел переменные, в первом параметре надо вбить "имя" архива, на основании которого даются имена файлов, каталогов и т.п.; к тому же, переменные == гибкость и меньше ошибок при вводе параметров):
Код:
#!/bin/sh
# - do extract -
AR_NAME=$1
AR_FIFO=/tmp/${AR_NAME}
AR_MYDIR=/mnt/tmp-c/backups/askinfra-20090124-001
cd /
mkfifo ${AR_FIFO}
tar -xvf ${AR_FIFO} >${AR_MYDIR}/${AR_NAME}.extr.out \
2>${AR_MYDIR}/${AR_NAME}.extr.err &
cat ${AR_MYDIR}/${AR_NAME}/${AR_NAME}.tar.* >${AR_FIFO}
rm -f ${AR_FIFO}
sync ; sync
# done