Как передавать файлы с SFTP между локальными папками / дисками?

751
Walter

Немного нубский вопрос, поэтому я прошу прощения, если это даже не выполнимо, но я подумал, что спросить.

К моему компьютеру подключены два жестких диска (Windows 8.1), один внутренний, другой внешний (подключенный через USB). Назовем их накопителями A: \ и Z: \ соответственно. На каждом диске есть папка, которую я хотел бы синхронизировать с эквивалентной папкой на другом диске. Я хотел бы сделать это через sFTP, следующим образом:

A: \ Folder1 <== sFTP ==> Z: \ Folder2

В моем клиенте sFTP (FreeFileSync) меня спрашивают имя сервера / IP-адрес и тому подобное. Я понятия не имею, что вводить в эти поля.

Это возможно? И если да, то как это сделать? Пожалуйста, имейте в виду, что я непрофессионал, который никогда не использовал FTP и мало что знает об этом, кроме того, что мне нужно использовать его для этого.

Любые мысли будут оценены. Благодарю.

0
Почему бы вам просто не скопировать файлы и не удалить альтернативные потоки данных NTFS? в Google есть много об этом. Putnik 6 лет назад 0
Спасибо за предложение. Дело в том, что я не знаю, доверяю ли я бесплатным или коммерческим утилитам в поиске и удалении всех ADS, поэтому я искал способ передачи файлов, которые изначально несовместимы с ADS. Я все еще буду изучать это, на случай, если найду что-нибудь интересное. Walter 6 лет назад 0
Почему бы вам не спросить о копировании файлов без рекламы? Это [проблема XY] (https://meta.stackexchange.com/q/66377/218578). Martin Prikryl 6 лет назад 0
Я могу Google «копировать файлы без рекламы» достаточно хорошо; Я спросил о SFTP, потому что я прочитал руководство, в котором упоминается этот метод, только я не знал, как заставить его работать. Я просто хочу знать, возможно ли то, о чем я думаю (в ОП), прежде чем я исключу это. Walter 6 лет назад 0
Чтобы это работало, вам нужно [установить SSH сервер] (https://winscp.net/rus/docs/guide_windows_openssh_server). Martin Prikryl 6 лет назад 0
Это то, что я собрал. Спасибо за ссылку. Walter 6 лет назад 0

2 ответа на вопрос

0
Pak

Я заинтересован в вашем мыслительном процессе для требования SFTP? SFTP обеспечивает зашифрованную передачу файлов между двумя компьютерами через (возможно, виртуальное) сетевое соединение. Для этого вам понадобится SFTP-клиент (который, похоже, уже есть) и SFTP-сервер, который, как кажется, может и не быть.

Если вы копируете файлы на одном компьютере, нет смысла использовать этот протокол; в конце концов, файлы, которые вы копируете, не будут видны за пределами машины, поэтому функции шифрования и передачи по сети SFTP будут спорными.

Я бы использовал, robocopyчтобы отразить два диска; например, чтобы убедиться, что Z:\Folder1он идентичен A:\Folder2:

robocopy /mir A:\Folder1 Z:\Folder2 

Если вы, скорее всего, внесете изменения A:\Folder1и Z:\Folder2независимо, скажем, изменение A:\Folder1\fileAи Z:\Folder2\fileB, вы можете заменить /mirпараметр некоторыми другими параметрами robocopy, чтобы просто скопировать более новые файлы, и запустить его один раз в каждом направлении, чтобы обеспечить репликацию всех изменений.

Я оставлю последнее как упражнение для вас; Вы всегда можете запустить, robocopy /?чтобы получить параметры, используемые robocopy.

Спасибо за ответ. Причина, по которой я хочу использовать SFTP, заключается в том, что я слышал, что это один из немногих способов передачи / синхронизации файлов, исключая альтернативные потоки данных NTFS, в которых я опасаюсь. Я знаю, что перенос на / с дисков в формате FAT также работает, но некоторые файлы имеют размер более 4 ГБ, так что это не очень хорошо. Я знаю, что это странный обходной путь; честно говоря, мне просто интересно посмотреть, можно ли это сделать. Walter 6 лет назад 0
Это случай использования, который я не рассматривал! В этом случае вам нужно будет установить SFTP-сервер и подключиться к `localhost`. Вы также можете использовать обычный FTP-сервер. Возможно, вы захотите рассмотреть версию rsync для Windows (инструмент Linux / Unix, перенесенный через нее) как более легкую версию (она ведет себя аналогично robocopy, поскольку это полное решение), но я не проверял, игнорирует ли он ADS или нет , Pak 6 лет назад 0
0
Martin Prikryl

Как насчет хранения и распаковки файлов?

Если вы передадите вывод tar непосредственно в Untar, вы не получите никаких накладных расходов.


Если вы хотите пойти по SFTP-пути, вам нужно установить SSH-сервер в Windows. Вы можете использовать сборку Microsoft OpenSSH (ссылка на мое руководство).

Спасибо за ответ, но я не знаю, что такое «тар», «трубопровод» и «накладные расходы». (Отредактировано, чтобы добавить: Google говорит, что вы можете говорить о чем-то связанном с Linux. Я ничего не знаю о Linux; я на Windows. Извините.) Walter 6 лет назад 0