SLV Migrate Linux - Quickstart

🚚 SLV Migrate Linux

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

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

  • 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...

Опции

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

Нестандартный SSH Port

Если на целевом сервере используется нестандартный SSH-port:
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 — копирует всю filesystem (исключая системные pseudo-filesystem) по SSH
  3. Post-migration — автоматически перезагружает целевой сервер (если не указан --skip-reboot)
Миграция использует rsync с --archive --hard-links --acls --xattrs, чтобы сохранить все атрибуты файлов, permissions и специальные файлы.

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

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