13 Şubat 2009 Cuma

linux sunucu otomatik yedek alma

1-root kullanıcısı olarak için komut satırında
#vi /root/linux_backupal.sh
ile editörü açarak i tuşu ile ekleme moduna geçerek aşağıdaki çizgiler arasındaki script konunu kopyala-yapıştır.
------------------------------------------
#!/bin/bash
OF=/backup/mail-$(date +%Y%m%d).tgz
cd /var/spool/mail/
tar zcvf $OF *
HOME=/backup/home-$(date +%Y%m%d).tgz
tar zcvf $HOME /home/
cd /backup
silinecekler=$(ls -al|grep home | awk '{print $9}' | grep tgz | awk -F"-" '{print $2}' | awk -F"." '{print $1}')
tarih=$(date +%Y%m%d)
for i in $silinecekler
do
echo $i
a=`expr $tarih - $i`
if test $a -gt 4
then
rm -f *$i*
fi
done
----------------------------------------------------
2-Bu script mail ve home dizinlerini backup olarak oluşturulmuş bir dizin yada yedek HDD içine yedek alır.
3-Bu scriptin otomatik olarak günlük yedek alması için komut satırında #crontab -e ile düzenleme modunda i ekleme moduna geçerek aşağıdaki çizgiler arasındaki satırı kopyala-yapıştır.
----------------------------------------------------
45 0 * * * /root/linux_backupal.sh
----------------------------------------------------

0 yorum :