Belirlenen Dosyaları Tek Kelime İle Yedekleme

Dosyaları Düzenli Olarak Yedekleme Gönderisinden tartışılmaya devam ediliyor:

Daha önce bağlantıda da verdiğim konuda dosyaları nasıl yedekleyebilirim diye sormuştum. Konunun son yorumunda da kendi yaptığım yöntemden bahsetmiştim. Dosyaları programsız yedekliyorum. Belki başkalarının da işine yarar diye ve yaptığım işlerlerde hatalı bir iş varsa beni de uyarın diye biraz daha detaylı olarak anlatmak için de bu konuyu açtım. :slight_smile:

Yaptığım işin mantığı şu: Yedekleyeceğim klasörü komutla yedeklemek istediğim kopyalıyorum. Ama üzerinde çalıştığım dosyaları belki farklı şekilde düzenlediğimden ya da ihtiyaç kalmadığından silersem, doğrudan kopyalama yaptığımda mevcut dosyaları değiştirir ama sildiğim dosyalar yedeklediğim yerde kalmaya devam eder. Bu sebeple önce yedek klasörünün içini silip sonra kopyalama işlemi yapıyorum. (O kadar uğraşmana ne gerek var, tek komutla ikisini de yapabilirdin diyen varsa, yoruma yazarsa onu da öğrenmiş oluruz. :slight_smile: )

Bu arada bilgisayarımda pardusun kurulu olduğu ssd ve bir de Yerel Disk klasör adlı bir HDD var. Yedeklememi HDD’ye yapıyorum. Siz de kopyalayacağınız klasör adlarını ona göre tanımlayabilirsiniz.

Yaptığım işlemlere gelince,

1- Öncelikle bir Mousepad dosyası açtım. İçine aşağıda ayrıntılarını verdiğim komutları yazdım.

echo ------------------------------------------------------------------ ;
echo BİLGİSAYARI KAPATMAYIN, YEDEKLEME YAPIYOR, BİTİNCE KENDİ KAPANACAK ;
echo ------------------------------------------------------------------ ;
rm -r /YEDEKLENECEK KLASÖR/* ; 
cp -r /KOPYALANACAK KLASÖR/* /YEDEKLENECEK KLASÖR/ ; 
echo YEDEKLENECEK KLASÖR Kopyalama Tamamlandı ;

komutu ile Önce rm komutuyla /mnt/Yerel\ Disk/pardus/Belgeler/ konumundaki klasörün içeriğini siliyor,
sonra cp komutuyla /home/pardus/Belgeler/ klasörünün içindeki dosyaları az önce sildiğim /mnt/Yerel\ Disk/pardus/Belgeler/ klasörünün içine kopyalıyorum.
Bu arada ben gitmiş olursam birileri bilgisayarı kapatmasın diye de ekrana uyarı notları yazdırıyorum. :slight_smile:

Yedekleyeceğim tüm klasörler için aynı işlemi tekrarlıyorum. (Alttaki resimde oluşturduğum sh dosyasının tamamı var.)

En sonda da bilgisayarı güncelleyip öyle kapatsın diye

echo ------------------------------------------------------------------- ;
echo BİLGİSAYARI KAPATMAYIN, GÜNCELLEME YAPIYOR, BİTİNCE KENDİ KAPANACAK ;
echo ------------------------------------------------------------------- ;
sudo apt-get update && sudo apt-get upgrade -y && sudo apt autoremove;

ile güncelliyor,

echo ------------------------------------------------------------------ ;
echo YEDEKLEME VE GÜNCELLEME TAMAMLANDI... BİLGİSAYAR KAPANIYOR... ;
echo ------------------------------------------------------------------ ;
sudo shutdown -h now

ile kapatıyorum. Bu güncelleme ve kapatma kısmı size kalmış. Ben genelde Cuma günleri işten çıkarken bu komutu çalıştırıp öyle çıkıyorum. Kendisi kopyalayıp, güncelleyip, kapatıyor.

2- Komutları yazdıktan sonra dosyayı yedekle.sh adıyla kaydettim. Siz istediğiniz ismi verebilirsiniz.

3- Oluşturduğum yedekle.sh dosyasını Ev Dizinindeki Genel Klasörü altında kurulum dosyalarını içinde tuttuğum Programlar klasörüne attım. Siz istediğiniz klasöre koyabilirsiniz ama ben devamındaki komutları buna göre yazacağım için belirttim.

4- Terminal açıp,
echo -e "\n\nalias yedekle='sudo sh /home/pardus/Genel/Programlar/yedekle.sh' " >>~/.bashrc
komutu ile, Terminale her yedekle yazdığımda /home/pardus/Genel/Programlar/ klasörüne koyduğum yedekle.sh klasörünü çalıştırması için .bashrc dosyasına kopyaladım. yedekle yerine başka kelime için de tanımlayabilirsiniz.
Ayrıca sudo sh ile çalıştırdığım için chmod yapmama da gerek kalmadı.

5- Artık bundan sonra tek yapacağım yedeklemek istediğimde terminal açıp yedekle yazmak. Kendisi dosyaları kopyalayacak, bilgisayarı güncelleyecek ve bilgisayarı kapatacak.

6- Derseniz ki,bu kopyalama işlerini de haftanın belli bir günü belli bir saatte kendisi yapsın, ben hiç uğraşmayayım, crontab ile o da mümkün. Ama düzenli olmasının kendim için şöyle bir dezavantajı var. O komutla yapabilmesi için hem bilgisayarın açık olması hem de benim işlem yapmıyor olmam lazım. Çünkü ben bir dosyada çalışırken yedekleme yaparsa, hata oluşabilir. Çıkış saatinden sonraya tanımlasam, ya işim uzar da eve geç gidersem, yine aynı durumla karşılaşabilirim diye ben komutu kendim yazdığımda çalıştırıyorum. Ama isterseniz istediğiniz saatte yapması da mümkün. Bunun için crontab komutunu kullanıyoruz. O komut için de şu linki inceleyebilirsiniz:

1 Beğeni

Bu konu son yanıttan 10 gün sonra otomatik olarak kapatıldı. Yeni yanıt girilmesine izin verilmiyor.