Rechte per icacls setzen nach Kopieren
Hallo zusammen,
es geht um die Migration von Terminalserver-Profilen, welche auf einen neuen Profilserver kopiert werden sollen
und anschließend die Rechte auf die Ordner entsprechend gesetzt werden.
Dabei sind die zu kopierenden Profile in einer txt-Datei hinterlegt, welche mit "robocopy" ausgelesen und kopiert werden.
Das funktioniert soweit:
Jetzt habe ich folgende Zeile in das Script hinzugefügt:
Dabei bekomme ich jedoch den Fehler:
Domäne\%i: Zuordnungen von Kontennamen und Sicherheitskennungen wurden nicht durchgeführt.
0 Dateien erfolgreich verarbeitet, bei 1 Dateien ist ein Verarbeitungsfehler aufgetreten.
Dabei wurde das Script unter einer Kennung mit administrativen Rechten ausgeführt.
Auch das half nicht .
Wie kann ich die Ordner entsprechend berechtigen? Mir gehen grad die Ideen aus...
Danke im Voraus.
Mfg tg6300
es geht um die Migration von Terminalserver-Profilen, welche auf einen neuen Profilserver kopiert werden sollen
und anschließend die Rechte auf die Ordner entsprechend gesetzt werden.
Dabei sind die zu kopierenden Profile in einer txt-Datei hinterlegt, welche mit "robocopy" ausgelesen und kopiert werden.
Das funktioniert soweit:
set src=c:\temp-src
set dest=c:\temp-dest
FOR /F "delims=" %%i in (c:\usr\list.txt) do robocopy /MIR %src%\%%i %dest%\%%i
Jetzt habe ich folgende Zeile in das Script hinzugefügt:
icacls "%dest%\%%i" /grant "Domäne\%%i":F /T
Dabei bekomme ich jedoch den Fehler:
Domäne\%i: Zuordnungen von Kontennamen und Sicherheitskennungen wurden nicht durchgeführt.
0 Dateien erfolgreich verarbeitet, bei 1 Dateien ist ein Verarbeitungsfehler aufgetreten.
Dabei wurde das Script unter einer Kennung mit administrativen Rechten ausgeführt.
Auch das half nicht .
Wie kann ich die Ordner entsprechend berechtigen? Mir gehen grad die Ideen aus...
Danke im Voraus.
Mfg tg6300
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 306031
Url: https://administrator.de/contentid/306031
Ausgedruckt am: 17.11.2024 um 05:11 Uhr
6 Kommentare
Neuester Kommentar
Domäne\%i:
Der Fehlermeldung zu urteilen hast du die Klammern bei der FOR-Schleife vergessen, so dass die Laufvariable %%i eben nicht mehr verfügbar ist:FALSCH:
FOR /F "usebackq delims=" %%i in ("c:\usr\list.txt") do robocopy "%src%\%%i" "%dest%\%%i" /MIR
icacls "%dest%\%%i" /grant "Domäne\%%i":F /T
RICHTIG:
FOR /F "usebackq delims=" %%i in ("c:\usr\list.txt") do (
robocopy "%src%\%%i" "%dest%\%%i" /MIR
icacls "%dest%\%%i" /grant "Domäne\%%i":F /T
)
Ja, die Inheritance (CI)(OI)
So gehört das ...
icacls /? eintippen und davon lernen ...
icacls "%dest%\%%i" /grant "Domäne\%%i:(CI)(OI)F" /T
icacls /? eintippen und davon lernen ...