Articles

Robocopy /MIR – skift-spejling af filtilladelser

først offentliggjort på TECHNET den 31.juli 2008
nogle kunder påpegede, hvad de mener er en fejl i Robocopy.
situationen er: Antag, at du kopierer dine filer ved hjælp af Robocopy i vinduer Server 2003 eller HP. Derefter ændres fil-eller mappetilladelser (ACL ‘ er) visne på kilde eller destination. Du vil bruge /MIR-kontakten til at spejle tilladelserne:
> ROBOCOPY source destination /MIR /SEC
Robocopy undlader at spejle filtilladelser – men arbejder for mappetilladelser.
denne adfærd er af design. Robocopy fokuserer på at kopiere kun filer, der er ændret (som standard i størrelse eller ændret dato). Hvis en fil ser ud som om den er ændret, kopierer Robocopy sine data, og hvis du også har angivet kopieringssikkerhed, kopierer NTFS ACL fra kilde til mål efter kopiering af dataene. Hvis en fil ser ud som om den ikke er ændret, springer Robocopy som standard over den og kopierer intet til filen, ikke engang dens sikkerhedsinfo.
da jeg skrev “security copy” – delen af Robocopy den 22.maj 1997, valgte jeg at gøre dette af præstationsårsager for at holde Robocopy-tider for store træer nede. Dette var en passende gennemførelse for de fleste folks behov på det tidspunkt. En anden grund til, at jeg valgte at gøre tingene som jeg gjorde, er også, at Indstilling af sikkerhed på mapper er tilstrækkelig for de fleste mennesker. Indstilling af sikkerhed på fil-for-fil-basis er en mere detaljeret tilgang, helt sikkert, men medfører en større vedligeholdelsesomkostninger, måske for meget for mange brugere.
derfor er den løsning, der er opført som en løsning indsendt af Martin Sugec (MVP), netop hvad der skal gøres i denne situation, og denne adfærd forventes:
> ROBOCOPY /Mir <kilde><target>
> ROBOCOPY /e /copy:S /IS /it <Source><Target>
Den første Robocopy-kommando ovenfor kopierer data og sikkerhed for filer, der er blevet opdateret, og den anden Robocopy-kommando opdateres fil sikkerhed for alle filer, uden at kopiere nogen fildata.
Hvis du bruger en ressource Kit version af Robocopy, og ønsker at holde sikkerhed synkroniseret mellem to træer, hvor dataene er temmelig statisk, men sikkerhed opdateres nu og da. Faktisk afsnittet “kopiering af NTFS-sikkerhedsoplysninger” i Robocopy.doc (fra Ressourcesættene) siger:
“for at opdatere sikkerhedsoplysninger for eksisterende destinationsfiler og mapper uden at kopiere fildata skal du bruge /IS-kontakten sammen med /COPY-kontakten uden D-flag. For eksempel /IS /COPY:SOU ville opdatere alle sikkerhedsoplysninger for alle valgte filer uden at kopiere fildata.”
ting er gået lidt i de sidste 11 år, sikkerhedsmæssigt, så jeg ændrede den måde, tingene fungerer på dette område lidt for den version af Robocopy, der endte i Vista, idet hvis du angiver /sekret på kommandolinjen, vil Robocopy kopiere sikkerhed for springede filer, der findes i både kilden og måltræerne.
så for at opretholde to træer synkroniseret, herunder deres sikkerhed, ved hjælp af Vista ‘ s Robocopy, kan du bruge følgende som din almindelige Robocopy-kommando:
> ROBOCOPY <kilde><target> /MIR /SEK /SEKSFIKS
/mir replikerer data og sikkerhed (som /SEC er angivet) for ændrede filer, og /SEC opdaterer kun sikkerheden for uændrede filer. Tilføj / V til kommandolinjen, hvis du vil se, hvilke filer der har deres sikkerhed “fast” uden at deres data kopieres.

Kevin Allen