Быстрое копирование с одного сервера на сервер.

J
На сайте с 06.07.2011
Offline
169
2514

Забился сервер, взял новый с 2x4tb винтами. Вопрос стоит в быстром копировании файлов.

Ранее, когда позволяло место - делал таким способом. Делал архив сайта zip или gz, далее дамп базы и копировал всё на новый сервер, далее всё разворачивал. Сайт в 150gb паковался в течении может пары часов и копировался примерно так же. Т.е. в течении 4-5 часов - поднимал сайт на другом сервере.

Копировал такой командой:

scp -r /home/copy/ root@ip.server:/home/copy

Нужно в короткий срок скопировать информацию с одного сервера на другой. Архив делать не вариант, места нет. Можно конечно скопировать часть информации напрямую, к примеру 100gb, далее удалить и сделать архивы по папкам с постепенным удалением.

Подскажите пожалуйста, как будет разумнее поступить в данной ситуации? Нужно скопировать 1,8tb (файлов несколько миллионов, пока не могу точно сказать - сканирую, думаю будет 5 миллионов файлов где-то) . Если копировать командой: scp -r /home/copy/ root@ip.server:/home/copy - я думаю на несколько дней всё затянется. Как быть?

I
На сайте с 05.06.2006
Offline
117
#1

Привет! Используйте rsync

Миграция с ISPManager 4 в VestaCP (https://chast.in/copy-users-from-ispmanager-2-vestacp.html) Хостинг серверов, пользуюсь сам (http://vps-server.ru/rp/pl.php?96)
Оптимизайка
На сайте с 11.03.2012
Offline
396
#2

На машине назначения:

nc -l -p 60000 > file

На машине источнике:

nc -q 0 example.com 60000 < file

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
J
На сайте с 06.07.2011
Offline
169
#3
ivtrans:
Привет! Используйте rsync

Спасибо!

Как я понимаю команда будет такой: rsync -zavP user@192.168.1.1:/backup /backup/file1/ - в момент копирования ничего страшного, если сайты будут работать? К примеру где-то будет идти парсинг контента.

---------- Post added 25-10-2017 at 21:32 ----------

Оптимизайка:
На машине назначения:

nc -l -p 60000 > file

На машине источнике:

nc -q 0 example.com 60000 < file

Спасибо, попробую через resync вроде как шустро тоже должно работать.

---------- Post added 25-10-2017 at 21:45 ----------

Оптимизайка:
На машине назначения:

nc -l -p 60000 > file

На машине источнике:

nc -q 0 example.com 60000 < file

os: centos

сервер источник: 192.168.1.1

сервер куда скопируется инфа: 192.168.5.5

папка которую нужно скопировать со всеми подпапками /home/admin/web/

папка на новом сервере куда нужно скопировать /home/backup/

Если не сложно напиши пожалуйста какие будут на том и другом сервере. Как я понимаю через nc будет всех шустрее копировать.

Как я понял - если вбивать такие команды, то сначала будет подготавливаться архив, а места для этого у меня нет.

nc -l -p 3333 | tar xv (выполняется на приёмной стороне)

tar cv * | nc -q 0 ip.адрес.приёмной.стороны 3333 (выполняется на передающей стороне)

Оптимизайка
На сайте с 11.03.2012
Offline
396
#4
jano:
если вбивать такие команды, то сначала будет подготавливаться архив

Так можно. Подготавливаться архив не будет, т.е. дополнительного места на диске не потребуется - создается и распаковывается налету.

J
На сайте с 06.07.2011
Offline
169
#5
Оптимизайка:
Так можно. Подготавливаться архив не будет, т.е. дополнительного места на диске не потребуется - создается и распаковывается налету.

Что-то не получается. Пишет: Ncat: You must specify a host to connect to. QUITTING.

Andreyka
На сайте с 19.02.2005
Offline
822
#6

Используйте rsync, он поддерживает "докачку"

Не стоит плодить сущности без необходимости
A
На сайте с 20.03.2012
Offline
55
#7

+1 за rsync, но хочу заметить, что если инфы много, то лучше всего запускать в screen или tmux

J
На сайте с 06.07.2011
Offline
169
#8
Andreyka:
Используйте rsync, он поддерживает "докачку"
arround:
+1 за rsync, но хочу заметить, что если инфы много, то лучше всего запускать в screen или tmux

Спасибо. ерунда какая-то.

rsync работало 3-ое суток, закачало примерно 70% контента и процесс встал. Копирование не идёт дальше. Места на диске предостаточно.

Решил запустить в 10 потоков.

Команды ввожу такие:

screen -S copy1

далее rsync -zavP /home/admin/web/copy1/ root@my.server.ip:/home/admin/copy1/

и всё по аналогии.

Решил через час посмотреть как копируется контент: screen -r pidid

Процесс опять встал, ничего не копируется.

Посмотрел места на диске: df -h

выводит, что занято 3T из 4t.

Но как так может быть, ведь на прошлом сервере было вообще 2tb места. Как контент может занимать больше места, откуда он копируется? Почему rsync не отрабатывает до конца задачу?

J
На сайте с 06.07.2011
Offline
169
#9

Скорее всего косяк был из-за того, что бэкап автоматически запускался и места тупо не хватало и процесс застопорился.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий