KlavyeMonitor.com    


MENÜ

. ANASAYFA

. KABLOSUZ & TELSİZ

. AVUÇİÇİ & CEP

. LINUX

. WINDOWS

. WEB

. INTERNET

. BİLGİSAYAR

. ANTİK BİLGİ

. ARAMA

. BAĞLANTILAR
. Spam Gönderenler

POPÜLERLER

htmlders

linux kitapları

proxy adresleri kablo

sayisal loto sans topu

elmekyonlen

TDGTW-WarXing

eposta yazim kurallari

BearShare Morpheus ve iMeshi Hizlandirma Yolu

proxy-hiz

komutlar

web hosting hizmetleri

inet-hiz

linux ile windowslari uyutmak

squidle2kat

yedekleme

internet hizi

database oracle mysql sql komutlari

windows mydoom virus

PDA ve cep telefonu icin www sayfasi yapimi


= = =

Favorilere ekle
Google




Linux'ta Yedekleme



Veri Kaybını Engellemeye Yönelik
Pratik Bir Yedek Alma Uygulaması

Şubat 2001
İlker Fıçıcılar

  Bu yedekleme yazısına giriş hazırlarken farkettim, Mart 2001'de yani bu satırları yazdığım tarihten bir ay sonra tam 15 yılı doldurmuş olacağım. 15 yıldır, Commodore 64 ile başladığım bilgisayar dünyasının içindeyim. Ve, o kadar yıldır veri kaybının verdiği acıları tadıyorum. En son geçen ay evdeki Linux'u 2.4'e yükseltirken oldukça önemli bir harddisk sorunu yaşadım. Umarım bu yazıdaki program ve yöntem, kullanıcaklara bir felaket durumunda az da olsa yardımcı olur.

  Öncelikle, yükümüzü hafifletmek için neleri yedekleyeceğimizi belirleyelim. Eğer baştan, dizinlerimizi düzenli tutuyorsak, örneğin kullanıcı dizinimizde program derleme artıkları, program paketleri, gereksiz resimler, ve internette kopyaları bulunabilecek başka dosyaları bulundurmuyorsak yedeklediğimiz veriler yalnızca önemliler olacaktır. Bu, hem yedekleme hem de yedek'ten kurtarmada kolaylık sağlayacaktır.

  İkinci olarak, yedeklediklerimizle yedekleme dizinimizin ayrı disklerde veya en azından ayrı bölmelerde bulunmasına dikkat etmeliyiz. Böylece disk veya bölmelerden biri bozulduğunda, diğerinde az çok güncel bir kopyanın bulunmasını garanti etmiş oluruz. Örneğin, yedekleyeceğimiz /home, /root, ve /etc dizinleri /dev/hda2'de bulunuyorsa, /yedekler dizinimiz ya /dev/hdcX'de ya da /dev/hda2 harici /dev/hda4 vs. gibi bir yer de bulunması iyi olur. Tek diskimiz varsa, ve bölmelerden biri /usr/local'e bağlıysa yedeği /usr/local/yedekler gibi bir yere alabiliriz.

  Yedekleyeceklerimize karar verelim: /etc ve /root'u en başta yedeklemekte fayda var. Mektuplar önemliyse onları da alalım, ve seçtiğimiz kullanıcı dizinlerini de ekleyelim. Ve bunlar haricinde önemli dosyalrı tuttuğumuz başka dizinler varsa onları da aşağıdaki bash script'inin ilgili kısmına ekleyelim.

  Ben aşağıdaki örnek shell script'te şu dizinleri yedeklettiriyorum:

/etc
/root
/var/spool/mail
/home/ilker
/home/berker

  Kullanacağımız scripti gecenin bir saatinde crontab yardımıyla çalıştırtacağız. O da, "yedekler" dizinimiz yoksa oluşturacak ve seçtiğimiz dizinleri tar'layıp gzip'leyip oraya atacak. Ertesi günse aynı "yedekler" dizinine başka bir adla kayıt yapacak. Toplam iki kopya olacak şekilde, her gün iki önceki isimle kayit yapacak. Böylece yedek alma sırasında çıkabilecek sorunlara (elektrik kesilmesi vb.) de hazırlıklı olmuş oluruz.

  Evet, aşağıdaki script'i ilgili yerlerden kesip /usr/local/bin'e "yedek-al" ismiyle kaydedip
chmod 755 /usr/local/bin/yedek-al
ile çalıştırılabilir yaptıktan sonra, favori yazı editorumuzle root crontab'ini güncelleyelim. Bu yedek alma işini ancak root haklariyla yapabiliriz.

  Örneğin "joe" editörünü seviyorsak,
export VISUAL=joe;crontab -e
veya
VISUAL=joe crontab -e
veya csh, tsch gibi shell kullanıyorsak:
setenv VISUAL joe ; crontab -e

ile crontab'a şunu ekleyelim:

05 02 * * * nice -n 8 /usr/local/bin/yedek-al 2> /dev/null

