SLV Migrate Linux - Быстрый старт

🚚 SLV Migrate Linux

Перенесите весь Linux-диск на новый сервер по SSH с использованием rsync. Это миграция всего диска: с исходного сервера на целевой копируется все, включая пользовательские данные, конфигурации, установленные пакеты и настройку SLV-ноды.
Примечание: Это отличается от slv v switch (миграции validator identity). slv migrate linux копирует всю файловую систему, а slv v switch меняет validator identity между двумя уже работающими нодами.

Предварительные требования

  • SLV CLI установлен на исходной ноде
  • Доступ sudo / root как на исходном, так и на целевом сервере
  • SSH-доступ с исходного сервера на целевой (по паролю или ключу)
  • На целевом сервере должна быть свежая установка (SLV предупредит, если обнаружит существующие данные)

Базовое использование

Выполните на исходном сервере:
bash
sudo slv migrate linux --to root@new-server-ip
text
🚚 SLV Linux Migration

  Source:      ubuntu (this machine)
  Destination: [email protected]

📋 Exclude list:
  • /dev/*
  • /proc/*
  • /sys/*
  • /tmp/*
  • /run/*
  • /mnt/*
  • /media/*
  • /lost+found
  • /swapfile
  • /snap/*
  • /var/log/*

? Start migration? This will overwrite data on the destination. › Yes
  Syncing... (this may take a while depending on disk size)
√ Migration complete
  Rebooting destination...

Параметры

ПараметрОписание
-t, --to <ssh>SSH-адрес целевого сервера (например, root@new-server)
-p, --port <port>SSH-порт (по умолчанию: 22)
--skip-rebootНе выполнять автоматическую перезагрузку после миграции
--exclude <path>Дополнительный шаблон исключения rsync (можно повторять)
--include <path>Убрать из стандартных исключений (можно повторять)
--list-excludesПоказать текущий список исключений и выйти
-y, --yesПропустить запрос подтверждения

Нестандартный SSH-порт

Если на целевом сервере используется нестандартный SSH-порт:
bash
sudo slv migrate linux --to root@new-server-ip --port 2222

Настройка исключений

Посмотреть, что будет исключено:
bash
slv migrate linux --list-excludes
Исключить дополнительные пути (например, пропустить данные ledger для более быстрой миграции):
bash
sudo slv migrate linux --to root@new-server-ip --exclude /home/solv/ledger

Неинтерактивный режим

Для скриптов:
bash
sudo slv migrate linux --to root@new-server-ip --skip-reboot --yes

Как это работает

  1. Pre-flight checks - Проверяется SSH-подключение и выводится предупреждение, если на целевом сервере уже есть данные
  2. rsync - По SSH копируется вся файловая система (за исключением системных псевдофайловых систем)
  3. Post-migration - После завершения целевой сервер автоматически перезагружается (если не указан --skip-reboot)
Миграция использует rsync с --archive --hard-links --acls --xattrs, чтобы сохранить все атрибуты файлов, права доступа и специальные файлы.

⚠️ Важные замечания

  • Запускайте от root (или через sudo). Без root-доступа миграция пропустит системные файлы.
  • Целевой сервер должен быть свежим. Существующие данные будут перезаписаны.
  • Коды завершения rsync 23/24 (частичная передача) считаются предупреждениями, а не ошибками. Некоторые файлы (например, активные логи) могут передаться не полностью.
  • После миграции убедитесь, что нода работает корректно, прежде чем выводить исходный сервер из эксплуатации.
  • Для миграции validator identity (zero-downtime switch между двумя работающими валидаторами) используйте slv v switch. См. Mainnet Validator Migration.