#!/bin/sh # # Copyright (C) 2000-2015 Kern Sibbald # License: BSD 2-Clause; see file LICENSE-FOSS # # # Create a 60MB file with random bytes. Back it up to 6 Volumes # each constrained to 10MB using the automatic labeling feature. # TestName="six-vol-test" JobName=SixVol . scripts/functions if test ! -c /dev/urandom ; then echo "No random device. Test skipped.\n" exit 0 fi scripts/cleanup scripts/copy-testa-confs # copy special conf file /bin/cp -f scripts/testb-bacula-dir.conf bin/bacula-dir.conf echo "${cwd}/tmp/largefile" >${cwd}/tmp/file-list # Create 56MB file with random data echo "Creating a 56MB file with random data ..." dd if=/dev/urandom of=${cwd}/tmp/largefile bs=1024 count=55000 >/dev/null 2>&1 echo "largefile created" change_jobname MultiVol $JobName start_test cat <${cwd}/tmp/bconcmds @output /dev/null messages @$out ${cwd}/tmp/log1.out setdebug level=50 storage=File run job=$JobName storage=File yes run job=$JobName storage=File yes run job=$JobName storage=File yes run job=$JobName storage=File yes run job=$JobName storage=File yes wait list volumes messages @# @# now do a restore @# @$out ${cwd}/tmp/log2.out sql select * from JobMedia where JobId=4; select * from JobMedia where JobId=5; setdebug level=50 storage=File restore where=${cwd}/tmp/bacula-restores select storage=File unmark * mark * done yes wait messages quit END_OF_DATA run_bacula check_for_zombie_jobs storage=File stop_bacula check_two_logs #diff ${cwd}/tmp/largefile ${cwd}/tmp/bacula-restores${cwd}/tmp/largefile 2>&1 >/dev/null diff ${cwd}/tmp/largefile ${cwd}/tmp/bacula-restores${cwd}/tmp/largefile dstat=$? end_test