Не удается использовать RCP в Windows Server 2008, но с RSH все в порядке, почему?
Я пытаюсь использовать команду "rcp" для копирования файлов с компьютера Unix на компьютер с Windows Server 2008 R2. Почему-то ничего не копируется.
Например, я использую следующую команду для копирования файла.rhosts с компьютера Unix на компьютер Windows:
C:\Windows\posix.exe /u /c /bin/rcp <IP-address>.<user>:/u/<user>/.rhosts \temp.
Там нет сообщения об ошибке. Единственное, что я могу сказать, что это не удалось - это простой факт, что файлы не были скопированы из Unix.
У меня нет проблем с запуском команды rsh на том же компьютере Windows. Я думаю, что они оба должны работать, или они оба должны потерпеть неудачу. Я не ожидал увидеть одну работу, но другая не удалась. Более того, у меня нет проблем с запуском "rsh" и "rcp" на компьютере с Windows Server 2003 R2. Поэтому я знаю, что со стороной Unix все в порядке. Там должно быть что-то не так на стороне Windows.
Я проверил EventViewer, и нет сообщения об ошибке.
Я запустил "Process Monitor" в Windows Server 2008 R2, чтобы проверить события от запуска команд "rsh" и "rcp". Я не могу найти ничего необычного. На самом деле записанные события как из "rsh", так и из "rcp" выглядят почти одинаково (конечно же, идентификаторы процессов разные).
Я также пробовал это на компьютере с Windows Server 2008 (не R2). Но результат тот же, что и у Windows Server 2008 R2 - "rsh" работает, "rcp" дает сбой.
Может кто-то помочь мне с этим? Заранее спасибо.
Джей Чан
1 ответ
Я в конечном итоге решить эту проблему с помощью PSCP вместо RCP. Я загружаю PSCP с этого веб-адреса: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Я полагаю, что проблема, возможно, связана с тем, что безопасность в Windows Server 2008 сильнее, чем в предыдущих версиях, и она не позволяет проверять учетные данные пользователя, которые использует RCP, или что-то в этом роде. PSCP требует явной передачи имени пользователя и пароля, а Windows Server 2008 - вот так.