İlginizi Çekebilir
  1. Ana Sayfa
  2. Server 2019
  3. PowerShell ile Dosya Yedekleme

PowerShell ile Dosya Yedekleme

robocopy

Herkese merhaba, üzerinde ilk makalemde sizlere basit bir yöntem olan ile dosya yedekleme işlemi ve  task schudele ile düzenli hale nasıl getiririz yedekleme sürecimizi nasıl takip ederiz bunları anlatacağım.

Komut satırından aslında tanıdığımız komutunu kullanarak bu işlemi gerçekleştiriyorum.

Robocopy.exe kaynak ve hedef lokasyonları belirleyip belli parametreler ile dosyaların kopyalanmasını sağlıyorum. Şu günlerde artık hemen hemen her kurum ve kuruluşta Microsoft yada 3rd party yazılımları kullanılsa da kısa vadeli yada operasyonel olarak hızlı aksiyon almak isteyen arkadaşlar için faydalı olacaktır.

Basit bir robocopy komutu ile işlemlerime başlıyorum.

Kullandığım parametreleri size anlatmak isterim.

/mir Mirror mode olarak kullan
/mt:90 Farklı bitiş zamanlarında sonuçlanan maksimum 90 işlem sayısı (değeri dosya sayısına göre düzenleyebilirsiniz) /r:3 Dosya kopyalama işlemini en fazla 3 kere tekrarla, (değeri değiştirebilirsiniz.)
/w:3 Dosya kopyalama işlemi sırasında tekrar denenecekse 3 sn bekle (değeri değiştirebilirsiniz.)
/np İşlem yoksa gösterme.
/ts Kaynak dosyanın zaman bilgilerini ekle.
/bytes Hesaplama için bayt cinsinden işlem yap.
/xd exculude tanımlamasını bu parametreye yapabilirsiniz. Örneğin “$ exclude” şeklinde.  > c:\log.text export log.txt Son olarak log çıktısını C: dizinine txt olarak ver

Dosya kopyalama komutumuz hazır. Sırada bunu yeni bir task  Schedule oluşturarak periyodik hale getirmeye geldi.

New-ScheduledTaskAction komutu ile powershell çalıştırıp yukarıda yazdığımız komutu çalıştıracak task oluşturuyorum.

New-ScheduledTaskTrigger komut ile de bu taskımızın çalışma periyodunu belirliyoruz.

Örneğin:  

New-ScheduledTaskAction -Execute “PowerShell.exe” komutu ile taskımı oluşturuyorum.

New-ScheduledTaskTrigger -At 10:00am –Daily komutu ile de taskımın çalışma zamanını belirliyorum.

Register-ScheduledTask -TaskName “test” taskımında adını belirliyerek register ediyorum.

Buraya kadar aslında hepimizin bildiği süreçler bu komutları bir araya getirerek PowerShell ile basit bir script oluşturuyorum.

 

Uygulama ekran görüntüleri:

Resim-1

Resim-2

Uygulaması gayet basit yeri geldiğinde can kurtaracak bir çözümdür. Dosyaları restore etmek istediğinizde dizinlerin yerini değiştirip robocopy komutunu çalıştırmanız işinizi görecektir.

Robocopy ile aslında çok daha fazla çözüm sağlayabilirsiniz. Örneğin DFS yapısı kurgulamak yerine yine robocopy ile iki web sunucunuz içerisinde ki FTP verilerini belirlediğiniz periyotlar yada manual olarak bu komut dizinleri ile gerçekleştirebilirsiniz.

Umarım sizler için faydalı olmuştur. PowerShell kullanarak basit çözümler oluşturma ile ilgili yazılarıma devam edeceğim. Bir sonraki yazımda görüşmek üzere…

Bu konuyla ilgili sorularınızı http://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar
www.mshowto.org

TAGs: powershell, backup, , robocopy, mshowto,

 

 

 

 

 

 

Yorum Yap

Yazar Hakkında

1987 Ankara doğumluyum. 2008 Maltepe üniversitesi Bilgisayar bölümü mezunuyum. 2005 yılından itibaren bilişim, inşaat ve üretim gibi çeşitli sektörlerde microsoft ürünlerinin kullanımı alt yapınsın kurulması, kullanılması ve sürdürülmesi şeklinde görevler üstlendim. 2005 yılında superonline bayisi home computer ile okurken başladığım kariyerime Vargonen teknolojide 2 yıl Microsoft sertifikalı sistem yöneticisi olarak çalıştıktan sonra 2018 kasım ayı itibari ile Ürün geliştirme yöneticisi olarak görev almaktayım. İş süreçlerim kapsamında Müşterilerimizin talepleri doğrultusunda Microsoft ve Linux işletim sistemleri ve çeşitli sanallaştırma platformları üzerine kurguladığımız çözümler ile proje ve alt yapı hazırlıyor hayata geçiriyoruz.

Yorum Yap

Yorumlar (1)

  1. Merhaba Benim bu yedekleme konusunda bir sorum olacaktı. Bir müşterimin cihazında sürekli yedeklenmesi gereken veriler mevcut ve bunu cloud’a aktarmamız gerekli Yani eğer sistem yeni yedek aldığında otomatik olarak cloud’a gitmesi lazım. Ancak burada şöyle bir sorun var. Cloud’un kapasitesi limitli ve 2-3 yedekten sonra cloud firmasına extra bir ücret ödememiz gerekiyor. Benim merak ettiğim şey ise. Son 6 dosyayı kopyala ve hedefte daha fazla dosya varsa kontrol et eski dosyaları sil.

    A dizininde 1.zip,2.zip,3.zip,4.zip,5.zip,6.zip dosyaları olduğunu farz edelim. ve hep güncel olanı almak istiyoruz ve son 2 dosyayı yedeklemek istiyoruz hep. Yedekleme işlemi başlattığımda 5.zip,6.zip dosyalarını nasıl aldırabilirim. Ve onu aldırdım diyelim 7.zip eklendiğinde hedef klasördeki 5-6.zip dosyalarını kontrol ettirip 5.zip dosyasını silip 7.yi atmasını istiyorum bunu nasıl başarırım.

    Bir de halihazırda yedek klasöründe kaydedilen yedek dosyalarının eski olanlarının silinmesini nasıl sağlayabilirim. 50 tane dosya varsa son 6 tanesini tutmasını yani.