Script
# /bin/bash PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH export LANG=C #參數修改 backupdir="/backup" # 想要備份的資料夾 targerdir="/backuptarger" # 暫存資料夾 host="XXX.XXX.XXX.XXX" # 遠端伺服器IP id="user" # 帳號 pw='password"' # 密碼 remotedir="/home/update/SQL" #備份到遠端的哪裡? #想要備份那些設定檔的存放路徑 #named=$backupdir/named #postfixd=$backupdir/postfix #vsftpd=$backupdir/vsftp sshd=$backupdir/ssh #sambad=$backupdir/samba wwwd=$backupdir/www #others=$backupdir/others #userinfod=$backupdir/userinfo pgsql=$backupdir/pgsql userhome=$backupdir/userhome #檢查目錄是否存在 for dirs in $backupdir $targerdir $sshd $wwwd $pgsql $userhome do [ ! -d "$dirs" ] && mkdir -p $dirs done #cp -a /var/named/chroot/{etc,var} $named #cp -a /etc/postfix /etc/dovecot.conf $postfixd #cp -a /etc/vsftpd/* $vsftpd cp -a /etc/ssh/* $sshd #cp -a /etc/samba/* $sambad cp -a /etc/{php.ini,httpd} $wwwd cd /var/www tar -jpc -f $wwwd/html.tar.bz2 html cgi-bin cd /var/lib/ tar -jpc -f $pgsql/pgsql.tar.bz2 pgsql cd /home/saga tar -jpc -f $userhome/saga.tar.bz2 public_html cd /home/epopo tar -jpc -f $userhome/epopo.tar.bz2 public_html ########################################################## backupfile=backup.$(date +%Y-%m-%d).tar.bz2 cd /.. tar -jpc -f $targerdir/$backupfile $(basename $backupdir) cd $targerdir ftp -n "$host" > ${targerdir}/../ftp.log 2>&1 << EOF user $id $pw binary cd $remotedir put $backupfile bye EOF
crontab
30 3 * * 0 root 路徑/XXXX.sh #每周3:30 30 2 * * * root 路徑/XXXX.sh #每天2:30
全站熱搜