#!/bin/sh # 2000-08-10 Rafael Skodlar # Backup my home dir USER=raffi HOME=/home/$USER DATE=`date '+%Y%m%d'` #DST_DIR=/mnt/hdd/$USER DST_DIR=/mnt/sdb/$USER #DST_DIR=/home/images/$USER IMG=${DST_DIR}.img DOT_DIRS=".predict .radio .gnupg .ssh .gcombust .jpilot .kde* .xawtv .xmms" DOT_FILES=".bash_profile .bashrc .nedit .predict .radio .screenrc .signature .vimrc .xawtv .Xdefaults .xfig* .netscape/bookmarks.html" SRC_DIRS="Mail admin bin code electronics grafix info linux mail mmedia nsmail projects radio research science technology visor www zaurus" CDSIZE=640000 TREE_FILES=${DST_DIR}/home.files TREE_DIRS=${DST_DIR}/home.dirs cd $HOME function loop() { echo -e "To create CD image:\n" echo -e "dd if=/dev/zero of=${IMG} bs=1k count=${CDSIZE}\n" echo -e "losetup -e des /dev/loop0 $DST_DIR\nmke2fs /dev/loop0\nmount /dev/loop0 $IMG\nchown $USER.$USER $DST_DIR\n" echo -e "$0 -b\n" } case "$1" in -b) if [ -d $DST_DIR ]; then tar cvf $DST_DIR/$USER-$DATE.tar $DOT_DIRS $DOT_FILES $SRC_DIRS chmod 600 $DST_DIR/$USER-$DATE.tar tree > $TREE_FILES tree > $TREE_DIRS ls -l $DST_DIR/$USER-$DATE.tar $TREE_DIRS $TREE_FILES else echo "$DST_DIR not available." df fi ;; -s) TOTAL=0 for file in `echo $DOT_DIRS $SRC_DIRS` do SPACE=`du -sk $file | cut -f 1` let TOTAL=$TOTAL+$SPACE done echo -e "--------------------------------------------------------\nTotal Space needed: $TOTAL kB\n" echo -e "dd if=/dev/zero of=${IMG} bs=1k count=${TOTAL}\n" loop ;; *) echo -e "--------------------------------------------------------\nUsage: $0 [ -b | -s ]\n\t-b backup\n\t-s space needed\n" loop exit 1 esac