Skopiuj uprawnienia do plików z jednego katalogu do drugiego

17

W weekend skopiowałem dane naszej firmy z jednego dysku twardego na inny większy. Myślałem, że pozwolenie zostało skopiowane, ale nie zrobiły tego.

Jaki jest najlepszy (i najszybszy) sposób na skopiowanie uprawnień, które zostały pierwotnie ustawione na moje nowe dane, bez konieczności ponownego kopiowania wszystkich danych? Moi użytkownicy mają teraz dostęp do danych, więc nie chcę ich kopiować, ponieważ zmiany mogą zostać utracone.

Dane są przechowywane na serwerze Windows Server 2008 R2

Simon Foster
źródło

Odpowiedzi:

17

Myślę, że to zadziała:

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

Kopie „ SOU ”: S = informacje o bezpieczeństwie (listy ACL NTFS), O = informacje o własności, U = a Informacja o wizycie

Jeśli to nie zadziała, możesz użyć tego polecenia, aby wykonać kopię zapasową uprawnień NTFS:

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

Przełącznik / T pozwala mu również uzyskać uprawnienia do podfolderów. Przełącznik / C pozwala na kontynuację nawet w przypadku napotkania błędów (chociaż błędy będą nadal wyświetlane).

A następnie użyj tego polecenia, aby przywrócić uprawnienia:

icacls d:\ /restore ntfsperms.txt

Zauważ, że w poleceniu zapisania uprawnień określiłem folder docelowy D:\Data, ale kiedy je przywróciłem, określiłem go D:\jako cel. Możesz pomyśleć, że określenie D:\jako cel w poleceniu przywracania może w jakiś sposób zepsuć uprawnienia w innych folderach na tym poziomie, ale jak widać z pliku wyjściowego ntfspermissions.txt, zawiera on tylko informacje o folderze Data i podfolderach, dzięki czemu wszystko się zmieni.

Kalatzis Stefanos
źródło
1
Myślę, że tutaj icacls jest odpowiedzią. +1
MDMarra
Zgoda. ponieważ nie może skopiować danych, ponieważ dane są już w użyciu i prawdopodobnie uległy zmianie, najlepszym rozwiązaniem jest icacls do eksportowania / importowania uprawnień.
Rex,
Dzięki za wszelką pomoc, eksportuję icacls podczas pisania i spróbuję zaimportować później. Następnym razem będę pamiętać, aby zawsze sprawdzać moje uprawnienia
Simon Foster,
3

Za pomocą programu PowerShell:

Get-Acl 'source path' | Set-Acl 'destination path'
torvin
źródło
1
Szukałem tego samego. Wydaje mi się, że to prawdziwa odpowiedź. Inni mówią, co robić przed kopią, a nie po zapytaniu
alvaroc
0

Możesz spróbować użyć Robocopy . AFAIK nadal działa na nowszych wersjach systemu Windows.

pritaeas
źródło
Czy znasz potrzebną składnię? Próbowałem źródłowego źródła robocopy / secfix / xo / xn / xc z powyższej strony i generuje błąd polegający na tym, że nie wiem, które uprawnienia do kopiowania
Simon Foster
1
Jest tak, ponieważ robocopy będzie działać tylko wtedy, gdy zawartość udziału pozostanie niezmieniona. Wygląda na to, że użytkownicy prawdopodobnie to zmienili, prawda? Nie sądzę, że robocopy jest teraz narzędziem do użycia (powinieneś był go jednak użyć na początku)
MDMarra,
Ten przewodnik dotyczy bardzo wczesnej wersji robocopy. Jakiej wersji używasz teraz? Być może uda Ci się uciec z / copy: s, aby zmienić tylko listy ACL NTFS, ale nie jestem pewien ... Rozpocznę teraz mały test.
HopelessN00b
0

Jak powiedział Priaeas, robocopy.

Poręczny przewodnik dla przełączników w użyciu .

/ copyall lub / copy: DATSOU skopiuje „wszystko” (dane, atrybuty, znaczniki czasu, listy ACL NTFS, informacje o właścicielu i audycie).

/ COPY: copyflag [s]: What to COPY (domyślnie jest to / COPY: DAT) (copyflags: D = Dane, A = Atrybuty, T = Znaczniki czasu S = Bezpieczeństwo = Listy ACL NTFS, O = Informacje o właścicielu, U = Informacje o wyszukiwaniu) .

Beznadziejny
źródło
1
Mówi w szczególności, że nie chce kopiować danych. Ponadto robocopy skopiuje zabezpieczenia tylko wtedy, gdy pliki nie zostały zmodyfikowane. Ponieważ udział jest już w produkcji, powiedziałbym, że to bezpieczny zakład, że został zmieniony.
MDMarra,
0
xcopy e:\*.* z: /T /E /I /H /K /X /Y

e:był korzeniem fizycznego dysku z kilkoma udziałami i różnego rodzaju blokami dziedziczenia. z:był „nowym” dyskiem, w tym przypadku mapowanym.

Po prostu działało, nie dla akcji, tylko uprawnienia.

John Lamb
źródło
-4

CopyMik Freeware Program mit Keys:

/ CSF [FileMask1 [FileMask2 [....]]]]] Kopiuj atrybuty bezpieczeństwa pliku. Tylko pliki z określoną maską. (maska ​​domyślna *)

/ CSD [DirMask1 [DirMask2 [....]]]]] Kopiuj atrybuty zabezpieczeń folderu. Tylko foldery z określoną maską. (maska ​​domyślna *)

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

użytkownik2290929
źródło