Skip to main content
Linux - Otomatik Yedekleme

Linux – Shell ile Otomatik Yedekleme

Hafta sonu Linux için otomatik olarak belirtilen bir dizinin (klasörün) ve içeriğinin (alt dizinler (klasörler) ve içerikleri dahil) yedeğini otomatik olarak alacak bir Shell yazmam gerekti.

Tabii gerçek anlamda faydalı olabilmesi için bazı ek seçenekler ekledim;

  • Yedeğini almak istediğiniz dizini belirtebiliyorsunuz
  • Alınacak yedeğin yükleneceği dizini belirtebiliyorsunuz.
  • Alınan yedek backup-yıl-ay-gün.zip gibi düzenli bir şekilde yedekleri alıyor. Böylece geçmiş yedeklere rahatlıkla ulaşabiliyorsunuz.
  • Alınan yedekleri cURL ile belirlediğiniz bir FTP hesabına, belirlediğiniz bir FTP dizinine upload edebiliyorsunuz.
  • Yedek alındıktan sonra ya da FTP ile upload yapıldıktan sonra dilerseniz istediğiniz e-posta hesaplarına bilgi için e-posta gönderebiliyorsunuz.

Otomatik Yedekleme

Aşağıdaki kodları backup.sh olarak kayıt edin. Farklı bir isimde istiyorsanız, farklı bir isimde kayıt yapabilirsiniz. Kayıt ettiğiniz isime göre işlemlerinizi yapmayı unutmayın.

Yedekleme Ayarları

Kullanımı son derece basit.

  1. Öncelikle yedek alacağınız dizini 10. satırda belirtin. Belirttiğiniz dizinin var olduğundan emin olun.
  2. Alınacak yedeğin hangi dizine kayıt edileceğini 11. satırda belirtin. Belirttiğiniz dizin yoksa, 775 olarak chmod izinleri belirlenerek otomatik bir şekilde yaratılır.

Dilerseniz alınan zip dosyasını FTP’ye upload ettirebilirsiniz. Bunun içinde ayarlarımızı belirlememiz gerekiyor.

  1. Öncelike 14. satırda FTP_UPLOAD=n yazan yeri FTP_UPLOAD=y olarak değiştiriyoruz.
  2. FTP_USERNAME yazan yere FTP kullanıcı adımızı yazıyoruz. Eğer FTP kullanıcı adınızda boşluk varsa, kullanıcı adınızı çift tırnak işareti içerisine almayı unutmayın.
  3. FTP_PASS yazan yere FTP şifremizi yazıyoruz. Eğer FTP şifremizde boşluk varsa çift tırnak işareti içerisinde şifrenizi yazmayı unutmayın.
  4. FTP_SERVER yazan yere FTP sunucumuzu yazıyoruz.
  5. FTP_DIR eğer ana FTP dizinine yüklenmesini istiyorsanız burayı boş bırakabilirsiniz. Farklı bir dizine yüklenmesini istiyorsanız, yüklenmesini istediğiniz dizini belirtmeniz gerekiyor.

Dilerseniz bilgilendirme e-postası göndertebilirsiniz. Bunun içinde FTP gibi ayar yapmamız gerekiyor.

  1. Eğer sadece yedekleme için zip dosyası oluşturulduktan sonra mail gönderilmesini istiyorsak; SEND_MAIL=y eğer FTP ile başarılı bir şekilde upload yapılması halinde e-posta gönderilmesini istiyorsak SEND_MAIL=ftp şeklinde bu değeri değiştiriyoruz.
  2. MAIL_TO değeri olarak e-posta gönderilmesini istediğimiz e-posta adreslerini belirtiyoruz. Virgül koyarak birden fazla e-posta adresi belirtebilirsiniz. Spam klasörünüzü kontrol etmeyi unutmayın.
  3. MAIL_SUBJECT değeri olarak gönderilecek e-postanın konusunu yazıyoruz.
  4. MAIL_BODY gönderilen e-postanın içeriği.

Otomatik Yedeklemenin Çalıştırılması

Eğer çalıştırma izni vermediyseniz, scriptin bulunduğu dizinde

Bin klasörü içerisine yüklediyseniz

Daha kolay çalıştırmak için öncelikle çalıştırma izni vermek isterseniz

Çalıştırma iznini 1 kere verdikten sonra artık aşağıdaki şekilde çalıştırabilirsiniz

Dilerseniz cron aracılığıyla bu işlemi tamamiyle otomatiğe bağlayabilirsiniz.

Aklınıza takılan bir soru olursa yorum aracılığıyla sormaktan çekinmeyin.

Ilgıt Yıldırım

Alanında 16 yıldan fazla tecrübesi olan bir freelance / serbest web yazılımcısıyım. Son 8 yıldır e-ticaret siteleri ağırlıklı çalışmalar yapmaktayım. Web yazılımı konusunda PHP, MySQL, HTML, CSS ana ilgi alanlarımdır.