Я хотел бы спросить, возможно ли это. Недавно я заказал новый выделенный сервер для своего сайта. Сервер немного отличается от текущего. Оба являются четырехъядерными процессорами xeon, разница в том, что текущий - жесткий диск на 500 ГБ, новый - на жесткий диск на 160 ГБ (но я не использовал 50 ГБ). Далее идет память, 24 ГБ на старой, а новая - 12 ГБ ОЗУ. Оба являются Centos 5.6 с последними патчами, использующими yum update.
Мне было интересно, можно ли сделать резервную копию и восстановить все, включая nginx, php53u-fpm, mysql, включая все конфигурации и базы данных + файлы веб-сайтов. Можно ли без проблем сделать резервную копию и восстановить?
Я хотел бы создать резервную копию всего за один раз (не по одному, а затем импортировать его по одному).
Итак, если у вас есть удаленная машина, получите сервер, который вы будете использовать для подготовки жесткого диска. Установите новый жесткий диск на / mnt Linux-машину.
Затем на вашем текущем компьютере выполните:
find / -xdev | ssh urname@urLinuxMachineToBackup "cpio -pm /mnt"
Это должно скопировать все со старого жесткого диска на новый жесткий диск со всеми правами доступа к файлам (клонирование вашей машины).
Поскольку обе машины уже работают, невозможно их просто клонировать. Вам понадобится как минимум еще одна виртуальная машина и доступ к хосту.
Быстрый ответ, нет!
Перемещение таких вещей, как nginx, php и т. Д. - не лучшая идея. В итоге вы получите поврежденную базу данных RPM (при условии, что вы установили эти приложения через rpm), и вы можете случайно перезаписать существующие файлы конфигурации (например, passwd / fstab и т. Д.). Попытки найти для этого ярлык просто приведут к потере времени, пытаясь разгадывать головоломки.
Лучший способ выполнить миграцию - пройти через старый сервер и посмотреть, какие файлы вам действительно нужно переместить. Приложения должны быть установлены так же, как и на старом компьютере, yum install или что-то еще. По возможности старайтесь придерживаться тех же основных уровней исправлений, чтобы не использовать как новые версии, так и новый сервер для устранения неполадок. Для копируемых файлов не должно быть так сложно найти то, что вам нужно, в nginx / php должны быть только файлы конфигурации, дополнительные модули php / pear и, очевидно, дерево вашего веб-приложения для копирования. Для переноса базы данных MySQL используйте mysqldump и восстановите дамп на удаленном компьютере, если вы настроили my.cnf, убедитесь, что вы скопировали и этот файл.
Я уверен, что кое-что забыл в этом списке, но вы понимаете концепцию, просто будьте методичны и выполните то, что вам нужно сделать. Сделайте как можно больше заранее и при переключении на новый компьютер просто скопируйте новую базу данных и все файлы, которые необходимо обновить, файлы конфигурации уже должны быть на месте.
Научитесь использовать «деготь». Сделано для создания резервных копий / архивов.
(Подсказка: создайте "резервную" директорию на старом хосте, скопируйте то, что вы хотите сохранить (файлы конфигурации, данные, базы данных и т. Д.) В этот каталог, сделайте архив (с tar) этого каталога, ftp / scp его в ваш новый хост, распакуйте его, переместите файлы, получите крупный выигрыш и т. д.