Как быстро перенести файлы сайта с одного сервера на другой

Узнайте эффективные методы быстрого переноса файлов с одного сервера на другой. Рассмотрены способы и проблемы при переносе крупных объемов данных.
Как быстро перенести файлы сайта с одного сервера на другой

Довольно частый вопрос после обращения в нашу техническую поддержку с просьбой перенести сайт: Как Вы так быстро перенесли мой сайт?

У многих владельцев собственного сайта размер файлов достигает свыше 10 ГБ, а то и 300 ГБ если это крупный интернет-магазин. Неопытных веб-мастеров это заводит в тупик, потому что перенести такой объем файлов довольно затруднительно с использованием стандартных методов.

Давайте рассмотрим популярные способы переноса файлов с одного сервера на другой:

  1. Создание архива и распаковка
  2. Скачать файлы сайта через FTP-клиент и загрузить их на новый сервер

Данные 2 способа очень популярны и используются часто веб-мастерами для переноса сайта. Но давайте рассмотрим их минусы, если файлы сайта достигают больших объемов, о которых мы говорили Выше.

  • Создать архив файлов, которые весят 300 ГБ затруднительно, потому что у многих хостеров есть свои ограничения на время выполнения каких-либо задач, поэтому при создании архива задача может оборваться или выполняться очень долго, а может вовсе сделать архив некачественным, что приведет к ошибкам при переносе и работе на новом сервере.
  • Аналогично можно сказать и про второй вариант, скачать такой объем файлов через FTP-клиент к себе на компьютер, а потом загрузить их на новый сервер будет очень долго и Вы потратите много времени. Но стоит заметить, это более качественный вариант, чем первый.

Как же наши сотрудники переносят файлы сайта такого объема, при этом быстро и качественно?

Ответ: Всего одной командой, копируем файлы сразу же на новый сервер, без создания архивов и скачивания файлов к себе на компьютер.

Данная операция выполняется при помощи утилит копирования файлов. В данной статье мы рассмотрим RSYNC. Это — программа для UNIX-подобных систем, которая выполняет эффективно синхронизацию файлов и каталогов в двух местах с минимизированием трафика, используя кодирование данных при необходимости. Важным отличием rsync от многих других программ/протоколов является то, что зеркалирование осуществляется одним потоком в каждом направлении. rsync может копировать или отображать содержимое каталога и копировать файлы, опционально используя сжатие и рекурсию. rsync передает только изменения файлов, что отражается на производительности программы.

Для данной операции требуется доступ по SSH. К счастью, что практически на всех платных хостингах он предоставляется.

Начинаем переносить? — Погнали.

  1. Нам потребуется авторизоваться на сервере, откуда мы будем переносить файлы сайта. (Если Вы не знаете данные для подключения по SSH, то их можно запросить в технической поддержки Вашего хостинга). В нашей же панели эти данные сразу отображаются в управлении продуктом, блок «Данные для FTP/SSH». Выполнить подключение можно в любом ssh-клиенте (рекомендуем Putty или Terminal в MacOS) командой: ssh login@ip_server, где login — логин Вашего аккаунта, ip_server — IP Вашего сервера, далее нажать Enter и ввести пароль от аккаунта.
  2. После того, как мы попали на сервер, мы можем видеть следующее:

Дальше необходимо узнать полный путь каталога до папки, файлы которой мы будем переносить на новый сервер. Это можно узнать в терминале, при помощи команды pwd:

Командой pwd мы узнаем наш локальный каталог, командой ls мы узнаем, какие папки находятся в данный момент в нашем каталог, при помощи команды cd мы переходим в нужный нам каталог, до тех пор, пока не дойдем до каталог с сайтом и вводим снова команду pwd, которая покажет нам нужный каталог.

Такую же операцию нужно выполнить и на новом сервере, куда мы будем переносить файлы нашего сайта.

3. Теперь когда мы знаем полные пути каталогов на двух серверах, мы можем приступить к переносу файлов всего одной командой:

rsync -avP /КАТАЛОГ_СО_СТАРОГО_СЕРВЕРА/ login_new_server@IP_NEW_SERVER:/КАТАЛОГ_ДЛЯ_НОВОГО_СЕРВЕРА/

Команда будет выглядеть следующем образом:

rsync -avP /var/www/domainff/data/www/site.ru/ [email protected]:/var/www/domainff/data/www/site.ru/

Давайте рассмотрим команду подробнее. Мы запускаем команду rsync и передаем ей параметры:

  • a — Режим архивирования, когда сохраняются все атрибуты оригинальных файлов
  • v — Выводить подробную информацию о процессе копирования;
  • P — Сохранять права для файлов;

Указываем каталог, откуда мы будем переносить файлы сайта, обязательно указать знак *, чтоб выполнялось копирование всех файлов с указанной директории. Дальше мы задаем подключение на новый сервер, куда будем переносить файлы нашего сайта, а также указываем каталог, куда будут копироваться наши файлы.

4. Нажимаем Enter, вводим пароль от нового сервера и процесс копирования начался.

Мы сможем наблюдать за процессом, как быстро переносятся файлы сайта на новый сервер, в конце мы увидим следующее:

Это будет означать, что файлы сайта были успешно перенесены.

На этом данную статью можно считать законченной, мы надеемся, что она была полезной и теперь для Вас перенести файлы сайта большого объема будет не проблемой.

Не забывайте, что наши специалисты в любое время дня и ночи бесплатно помогут с переносом ваших сайтов на наш хостинг!

Поделиться статьей

Вам будет интересно

Как защитить сайт от вирусов и вредоносного ПО

Как защитить сайт от вирусов и вредоносного ПО

Расскажем, как защитить свой сайт от вирусов и хакеров, а также вредоносных программных обеспечений и прочих неприятностей.
Оптимизация WordPress: Как кэширование ускоряет загрузку вашего сайта

Оптимизация WordPress: Как кэширование ускоряет загрузку вашего сайта

Рассказываем об основных принципах кэширования, популярных плагинах для WordPress и методах оптимизации загрузки страниц с подробн ...