У меня есть SSH-доступ к обоим серверам, один из них пуст. Как я могу переместить каталог сайта со старого сервера на новый сервер через соединение SSH?
PS: на обоих серверах стоит unix
Мой любимый это rsync
. Он достаточно умен, чтобы копировать только то, что должно быть скопировано (т.е. изменено или новое).
rsync -avz /source/path user@desthost:/destination/path/
Обратите внимание на последний /
в конце, чтобы попросить rsync скопировать внутри этого пути (не поверх него).
rsync
заботится об управлении ssh-соединением для вас. В avz
(типичных) опциях предлагается rsync
использовать режим архива (tar) для рекурсивного копирования и сохранять как можно больше даты и пользовательских значений. v
Опция многословным , чтобы показать вам , что происходит в настоящее время. z
Опция почтовый индекс (компресс) передачу , мы надеемся сэкономить время и пропускную способность.
rsync
Он очень мощный и используется большинством профессионалов, однако вы можете сначала протестировать его, используя не ценные данные, чтобы убедиться, что путь и параметры соответствуют требованиям.
Если вам нужно использовать rsync через SSH для нестандартного порта, такого как 2222, вы можете использовать следующую команду ( см. Эту статью ):
rsync -avz -e 'ssh -p 2222' /source/path user@desthost:/destination/path/
Ты ищешь смоляную трубу .
источник
Я написал хорошо работающий ответ на другой вопрос. Он использует SSH-агент для перемещения дампа MySQL: самый быстрый способ переместить несколько баз данных на новый сервер
Объедините это с ответом Джскотта
источник