# önder online
Teknoloji ve siber güvenlik dünyasına hoş geldiniz Güncel siber tehditler ve korunma yöntemleri Yapay zekâ ve otomasyonun güvenliğe etkileri Microsoft 365 ve Active Directory güvenlik rehberleri Yazılım geliştirmede güvenlik odaklı yaklaşımlar Teknoloji ve siber güvenlik dünyasına hoş geldiniz Güncel siber tehditler ve korunma yöntemleri

Menu

Windows Server'da Dosyaları Yetkileriyle Birlikte Kopyalama: Kapsamlı Rehber

Windows Server'da Dosyaları Yetkileriyle Birlikte Kopyalama: Kapsamlı Rehber

Bu yazıda bahsedilen komutları üretim ortamında kullanmadan önce mutlaka test ortamında denemeniz önerilir. Veri kaybını önlemek için özellikle /MIR gibi parametreleri dikkatli kullanın.

 

Windows Server yönetiminde en sık karşılaşılan görevlerden biri, dosya ve klasörleri bir konumdan diğerine taşımaktır. Ancak basit bir kopyalama işlemi, NTFS izinlerini, dosya sahiplik bilgilerini ve diğer güvenlik özniteliklerini kaybetmenize neden olabilir. Bu yazıda, Windows Server'da dosyaları tüm yetkileri ve özellikleriyle birlikte nasıl kopyalayacağınızı öğreneceksiniz.

Neden Yetkiler Önemlidir?

Windows Server ortamlarında dosya ve klasör izinleri kritik öneme sahiptir:

  • Güvenlik: NTFS izinleri, hangi kullanıcıların hangi dosyalara erişebileceğini kontrol eder
  • Uyumluluk: Veri koruma mevzuatları, dosya erişim kontrollerinin korunmasını gerektirir
  • İş Sürekliliği: Yanlış izinler, kullanıcıların çalışmasını engelleyebilir
  • Denetim: Sahiplik ve denetim bilgileri, güvenlik kayıtları için önemlidir

Standart kopyalama yöntemleri (sürükle-bırak, CTRL+C/CTRL+V) genellikle bu bilgileri korumaz.

Robocopy: Windows Server'ın Güçlü Aracı

Robocopy (Robust File Copy), Windows Server'a yerleşik, komut satırı tabanlı gelişmiş bir dosya kopyalama aracıdır. Windows Vista ve sonraki tüm Windows sürümlerinde standart olarak bulunur.

Robocopy'nin Avantajları

  • NTFS izinlerini ve ACL'leri (Access Control Lists) korur
  • Dosya sahiplik bilgilerini kopyalar
  • Denetim bilgilerini korur
  • Kesintiye uğrayan kopyalama işlemlerini devam ettirebilir
  • Çok iş parçacıklı kopyalama desteği
  • Ayrıntılı log kayıtları oluşturma
  • Yedekleme modu desteği

Temel Kullanım

En Basit Komut

robocopy D:\ E:\Hedef /E /COPYALL

Parametreler:

  • D:\ - Kaynak dizin
  • E:\Hedef - Hedef dizin
  • /E - Tüm alt dizinleri kopyalar (boş olanlar dahil)
  • /COPYALL - Tüm dosya bilgilerini kopyalar

/COPYALL Parametresi Neleri Kopyalar?

/COPYALL parametresi aşağıdakilerin tümünü içerir:

  1. Veri (D) - Dosya içeriği
  2. Öznitelikler (A) - Gizli, sistem, salt okunur vb.
  3. Zaman Damgaları (T) - Oluşturma, değiştirme tarihleri
  4. NTFS ACL'ler (S) - Güvenlik izinleri
  5. Sahiplik Bilgisi (O) - Dosya sahibi
  6. Denetim Bilgisi (U) - Denetim ayarları

/COPYALL yerine /COPY:DATSOU yazmak da aynı anlama gelir.

Pratik Örnekler

1. Basit Klasör Kopyalama

robocopy D:\Belgeler E:\Yedek\Belgeler /E /COPYALL

Bu komut D:\Belgeler klasörünü E:\Yedek\Belgeler konumuna kopyalar.

2. Hata Toleranslı Kopyalama

robocopy D:\ E:\Hedef /E /COPYALL /R:5 /W:10 /V

Ek parametreler:

  • /R:5 - Hata durumunda 5 kez yeniden dener
  • /W:10 - Denemeler arası 10 saniye bekler
  • /V - Ayrıntılı (verbose) çıktı gösterir

