RoboCopy не удалось скопировать между сервером в домене на компьютер в рабочей группе
У меня проблема с RoboCopy, и вот сценарий.
Мой сервер работает под управлением Windows Server Essentials 2012 R2. Мой ноутбук работает под управлением Windows 10 Technical Preview. Сервер работает как контроллер домена, но мой компьютер не присоединен к этому домену.
У меня есть общий ресурс на сервере под названием "Картинки", поэтому он находится в ~ \\192.168.1.10\Pictures
который я обозначил как P:
используя учетную запись с полными правами доступа к этой папке. Я пытался отразить эту папку на моем локальном компьютере с помощью простой команды:
RoboCopy P:\ "C:\Users\[MyUsername]\Pictures" /MIR
Это всегда возвращает ошибку ERROR 5 (0x00000005) Accessing Destination Directory
даже если каталог назначения находится под моей учетной записью, владельцем которой я являюсь. Я попытался использовать как административную командную строку, так и стандартную командную строку пользователя. Ни то, ни другое не работает:(
Использование RoboCopy между двумя локальными папками с использованием папки "Изображения" в качестве места назначения работает очень хорошо, поэтому я предполагаю, что это связано с разрешениями домена, а не с фактическими разрешениями назначения.
PS
Самое смешное, что это работало очень хорошо, когда мой компьютер использовал Windows 8 и подключался к Server Essentials с помощью приложения Connector без присоединения к домену (приложение Connector недоступно для Windows 10).
PPS
Копирование напрямую в Windows Explorer работает просто отлично, но мне нужен RoboCopy, поскольку он намного эффективнее синхронизирует большие папки.
Любая помощь будет оценена.
Обновить
Я не могу попробовать с локальным пользователем на сервере, так как сервер является контроллером домена. Однако я попытался дать пользователю домена, с помощью которого я сопоставляю сетевой диск на компьютере рабочей группы, полные права на эту папку, а также сделать его владельцем и все еще не играть в кости. Вот точный вывод RoboCopy:
-------------------------------------------------- ----------------------------- ROBOCOPY:: Надежная копия файла для Windows ------------------------------------------------------------------------------- Начато: fimmtudagur, 25 июня 2015 21:40:01 Источник: P:\ Dest: C:\Users\stefa\OneDrive\Pictures\ Files: *.* Опции: *.* /V /S /DCOPY:DA /COPY:DAT /R:1000000 /W:30 ------------------------------------------------------------------------------ 25 P:\ 2015/06/25 21:40:02 ОШИБКА 67 (0x00000043) Доступ к каталогу назначения C: \ Users \ stefa \ OneDrive \ Pictures \ Сетевое имя не найдено. Ожидание 30 секунд...
Обновление 2 Я почти уверен, что только что обнаружил ошибку в Windows 10 (все еще есть в 10159). Когда я пытаюсь сделать это на компьютере с Windows 8.1 (x64, а также RT, чистая установка на обоих) с помощью robocopy через подключенный сетевой диск или net use \\192.168.1.10\IPC$ ...
все работает просто отлично. Но с помощью клиента Windows 10 это не работает. Моя теория состоит в том, что либо что-то сломалось в том, как Robocopy делает сетевые копии в Windows 10, либо что-то в сетевом стеке в Windows 10 сломало RoboCopy.
3 ответа
Этот ответ связан с синхронизацией копирования данных в существующий каталог с тем же именем корневой папки
например
robocopy "c: ** Public **" "H: ** public **" / s / e / w: 01 / r: 01 /NODCOPY
Если вы хотите получить оригинальное разрешение для файла назначения, используйте параметр / NODCOPY
/ s / e / w: 01 / r: 01 / NODCOPY
Я наткнулся на ту же проблему, на установке Windows 10. Я могу обойти это, хотя, как я обнаружил, что проблема была /DCOPY:DA
переключатель. С помощью /DCOPY:T
например работал нормально. Итак, не уверен насчет истинной причины, но я могу жить с обходным путем, по крайней мере, пока...
Если это контроллер домена, он не может создавать локальные учетные записи. Обратите внимание, что необходимо соблюдать несколько предостережений, чтобы обеспечить надлежащий доступ между подключенным к домену компьютером и компьютером рабочей группы. Они в основном сосредоточены на удаленном PowerShell, удаленной командной строке и диспетчере сервера.
Попробуйте вместо этого использовать UNC-путь, подобный следующему:
net use \\<SOURCE>\IPC$ /user:username password
robocopy \\<SOURCE>\backup c:\BACKUP / /S /SEC /V /NDL /NP /NFL /LOG:"c:\log.txt" /R:1 /W:1
net use /delete