Mengapa RoboCopy membuat folder sistem tersembunyi?

10

Saya pikir saya akan mencoba RoboCopy untuk mirroring isi folder ke harddisk lain. Dan sepertinya itu berhasil. Tetapi, untuk beberapa alasan, untuk melihat folder tujuan saya harus mengaktifkan Tampilkan file, folder dan drive yang tersembunyi dan menonaktifkan Sembunyikan file sistem operasi yang dilindungi . Kenapa ini? Folder sumber dan tujuan awalnya adalah direktori yang terlihat dan normal. Ketika saya membuka properti untuk folder tujuan itu, atribut Tersembunyi bahkan dinonaktifkan. Apa yang terjadi disini?

Apakah karena saya menjalankannya di command prompt administrator? Atau apakah itu masalah dengan pengubah pilihan saya? Atau apakah robocopy benar-benar berfungsi seperti ini?

robocopy E: I:\E /COPYALL /E /R:0 /MIR /B /ETA

Pembaruan: Mencoba menyalin drive lain ke folder lain, dan saya mengalami hal yang sama di sana. Tetapi ketika saya mencoba untuk hanya menyalin folder ke folder lain, maka folder tujuan tetap normal. Mungkinkah karena saya menyalin drive? Jika demikian, bagaimana saya bisa mencegah hal ini terjadi? Karena saya benar-benar ingin menyalin seluruh drive ...

Svish
sumber
Membuat direktori sebelumnya tidak berfungsi. Segera setelah Anda menjalankan salinan robo, atribut sekali lagi membuatnya tersembunyi. Perintah atribut tidak berfungsi.

Jawaban:

9

Di sistem saya (Vista), PowerShell menunjukkan c: \ drive memiliki atribut sistem yang tersembunyi dan ditetapkan.

    PS C:\Users\michael.DOMAIN> Get-Item c:\


    Directory:


Mode           LastWriteTime       Length Name
----           -------------       ------ ----
d--hs     8/18/2009 12:19 PM        <DIR> C:\

Setelah menyalin file, Anda dapat menggunakan attrib untuk memperbaikinya. Lihat attrib /? untuk detail.

M Aguilar
sumber
Hm, ya, ketiga hard drive saya memiliki atribut itu juga ... Yang aneh adalah drive D dan E saya mendapat folder sistem tersembunyi ketika saya merampoknya ke folder pada drive eksternal, sedangkan drive C tidak Oo Saya tidak mendapatkan ini ...
Svish
Saya mengalami masalah yang sama dengan jaringan berbagi tersembunyi ( $). Saya berlari Get-Itemdi bagian itu dan itu juga mengatakan d--hsjadi saya kira itu alasannya! Terima kasih!
Chris Haas
Ini juga bisa berlaku untuk berbagi jaringan secara umum, seperti dari kotak NAS Synology kami, yang menandai \\ nas \ sharename sebagai folder tersembunyi. Ketika Anda menyalin folder itu dengan robocopy dengan / copyall atau / COPY: xAxxxx yang mencakup (A) kontribusi folder tujuan dibuat dengan atribut yang sama dengan sumber.
BeowulfNode42
9

Ini ada hubungannya dengan menyalin Informasi Volume Sistem tersembunyi / sistem dari root disk - jika disalin, direktori target mendapat atribut yang sama dengan sistem / tersembunyi.

Membuat direktori sebelum menyalin tidak membantu karena robocopy juga akan menyembunyikannya.

Tambahkan /A-:SHsakelar untuk mengabaikan file sistem.

Informasi lebih lanjut dalam diskusi Microsoft Technet ini .

xcxc
sumber
6

Saya juga mengalami masalah ini. Sepertinya folder tersembunyi ini muncul ketika direktori sumber adalah root dari drive, misalnya. D:\atau F:\. Folder ini akan berisi sistem dan atribut tersembunyi, dan sebagai folder root sumber, itu tidak dapat dihapus oleh attrib -s -hperintah.

Dalam contoh ini, F:\apakah sumbernya G:\adalah tujuan.

Anda dapat melihat atribut di PowerShell. Anda akan melihat mode d--hsuntuk direktori, tersembunyi & sistem. Coba get-itemperintahnyaC:\> Get-Item F:\

Robocopy konon tidak akan membuatnya sebagai folder tersembunyi jika folder itu ada. Saya telah membaca pada beberapa posting yang menggunakan /CREATEakan melakukan trik, atau Anda dapat membuat folder secara manual sebelumnya. Saya harus melakukan pengujian lebih lanjut serta kombinasi lain untuk memverifikasi ini sepenuhnya.

Jika tidak, Anda dapat melakukan attrib -h -s G:\Destination_Folderuntuk menghapus sistem dan atribut tersembunyi setelah salinan.

JP Babiera
sumber
-1

Gunakan solusi M Aguilar jika Anda tidak keberatan berlari attribsesudahnya. Solusi lain adalah dengan membuat direktori target sebelumnya:

  1. mkdir I:\E
  2. robocopy E: I:\E /COPYALL /E /R:0 /MIR /B /ETA
jofafrazze
sumber
2
Ini tidak membantu - E diatur ke sistem tersembunyi setelah salinan.
Terbang ke