3. Log Dosyası ile Kopyalama

robocopy D:\Veriler E:\Yedek\Veriler /E /COPYALL /R:3 /W:5 /LOG:C:\Logs\kopyalama.log

Bu komut tüm işlemleri kopyalama.log dosyasına kaydeder.

4. Önce Test Etme (Dry Run)

robocopy D:\Test E:\Hedef\Test /E /COPYALL /L

/L parametresi ile gerçek kopyalama yapılmaz, sadece ne yapılacağı listelenir. Bu, büyük işlemler öncesi test için idealdir.

5. Ağ Üzerinden Kopyalama

robocopy D:\Paylaşım \\SunucuAdı\Hedef\Paylaşım /E /COPYALL /Z /R:10 /W:30

Ağ için önemli parametreler:

  • /Z - Yeniden başlatılabilir mod (kesintilerde devam edebilir)
  • /R:10 - Ağ sorunları için daha fazla yeniden deneme
  • /W:30 - Daha uzun bekleme süresi

6. Belirli Dosya Türlerini Kopyalama

robocopy D:\Dökümanlar E:\Yedek\Dökümanlar *.docx *.xlsx /E /COPYALL

Sadece .docx ve .xlsx dosyalarını kopyalar.

7. Belirli Dosyaları Hariç Tutma

robocopy D:\Veriler E:\Yedek\Veriler /E /COPYALL /XF *.tmp *.bak /XD "Geçici Dosyalar"
  • /XF - Belirtilen dosya türlerini hariç tutar
  • /XD - Belirtilen dizinleri hariç tutar

İleri Seviye Kullanım

Çok İş Parçacıklı Kopyalama

robocopy D:\BüyükVeri E:\Yedek\BüyükVeri /E /COPYALL /MT:16 /R:3 /W:5

/MT:16 parametresi 16 iş parçacığı ile kopyalama yapar (1-128 arası değer alabilir). Varsayılan 8'dir.

Uyarı: Çok fazla iş parçacığı sistem kaynaklarını tüketebilir ve ağ trafiğini artırabilir.

Yedekleme Modu

robocopy D:\Kritik E:\Yedek\Kritik /E /COPYALL /B /R:3 /W:5

/B parametresi yedekleme modunu etkinleştirir. Bu, normalde erişim izniniz olmayan dosyaları kopyalamanıza olanak tanır (yedekleme ayrıcalığı gerekir).

Ayna (Mirror) Kopyalama

robocopy D:\Kaynak E:\Hedef /MIR /COPYALL

/MIR parametresi kaynak ve hedefi birebir aynı yapar (hedefte fazla olan dosyaları siler). DİKKAT: Bu parametre veri kaybına neden olabilir!

Artımlı Yedekleme

robocopy D:\Belgeler E:\Yedek\Belgeler /E /COPYALL /XO /R:3 /W:5

/XO parametresi hedefte daha yeni olan dosyaları atlar. Artımlı yedeklemeler için kullanışlıdır.

Kapsamlı Örnek: Üretim Sunucusu Yedekleme Scripti

@echo off
setlocal

REM Değişkenler
set KAYNAK=D:\
set HEDEF=E:\Yedekler\DiskD
set LOGDIZIN=C:\Logs\Robocopy
set TARIH=%date:~-4%%date:~-7,2%%date:~-10,2%
set SAAT=%time:~0,2%%time:~3,2%
set LOGDOSYA=%LOGDIZIN%\Yedek_%TARIH%_%SAAT%.log

REM Log dizinini oluştur
if not exist "%LOGDIZIN%" mkdir "%LOGDIZIN%"

REM Yedekleme başlangıç mesajı
echo ================================================ >> "%LOGDOSYA%"
echo Yedekleme Başlangıç: %date% %time% >> "%LOGDOSYA%"
echo ================================================ >> "%LOGDOSYA%"

REM Robocopy komutu
robocopy "%KAYNAK%" "%HEDEF%" /E /COPYALL /R:5 /W:10 /MT:8 /V /NP /LOG+:"%LOGDOSYA%"

REM Hata kontrolü
if %ERRORLEVEL% LEQ 7 (
    echo Yedekleme başarıyla tamamlandı! >> "%LOGDOSYA%"
) else (
    echo HATA: Yedekleme sırasında ciddi hatalar oluştu! >> "%LOGDOSYA%"
)