ve kaydedip çıkalım.

  Burada, her gece 02:05'de /usr/local/bin/yedek-al adlı komutu çalıştırtırıp yedek aldırıyoruz. (nice -n 8 kısmı bu işi düşük öncelikli olarak yaptırmaya yarıyor.)

  Aşağıdaki scripti http://www.KlavyeMonitor.com/dosya/yedekal.zip adresinden de çekebilirsiniz.

--Buradan aşağısı yedek-al scripti--
#!/bin/sh
#
# yedek-al
# duzenli olarak yedek alIr.
#
# ilker Ficicilar
# ilkerf [AT] geocities.com
# Ocak 2001
#
# yedegi alInacaklar:
#
# /root
# /home/ilker
# /home/berker
# /var/spool/mail
# /etc
#
if [ "`whoami`" != "root" ];then
echo "Yedek-alma yalnizca root tarafindan yapilabilir"
exit
fi

mkdir /usr/local/yedekler 2>/dev/null /bin/chmod -R go= /usr/local/yedekler 2>/dev/null /bin/chown -R root.root /usr/local/yedekler 2>/dev/null
i=0 if [ -f /usr/local/yedekler/yedek-sira ];then i=`cat /usr/local/yedekler/yedek-sira` fi echo "Yedek Aliniyor" echo echo "Yedek sIra no: "$i echo "Yedeklenenler:" if [ ! -f /usr/local/yedekler/yedek-liste ];then cat <<EOF1 > /usr/local/yedekler/yedek-liste /root /home/ilker /home/berker /var/spool/mail /etc EOF1 fi date >> /usr/local/yedekler/errors cat /usr/local/yedekler/yedek-liste | while read qw do nm=`echo $qw | sed "s///_/g"` nm="/usr/local/yedekler/yedek$nm-$i.tgz" echo $nm tar -czf $nm $qw done 2>> /usr/local/yedekler/errors echo >> /usr/local/yedekler/errors echo "Yedek alma bitti" nam="/usr/local/yedekler/Son_Yedek_No=$i" rm -f /usr/local/yedekler/Son_Yedek_No* 2>/dev/null touch $nam i=`expr 1 - $i` echo $i > /usr/local/yedekler/yedek-sira echo "Yedeklerin kapladIgI bellek miktarI:" du /usr/local/yedekler # yedeklerin guvenligini saglayalim: /bin/chmod -R go= /usr/local/yedekler 2>/dev/null /bin/chown -R root.root /usr/local/yedekler 2>/dev/null
--Buradan yukarısı yedek-al scripti--

 

  Evet, bu kadar. Ilk denemeyi yapmak için gece 02:05'i beklemenize gerek yok. "yedekler" dizininiz için yeterli disk alanınız olduğuna emin olduktan sonra, "yedek-al" komutunu çalıştırabilirsiniz:

bash# su
Password: önce_root_olmalı
bash# nice -n 5 yedek-al

  Programın çalışması bitince "yedekler dizinize bir göz atabilirsiniz:

bash# ls -s1 /usr/local/yedekler
total 199996
     0 Son_Yedek_No=0
     1 errors
     1 yedek-liste
     1 yedek-sira
   820 yedek_etc-0.tgz
  9055 yedek_home_berker-0.tgz
156661 yedek_home_ilker-0.tgz
 24361 yedek_root-0.tgz
  7373 yedek_var_spool_mail-0.tgz
bash#

  "yedek-al" her çalıştığında dosya adlarının sonlarındaki "-0"'lar ve "-1"'ler değişecek. En güncel yedeklerin hangi son eke sahip olduğunu en yukarıdaki "Son_Yedek_No=0" satırından öğrenebilirsiniz.

  Yedeklenmesini istediğiniz diğer dizin adlarını da artık "yedek-liste" dosyasına ekleyebilirsiniz. Bu dosya normalde, "yedek-al" ilk kez çalıştırıldığında oluşturulur, bir daha içeriği program tarafından değiştirilmez. İstenildiği gibi yeni dizin ekleme çıkarma yapabilmek olası.

  Sanırım bu konu bu kadar. Umarım bir harddisk arızasıyla karşılaşmazsınız, ama eğer olursa ve bu programı sürekli kullanıyorsanız. Tek yapmanız gereken, yeni linuz'unuzu kurduktan, oluşturduktan sonra "tar" komutuyla yedekleri açmak. Kolay gelsin.

İlker FIÇICILAR

19 Şubat 2001

 

İlgili Benzer Yazılar:


Arama önerileri: yedek, yedekleme, backup, yedek alma, raid, sata raid, linux, kurtarma, harddisc crash, harddisk arızası,


Kaynak gösterecekler için referans: "Linux'ta Yedekleme", İlker Fıçıcılar, http://www.KlavyeMonitor.com/yedekleme.html , Şubat 2001


 
 
 
   
Bu sayfaları Linux'ta oluşturan programı yazan: İlker Fıçıcılar