Как я могу передавать файлы с одного сервера на другой сервер, используя FTP

12

Как передать удаленные файлы с одного FTP-сервера прямо на другой FTP-сервер?

KoolKabin
источник
Есть ли у вас SSH доступ к первому серверу?
Эван Хеминг
Да, у меня есть доступ по SSH ...
KoolKabin

Ответы:

12

Вы можете использовать программу FTP, которая поддерживает протокол FXP, и ваши два сервера также должны его поддерживать. Вот несколько приложений FTP, которые поддерживают протокол FXP:

Не-FXP альтернативный метод может заключаться в использовании WinSCP с использованием толкания и вытягивания .

paulmorriss
источник
1
+1 CuteFTP Pro поддерживает FXP
Джон Конде
Я думаю, что FXP правильный, который я ищу. Подробнее об этом подробнее .. @John: не могу найти поддержку CuteFTP для FXP .. поиск n поиск
KoolKabin
Да, после тестирования в течение определенного времени, я получил его на работу ... наконец то paulmoriss. Я награжу бойцов в последние дни ..
Thnx
5

Вы можете использовать приложение, такое как WebDrive, которое монтирует удаленные FTP-диски, как если бы они были локальными дисками (так называемые «виртуальные диски»), а затем просто перетащите файлы с одного виртуального диска на другой на своем компьютере.

Как это устроено

  1. Загрузите WebDrive здесь. (Mac или Windows, бесплатная 20-дневная пробная версия)
  2. http://example.comВведите данные FTP для вашего сервера, чтобы создать первый виртуальный диск.
  3. http://example.orgВведите данные FTP для вашего сервера, чтобы создать второй виртуальный диск.
  4. Найдите файлы, которые вы хотите скопировать на первый виртуальный диск, и перетащите их на второй виртуальный диск.

WebDrive скопирует их из первого местоположения FTP на ваш компьютер (вы не видите этого шага; это происходит в фоновом режиме), а затем скопируйте их во второе местоположение FTP для вас. Это самое близкое к копированию между FTP-серверами напрямую, без использования протокола FXP, который пока широко не поддерживается.

Альтернативы WebDrive
В дополнение к WebDrive, вы также можете рассмотреть Transmit (только для Mac) или Expandrive (Mac и Windows), которые предлагают одинаковую функцию удаленного монтирования диска. (Я использую функцию диска Transmit каждый день, чтобы сохранять оптимизированные изображения прямо на FTP-сервер прямо из Photoshop / Fireworks. Это здорово, но и Expandrive, и WebDrive делают это тоже.)

Ник
источник
Идея удаленного FTP Drive действительно великолепна. Все хорошо. Я попытался расширить и подключил мой сайт 1. Затем снова подключился к сайту 2 тоже. Скопировал файл с сайта 1 в мой проводник и вставил его на сайт 2. Я обнаружил, что он загружает файл на временный компьютер и снова загружает его на сайт 2. Он просто похож на другие материалы с меньшими трудностями подключения. Так что попробую следующий солнц.
KoolKabin
1

Если у вас есть SSH-доступ к исходному серверу, вы можете войти на него и использовать ftpкоманду для запуска сеанса FTP с целевым сервером. Вам нужно будет использовать командную строку для ввода команд ftp, но это не так уж сложно, и вы можете найти учебники в Интернете по этому поводу. Например: http://linux.about.com/od/commands/l/blcmdl1_ftp.htm

Эван Хеминг
источник
Я пропускаю шаги ... Могу ли я получить некоторые подробные списки, как выполнить задачу. Я нахожу только список команд. Я пропустил шаг входа в систему. Где я могу войти? на исходном или конечном сервере в SSH
KoolKabin
Ах, хорошо, я думаю, что мое объяснение было слишком высоким уровнем. Какую операционную систему вы используете?
Эван Хеминг
Я использую Windows Vista
KoolKabin
1

РЕДАКТИРОВАТЬ: я только что увидел, что вы используете Windows. Вам понадобится что-то вроде Cygwin для эмуляции инструментария Unix в Windows. В качестве альтернативы вы можете использовать что-то вроде WinSCP.

Как отметил Алексус, SCP - отличный вариант. Другой вариант - rsync для Unix / Linux (доступен практически на всех машинах на основе Unix). Это утилита, которая часто используется для резервного копирования.

Для передачи между двумя серверами, abc.com и xyz.com:

rsync -avzPe ssh user@xyz.com:/source/ /destination/on/abc

Более практичный пример:

rsync -avzPe ssh admin@xyz.com:~/public_html/ ~/public_html/

Несколько замечаний: В приведенном выше примере предполагается, что вы вошли на сервер abc.com . Если вы хотите пойти другим путем, переключите аргументы. Пользователь ( в данном случае admin ) также должен иметь соответствующий доступ SSH. Наконец, флаги, которые я использовал, не обязательно являются единственными, которые будут работать, это просто те, которые я склонен использовать. Технически вы можете обойтись без -v и -P , вы просто увидите менее полезный вывод консоли.

Дэн Симмонс
источник
1

Если у вас есть SSH-доступ, лучшим способом было бы использовать команду tar NIX (compress), а затем использовать scp для переноса его на новый хостинг, а затем снова использовать tar для распаковки и сохранить копию на локальном диске для резервного копирования.

Alexus
источник
1
Идея загрузки его на локальный компьютер для резервного копирования просто хороша. мне это нравится. Но что, если мы хотим пропустить этот шаг? Так что я пробую и другие решения
KoolKabin