velice podobny problem jsem jiz jednou resil. pustit tar na pozadi, dat mu cilovy archiv a jako seznam souboru mu dat input file, ktery ale ve skutecnosti bude FIFO file(jmenna pipa). No pak uz jenom cyklus, kterej do ty pipy bude davat jmena souboru(ve vasem pripade tak po davkach 10 souboru), pak mu da nejakej neexistujici jmeno, a az se v STDERR tar-u ukaze chybova hlaska, mame zapsano na disk v archivu, zkontrolujeme velikost, pokud malo, zopakujeme, pokud akorat, posleme EOF, tar se ukonci, spustime ho znova s dalsim archivem a a furt dokola z do konce
Me to takhle funguje na rozdeleni cca 8TB pole na ~1600GB LTO3 pasky... Prikladam dulezite casti kodu:
# cekani na chybovou hlasku neexistujiciho souboru v logu TAR-u. Az teprve potom vim, ze je vsechno ulozeny a ceka se na dalsi soubor...
${TAIL_PATH} ${FILENAME_STATUS} 2>/dev/null| ${GREP_PATH} ${NON_EXISTING_FILENAME} > /dev/null 2>&1
# vytvoreni FIFO souboru,kerym se TARu predavaji jmena souboru, ktera ma pridat do archivu...
${MKFIFO_PATH} ${FILENAME_FIFO}
# spusteni TARu na pozadi, ktery vytvari vlastni archiv ${BACKUP_DST}, cte seznam souboru z ${FILENAME_FIFO}, vystup pise do ${FILENAME_STATUS}, vcetene STDERR
${CAT_PATH} ${FILENAME_FIFO} | ${TAR_PATH} -c -T - -f ${BACKUP_DST} 2>&1 | ${TEE_PATH} -a ${FILENAME_STATUS} >> ${BACKUP_REPORT} &
# vkladani jmena souboru/adresaru do FIFO pro TAR....
${ECHO_PATH} `dirname ${vmx}`
PS: vsechny promenny, ktery koncej _PATH jsou jenom cesty k realnym binarkam, takze treba CAT_PATH=/bin/cat
Bohuzel nevidim moznost prikladani priloh, jinak byc sem dal celej skript, jestli budete chtit pomoct, rad pomuzu na adrese
root@safar.info. Sale skript za vas psat nebudu