REM Bitiş mesajı
echo ================================================ >> "%LOGDOSYA%"
echo Yedekleme Bitiş: %date% %time% >> "%LOGDOSYA%"
echo ================================================ >> "%LOGDOSYA%"

endlocal

Bu script'i .bat uzantılı bir dosya olarak kaydedebilir ve Görev Zamanlayıcı ile otomatik çalıştırabilirsiniz.

Robocopy Çıkış Kodları

Robocopy işlem sonunda bir çıkış kodu döndürür:

Kod Anlamı
0 Hiçbir dosya kopyalanmadı (değişiklik yok)
1 Tüm dosyalar başarıyla kopyalandı
2 Hedefte fazla dosyalar var
3 Bazı dosyalar kopyalandı, bazı fazlalar var
4 Bazı uyumsuz dosyalar var
5 Bazı dosyalar kopyalandı, bazı uyumsuzlar var
6 Fazla dosyalar ve uyumsuzluklar var
7 Dosyalar kopyalandı, fazlalar ve uyumsuzluklar var
8+ Hatalar oluştu

Önemli: 0-7 arası kodlar başarılı sayılır, 8 ve üzeri ciddi hatadır.

Alternatif Yöntemler

XCOPY (Eski Yöntem)

xcopy D:\* E:\Hedef\ /E /K /H /O /X

Parametreler:

  • /E - Alt dizinleri kopyalar
  • /K - Öznitelikleri korur
  • /H - Gizli ve sistem dosyalarını kopyalar
  • /O - Sahiplik ve ACL bilgisini kopyalar
  • /X - Denetim ayarlarını kopyalar

Not: XCOPY eski bir araçtır ve robocopy kadar güvenilir değildir. Yeni projelerde robocopy kullanmanız önerilir.

PowerShell ile Kopyalama

Copy-Item -Path "D:\*" -Destination "E:\Hedef" -Recurse -Force
Get-Acl -Path "D:\" | Set-Acl -Path "E:\Hedef"

PowerShell da kullanılabilir ancak izinleri korumak için ek işlemler gerekir.

Grafik Arayüz Araçları

Komut satırını tercih etmeyenler için:

  1. Richcopy - Microsoft'un robocopy için GUI arayüzü
  2. TeraCopy - Üçüncü parti kopyalama aracı
  3. FastCopy - Hızlı kopyalama aracı

En İyi Uygulamalar

1. Her Zaman Test Edin

Büyük işlemler öncesi /L parametresi ile test yapın:

robocopy D:\Önemli E:\Yedek /E /COPYALL /L > test.txt

2. Log Kayıtları Tutun

Her önemli kopyalama işlemi için log tutun:

robocopy D:\ E:\Hedef /E /COPYALL /LOG:C:\Logs\kopya_%date:~-4%%date:~-7,2%%date:~-10,2%.log

3. Yönetici Haklarıyla Çalıştırın

NTFS izinlerini ve sahiplik bilgilerini kopyalayabilmek için komut satırını yönetici olarak çalıştırın.

4. Ağ Kopyalamaları İçin Özel Ayarlar

robocopy \\Kaynak\Share \\Hedef\Share /E /COPYALL /Z /MT:4 /R:10 /W:30
  • Daha az iş parçacığı kullanın (/MT:4)
  • Daha fazla yeniden deneme (/R:10)
  • Daha uzun bekleme süreleri (/W:30)

5. Disk Alanını Kontrol Edin

Kopyalama öncesi hedef diskte yeterli alan olduğundan emin olun.

6. Antivirüs İstisnaları

Büyük kopyalama işlemlerinde antivirüs taramasını geçici olarak devre dışı bırakmak veya istisna eklemek performansı artırabilir.

Sorun Giderme

"Erişim Engellendi" Hatası

Çözüm:

  • Komut satırını yönetici olarak çalıştırın
  • /B parametresi ile yedekleme modu kullanın
  • Kaynak ve hedef izinleri kontrol edin

Uzun Dosya Yolu Hataları

Windows'ta dosya yolları varsayılan olarak 260 karakter ile sınırlıdır.

Çözüm:

  • /256 parametresini kaldırın (robocopy varsayılan olarak uzun yolları destekler)
  • Windows 10/Server 2016+ için uzun yol desteğini registry'den etkinleştirin

Yavaş Kopyalama

