1#!/bin/sh
2#
3# Run a simple backup
4#   then restore it.
5#
6TestName="weird-files2-test"
7JobName=weird-files2
8. scripts/functions
9
10if test ! -d weird-files ; then
11   echo " "
12   echo "weird files not configured. Test not run."
13   exit 0
14fi
15scripts/cleanup
16scripts/copy-test-confs
17change_jobname NightlySave $JobName
18
19rm -rf weird-files2
20cp -Rp weird-files weird-files2
21echo "${cwd}/weird-files2" >${cwd}/tmp/file-list
22cd weird-files2
23#perl socket.pl     # we no longer restore sockets
24cd ..
25
26start_test
27
28${bin}/btestls weird-files2 | sort >${cwd}/tmp/original
29
30cat <<END_OF_DATA >tmp/bconcmds
31@$out /dev/null
32messages
33@$out tmp/log1.out
34label storage=File volume=TestVolume001
35run job=$JobName yes
36wait
37messages
38@output
39quit
40END_OF_DATA
41
42run_bareos
43check_for_zombie_jobs storage=File
44#
45# Now mess up the a hard link, and a soft link
46#
47cd weird-files2
48rm -f hard-file2
49ln hard-file3 hard-file2
50rm -f soft-file2
51ln -s soft-file3 soft-file2
52cd ${cwd}
53cat <<END_OF_DATA >tmp/bconcmds
54@$out /dev/null
55messages
56@#
57@# now do a restore
58@#
59@$out tmp/log2.out
60restore where= storage=File
615
62unmark *
63mark *
64done
65yes
66wait
67messages
68quit
69END_OF_DATA
70
71run_bconsole
72check_for_zombie_jobs storage=File
73stop_bareos
74
75${bin}/btestls weird-files2 | sort >${cwd}/tmp/restored
76
77check_two_logs
78diff -u ${cwd}/tmp/original ${cwd}/tmp/restored 2>&1 >/dev/null
79#diff -u ${cwd}/tmp/original ${cwd}/tmp/restored
80dstat=$?
81if test $dstat -ne 0; then
82   diff -u ${cwd}/tmp/original ${cwd}/tmp/restored
83fi
84
85end_test
86