Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/do_backup.sh
blob: 5db9ca7679cb0dc75c1bd19d487817bf665e4836 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!/bin/bash

serial_file=/ofw/serial-number
user_cfg=/home/olpc/.sugar/default/config
timestamp=`date +%s`
data=/home/olpc/.sugar/default/datastore/store
parsing_scr=jparser
log=do_backup.log

# copying stderr and stdout in a log file
exec > >(tee -a $log)

echo ---- Starting do_backup script: `date -d @$timestamp` ---- >> $log

if [ -n "$1" ]; then
  data=$1
fi

if [ ! -d "$data" ]; then
  echo "Error, $data does not exists!"
  exit 1
fi

#
# Finding username if exists
#

if [ -f "$user_cfg" ]; then 
  nickname=`grep nickname $user_cfg |sed "s/.*= //"`
  echo "Backuping $nickname"
fi

#
# Catch serial number if exists
#   else gonna use timestamp instead
#

if [ -f "$serial_file" ]; then
  serial=$(cat $serial_file)
else 
  serial=$timestamp
fi


if [ -f "$parsing_scr" ]; then
  echo Metadata parsing
  ./$parsing_scr -f $serial $data $serial 1>/dev/null # -f format, name to use, directory, target
  cat ${serial}/*_simple.txt
elif [ ! -e "$serial" ]; then # the parsing script would have created it by itself
  mkdir $serial
fi
echo Backup in progress
tar cjf $serial/${serial}.bz2 ${data} 2>/dev/null #&
#while `kill -0 $!`; do 
#done
echo "The backup is in $serial"
echo "" >> $log
echo "" >> $log