Dosya izinlerini bir dizinden diğerine kopyala


17

Hafta sonu boyunca şirket verilerimizi bir sabit diskten diğerine kopyaladım. İznin kopyalanacağını düşündüm ama vermediler.

Tüm verileri tekrar kopyalamak zorunda kalmadan, orijinal olarak ayarlanan izni kopyalamanın en iyi (ve en hızlı) yolu nedir? Kullanıcılarım şimdi verilere erişiyor, bu nedenle değişiklikler kaybolabileceğinden verileri yeniden kopyalamak istemiyorum.

Veriler, Windows Server 2008 R2 üzerinde barındırılmaktadır.

Yanıtlar:


17

Bunun işi yapacağını düşünüyorum:

robocopy source destination /E /COPY:SOU /xo /xn /xc /xx /LOG+:F:\Sec.log.

" SOU " kopyaları: S = Güvenlik bilgisi (NTFS ACL), O = Mülkiyet bilgisi, U = aUyarı bilgisi

Bu işe yaramazsa, NTFS izinlerini yedeklemek için bu komutu kullanabilirsiniz:

icacls d:\data /save ntfspermissions.txt /t /c

/ T anahtarı çok alt klasör izinleri almak için izin verir. / C anahtarı bu (hatalar hala görüntülenecek olsa da) hataları karşılaştı bile devam etmesini sağlar.

Ardından izinleri geri yüklemek için bu komutu kullanın:

icacls d:\ /restore ntfsperms.txt

İzinleri kaydetme komutunda hedef klasörü belirlediğimi D:\Data, ancak geri yüklediğimde tam D:\olarak hedef olarak belirlediğimi unutmayın. D:\Geri yükleme komutunda hedef olarak belirtmenin , bu düzeydeki diğer klasörlerin izinlerini bir şekilde bozabileceğini düşünebilirsiniz , ancak ntfspermissions.txt çıktı dosyasından görebileceğiniz gibi, yalnızca Veri klasörü ve alt klasörler hakkında bilgi içerir. tüm değişecek.


1
Bence buradaki icacls. +1
MDMarra

kabul. Veriler zaten kullanımda olduğu ve büyük olasılıkla değiştiği için verileri yeniden kopyalayamadığından, izinleri dışa / içe aktarmak için icacls gitmek için en iyi yol gibi görünüyor.
Rex

Tüm yardımlarınız için teşekkürler, yazarken icacls ihraç ediyorum ve daha sonra içe aktarmayı deneyeceğim. Bir dahaki sefere izinlerimi her zaman kontrol etmeyi hatırlayacağım
Simon Foster

3

PowerShell'i kullanma:

Get-Acl 'source path' | Set-Acl 'destination path'

1
Aynı şeyi daha çok arıyordum. Bana göre bu gerçek bir cevap. Diğerleri kopyadan önce ne yapılacağını söyler, istendiği gibi değil
alvaroc

0

Robocopy'yi kullanmayı deneyebilirsiniz . AFAIK hala yeni Windows sürümlerinde çalışıyor.


İhtiyacım olan sözdizimini biliyor musun? Yukarıdaki sayfadan robocopy kaynak hedef / secfix / xo / xn / xc'yi denedim ve hangi izinlerin kopyalanacağını bilmeme konusunda bir hata atıyor
Simon Foster

1
Çünkü robokopi sadece paylaşımın içeriği değişmezse çalışacaktır. Kullanıcılarınız muhtemelen değiştirmiş gibi görünüyor, değil mi? Ben robocopy şimdi kullanmak için bir araç olduğunu düşünmüyorum (başlangıçta kullanmış olmalıydın)
MDMarra

Bu rehber robokopinin çok erken bir sürümü içindir. Şu anda hangi sürümü kullanıyorsunuz? Sen olabilir / a ile kurtulmak mümkün kopyalayın: Yalnızca NTFS ACL'lerini değiştirmek için şimdi s, ama emin ... Ben şimdi biraz testini tekme edeceğiz değilim.
HopelessN00b

0

Priaeas'ın dediği gibi, robokopi.

Kullanılacak anahtarlar için kullanışlı referans kılavuzu .

/ copyall veya / copy: DATSOU "her şeyi" kopyalar (veri, öznitelikler, zaman damgaları, NTFS ACL'leri, sahip ve denetim bilgileri).

/ COPY: copyflag [s]: Ne kopyalanır (varsayılan: / COPY: DAT) (copyflags: D = Veri, A = Özellikler, T = Zaman Damgası S = Güvenlik = NTFS ACL, O = Sahip bilgisi, U = aUditing bilgisi) .


1
Özellikle verileri kopyalamak istemediğini söylüyor. Ayrıca, robocopy yalnızca dosyalar değiştirilmediyse güvenliği kopyalar. Hisse şu anda üretimde olduğundan, bunun değişmesi güvenli bir bahis olduğunu söyleyebilirim.
MDMarra

0
xcopy e:\*.* z: /T /E /I /H /K /X /Y

e:çeşitli hisselere sahip fiziksel bir sürücünün kökeniydi ve her türlü kalıtım bloğu hakkında noktalı. z:"yeni" sürücü, bu durumda eşlenmiş bir sürücü oldu.

Sadece paylar için değil, sadece izinler için çalıştı.


-4

CopyMik SORULAR VE CEVAPLAR Program mit Keys:

/ CSF [FileMask1 [FileMask2 [....]]]] Dosya güvenlik özniteliklerini kopyalayın. Yalnızca belirtilen maskeye sahip dosyalar. (varsayılan maske *)

/ CSD [DirMask1 [DirMask2 [....]]]] Klasör güvenlik özniteliklerini kopyalayın. Yalnızca belirtilen maskeye sahip klasörler. (varsayılan maske *)

http://www.superbasis.de/copymik/index.htm

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.