4 # initializing some variables
5 backup_date=`date | awk '{ print $3"."$2"."$6 }'`
9 # set the backup directory
10 if [ "$host" = "gate" ] ; then
11 mount -tnfs hackstation:/mnt/lfs/backup /mnt/nfs
13 elif [ "$host" = "sparc" ] ; then
14 mount -tnfs hackstation:/mnt/lfs/backup /mnt/nfs
16 elif [ "$host" = "mobile" ] ; then
17 mount -tnfs hackstation:/mnt/lfs/backup /mnt/nfs
19 elif [ "$host" = "right-hand" ] ; then
20 mount -tnfs hackstation:/mnt/lfs/backup /mnt/nfs
22 elif [ "$host" = "hackstation" ] ; then
23 backup_dir="/mnt/lfs/backup"
24 elif [ "$host" = "hdw" ] ; then
25 mount -tnfs hackstation:/mnt/lfs/backup /mnt/nfs
27 elif [ "$host" = "compaq" ] ; then
28 mount -tnfs hackstation:/mnt/lfs/backup /mnt/nfs
31 echo "pls adept the script for $host ..."
35 if [ ! -z "$2" ] ; then
36 if [ "$2" = "-backup_dir" -a -d $3 ] ; then
37 echo "using $3 as a backup directory ..."
42 # set kernel version(s) to store their .config
43 if [ -d /usr/src/linux ] ; then
44 kernel_num=`ls /usr/src/ | grep '^linux-' | sed 's/linux-//g'`
48 # which method to use?
49 if [ "$1" = "tar" ] ; then
51 elif [ "$1" = "dir" ] ; then
53 elif [ -z "$1" ] ; then
57 echo "usage: $0 [tar|dir] (-backup_dir /foo/bar)"
59 echo "tar: creates an archive called backup_${backup_date}.tar.bz2"
60 echo "dir: creates just the directory backup_${backup_date}"
66 if [ -d ${backup_dir}/${host}-backup-${backup_date} ] ; then
67 echo "u already did a backup today! remove it manually first!"
68 [ ! "$host" = "hackstation" ] && umount /mnt/nfs
72 mkdir $backup_dir/${host}-backup-${backup_date} && cd ${backup_dir}/${host}-backup-${backup_date}
77 mkdir ./${host}-conf && cd ./${host}-conf
79 for i in $kernel_num; do
80 if [ -f /usr/src/linux-${i}*/.config ] ; then
81 echo "copying /usr/src/linux/.config"
82 cp /usr/src/linux-${i}*/.config ./$host-kernel-${i}-config
87 for i in init.d conf opt ppp cups; do
88 if [ -d /etc/$i ] ; then
89 echo "copying /etc/$i"
94 for i in dhcpd.conf fstab hosts host.conf hosts.allow hosts.deny lilo.conf \
95 profile sendmail.cf resolv.conf exports fb.modes inetd.conf \
96 xinetd.conf mp3user mp3db.conf; do
97 if [ -f /etc/$i ] ; then
98 echo "copying /etc/$i"
103 if [ -f /etc/X11/XF86Config ] ; then
105 echo "copying /etc/X11/XF86Config*"
106 cp /etc/X11/XF86Config* ./etc/X11
110 # specific config stuff
112 # gate specific config stuff!
113 if [ "$host" = "gate" ] ; then
116 if [ -d /etc/mail ] ; then
117 echo "copying /etc/mail directory"
118 cp -r /etc/mail ./etc
123 [ -f /etc/opt/unrealircd/unrealircd.conf ] && \
124 cp /etc/opt/unrealircd/unrealircd.conf ./ircd
130 # data backup (specific)
131 cd ${backup_dir}/${host}-backup-${backup_date}
134 if [ "$host" = "gate" ] ; then
137 for i in `ls -A /var/mail`; do
139 echo "copying mail stuff"
140 cp /var/mail/$i ./mail_$i
145 if [ "$host" = "right-hand" ] ; then
147 for i in www cvs hdw; do
148 if [ -d /chroot/$i ] ; then
149 echo "copying /chroot/$i"
150 tar .cf ./chroot/$i.tar /chroot/$i
155 # hackstation / mobile / hdw / sparc specific data
156 if [ "$host" = "hackstation" -o "$host" = "mobile" -o "$host" = "hdw" -o "$host" = "sparc" -o "$host" = "left-hand" ] ; then
159 mkdir -p ./home/hackbard
161 for i in software store; do
162 [ -d /home/hackbard/$i ] && \
163 cp -r /home/hackbard/$i ./home/hackbard
165 if [ "$host" = "hackstation" ]; then
166 [ -d /home/hackbard/projects ] && \
167 cp -r /home/hackbard/projects ./home/hackbard
169 for i in xinitrc_evil xinitrc_wm .xinitrc GNUstep .Xauthority \
170 .Xdefaults .signature .directfbrc; do
171 [ -f /home/hackbard/$i ] && \
172 cp -r /home/hackbard/$i ./home/hackbard
174 [ -d /home/hackbard/.ssh ] && cp -r /home/hackbard/.ssh ./home/hackbard
177 if [ -d /tftpboot ] ; then
179 echo "copyinf tftpboot stuff"
180 cp -r /tftpboot/* ./tftpboot
184 for i in prism lucent; do
185 if [ -f /root/hunz_${i}.sh ]; then
187 cp /root/hunz_${i}.sh ./root
194 # data stuff (none specific)
197 cp -r $HOME/scripts ./
200 # finished copying stuff, entering last backup procedure now :)))
204 if [ "$method" = "tar" ] ; then
206 tar cf ./${host}-backup-${backup_date}.tar \
207 ./${host}-backup-${backup_date}
208 rm -r ./${host}-backup-${backup_date}
209 bzip2 ./${host}-backup-${backup_date}.tar
213 # end! umounting nfs shared backup directory
214 if [ "$host" != "hackstation" ] ; then
215 echo "umounting nfs backup - dir"
216 cd $HOME && umount /mnt/nfs