Çözümler:

  • /MT parametresi ile çok iş parçacıklı kopyalama kullanın
  • Antivirüs taramasını geçici olarak devre dışı bırakın
  • Ağ kopyalamaları için /Z yerine /J (unbuffered I/O) kullanın
  • SMB 3.0 protokolünü kullanın (Windows Server 2012+)

"Hedef Klasör Bulunamadı" Hatası

Robocopy otomatik olarak klasör oluşturmaz.

Çözüm:

if not exist "E:\Hedef" mkdir "E:\Hedef"
robocopy D:\ E:\Hedef /E /COPYALL

Görev Zamanlayıcı ile Otomasyonu

Düzenli yedeklemeler için Windows Görev Zamanlayıcı kullanın:

  1. Görev Zamanlayıcı'yı açın (taskschd.msc)
  2. "Temel Görev Oluştur" seçeneğini tıklayın
  3. Görev adı ve açıklama girin
  4. Tetikleyici seçin (günlük, haftalık vb.)
  5. Eylem olarak "Program Başlat" seçin
  6. Program: cmd.exe
  7. Argümanlar: /c "C:\Scripts\yedekleme.bat"
  8. "En yüksek ayrıcalıklarla çalıştır" seçeneğini işaretleyin

Güvenlik Önerileri

  1. Yedekleme Hesapları: Özel yedekleme hesapları oluşturun ve bunlara sadece gerekli izinleri verin
  2. Şifreleme: Hassas veriler için BitLocker veya benzer şifreleme kullanın
  3. Denetim: Kopyalama işlemlerini denetim günlüklerine kaydedin
  4. 3-2-1 Kuralı: 3 kopya, 2 farklı ortam, 1 off-site yedek
  5. Düzenli Testler: Yedeklerin geri yüklenebilirliğini düzenli test edin

Performans İpuçları

Küçük Dosyalar İçin

robocopy D:\ E:\Hedef /E /COPYALL /MT:32 /R:2 /W:2

Küçük dosyalar için daha fazla iş parçacığı kullanın.

Büyük Dosyalar İçin

robocopy D:\ E:\Hedef /E /COPYALL /MT:4 /J

/J unbuffered I/O kullanır, büyük dosyalarda performans artışı sağlar.

SSD'ler İçin

robocopy D:\ E:\Hedef /E /COPYALL /MT:16

SSD'ler çoklu iş parçacığından daha fazla yararlanır.

Özet Tablosu: Önemli Parametreler

Parametre Açıklama Kullanım
/E Tüm alt dizinleri kopyala Her zaman kullanın
/COPYALL Tüm izinleri ve özellikleri kopyala Yetkiler önemli olduğunda
/MT:n n iş parçacığı ile kopyala Performans için
/R:n n kez yeniden dene Kararsız ortamlarda
/W:n n saniye bekle Ağ kopyalamalarında
/L Sadece listele (test) İlk test için
/LOG:dosya Log kaydet İzlenebilirlik için
/Z Yeniden başlatılabilir mod Ağ kopyalamalarında
/B Yedekleme modu Erişim sorunlarında
/MIR Ayna kopyalama DİKKATLE kullanın
/XO Eski dosyaları atla Artımlı yedeklemeler için
/V Ayrıntılı çıktı Hata ayıklama için
/NP İlerleme gösterme Log dosyaları için

Sonuç

Windows Server'da dosyaları yetkileriyle birlikte kopyalamak, sistem yöneticilerinin en temel görevlerinden biridir. Robocopy, bu işlem için en güçlü ve güvenilir araçtır.

Hatırlamanız gerekenler:

  • Basit kopyalama için: robocopy D:\ E:\Hedef /E /COPYALL
  • Her zaman /L ile test edin
  • Log kayıtları tutun
  • Yönetici haklarıyla çalıştırın
  • Ağ işlemleri için /Z ve /R kullanın
  • Performans için /MT ayarlayın
  • 0-7 arası çıkış kodları başarılıdır

Bu kılavuzu takip ederek, Windows Server ortamınızda güvenli, hızlı ve izlenebilir dosya kopyalama işlemleri gerçekleştirebilirsiniz.

Kaynaklar ve Daha Fazla Bilgi


Yazar Notu: Bu yazıda bahsedilen komutları üretim ortamında kullanmadan önce mutlaka test ortamında denemeniz önerilir. Veri kaybını önlemek için özellikle /MIR gibi parametreleri dikkatli kullanın.

Son Güncelleme: Şubat 2026