Перенос данных на TrueNAS Scale: стратегии миграции NAS и файловых серверов | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

Перенос данных на TrueNAS Scale: стратегии миграции NAS и файловых серверов

09 мая 2026 10 мин. чтения
Содержание статьи

Миграция данных с устаревшего NAS или файлового сервера на TrueNAS Scale - критическая задача, где ошибки ведут к простоям и потере данных. Это руководство предлагает три проверенные стратегии переноса, охватывающие сценарии от медленной сети до аппаратной замены. Вы получите конкретные команды, таблицу для выбора оптимального метода и план финальной проверки, чтобы минимизировать риски и обеспечить непрерывность работы сервисов.

Мы разберем подготовку, включая аудит исходной системы, и детально рассмотрим каждый метод: сетевую пересылку через rsync, использование промежуточного диска и прямой импорт пула ZFS. Отдельное внимание уделим восстановлению сетевых сервисов (SMB, NFS, iSCSI) на новой системе и предоставим скрипты для автоматической верификации данных.

Подготовка к миграции: оценка среды и выбор стратегии

Успешная миграция начинается с планирования. Пропуск этого этапа приводит к неожиданным проблемам: нехватке места, несовместимости прав доступа или многодневным простоям. Систематический подход снижает риски на 80%.

Аудит исходной системы: что нужно знать перед началом

Соберите эти данные до любого копирования:

  • Сетевые протоколы и версии: Определите, какие службы используются. Для SMB проверьте версию (SMB1, SMB2.1, SMB3). Для NFS уточните версию (NFSv3 или NFSv4) и параметры экспорта (например, root_squash, anonuid).
  • Структура прав доступа: На Windows-ориентированных NAS это ACL Windows. На Linux-серверах или некоторых системах (QNAP, Synology в режиме POSIX) - права Unix (rwx). Зафиксируйте владельцев и группы для ключевых каталогов командой getfacl (Linux) или через свойства безопасности в Windows.
  • Объем и состав данных: Используйте du -sh /путь/к/данным и find /путь/к/данным -type f | wc -l. Учтите не только общий объем, но и количество файлов - миллионы мелких файлов значительно замедлят сетевую миграцию.
  • Состояние оборудования: Проверьте SMART-статус дисков на исходной системе. Миграция - нагрузочный процесс, и отказ диска в этот момент критичен.
  • Конфигурация сетевых ресурсов: Задокументируйте все общие папки (share names), пути, описание, специальные настройки вроде «oplocks» для SMB или «sync/async» для NFS.

Эти данные станут основой для выбора метода и чек-листа после миграции.

Сравнительная таблица стратегий миграции

Метод Плюсы Минусы Идеальный кейс
Пересылка по сети (rsync/NFS) Не требует дополнительного оборудования. Инкрементное копирование. Минимальный физический доступ. Скорость ограничена сетью. Долгий процесс для больших объемов. Нагрузка на сеть. Объем до 4-5 ТБ при гигабитной сети. Миграция между серверами в одной стойке.
Промежуточное хранилище (внешний диск) Высокая скорость копирования (USB 3.0, eSATA). Независимость от сети. Можно делать в несколько этапов. Требует свободного диска подходящего объема. Двойное копирование (источник-диск-цель). Риск повреждения носителя. Очень большие объемы (10+ ТБ). Отсутствие быстрой сети. Необходимость физического переноса между локациями.
Прямая замена дисков ZFS Максимальная скорость. Данные остаются на дисках. Сохраняется история снапшотов. Требует идентичной или совместимой версии ZFS. Аппаратная совместимость контроллеров. Риск при экспорте/импорте пула. Апгрейд с TrueNAS Core или другого ZFS-сервера. Миграция в идентичное или более новое железо.

Перед началом создайте полную резервную копию конфигурации исходного NAS, если такая функция предусмотрена. Для TrueNAS Core/Scale это файл конфигурации (.db).

Стратегия 1: Пересылка данных по сети с помощью rsync и NFS

Этот метод универсален и подходит для миграции с любого NAS или сервера, поддерживающего общий сетевой доступ.

Настройка общего доступа на старом NAS для миграции

Необходимо предоставить доступ к данным с TrueNAS. Предпочтительнее использовать NFS из-за лучшей сохранности метаданных и производительности в Unix-средах.

  • Для QNAP: В «Control Panel» > «Network & File Services» > «Win/Mac/NFS» включите службу NFS. Создайте новый NFS-экспорт для нужной папки, разрешив доступ с IP-адреса вашего TrueNAS (например, 192.168.1.100/32). Права: rw,no_root_squash,async.
  • Для Synology: В «Control Panel» > «File Services» перейдите на вкладку «NFS». Включите NFSv4 (или v3). Нажмите «Create», укажите путь, а в «Hostname or IP» введите адрес TrueNAS. Права: rw,async,no_wdelay,no_root_squash.
  • Для Linux-сервера (Samba/NFS): Экспортируйте папку, добавив в /etc/exports строку: /путь/к/данным IP_TrueNAS(rw,sync,no_subtree_check,no_root_squash). Выполните exportfs -ra.

Убедитесь, что на TrueNAS открыт доступ к портам 111 (portmap) и 2049 (NFS) или 445 (SMB) через межсетевой экран.

Команды rsync для надежного переноса и верификации

На TrueNAS Scale подключитесь по SSH или используйте Shell в веб-интерфейсе. Смонтируйте удаленный ресурс или используйте rsync напрямую по сети.

Базовое копирование с прогрессом и сохранением атрибутов:

rsync -avhP --stats user@old_nas_ip:/source/path/ /mnt/tank/dataset/target_path/

Ключи: -a (архивный режим), -v (verbose), -h (человекочитаемые числа), -P (прогресс и докачка).

Копирование с проверкой целостности (checksum):

rsync -avhP --checksum user@old_nas_ip:/source/path/ /mnt/tank/dataset/target_path/

Флаг --checksum сравнивает контрольные суммы файлов, а не время и размер, что надежнее, но медленнее.

Для докачки после сбоя или инкрементного обновления:

rsync -avhP --append-verify user@old_nas_ip:/source/path/ /mnt/tank/dataset/target_path/

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

Если вы планируете репликацию между системами TrueNAS, изучите руководство по настройке репликации данных в TrueNAS - этот метод более эффективен для синхронизации ZFS-пулов.

Стратегия 2: Использование промежуточного временного хранилища

Метод актуален при отсутствии быстрой сети или для переноса данных между физически изолированными сетями.

Выбор и подготовка промежуточного носителя

Используйте внешний HDD/SSD с интерфейсом USB 3.0/3.1 Gen1 или выше, eSATA или Thunderbolt. Ключевой параметр - файловая система:

  • exFAT: Универсальный выбор. Читается и записывается Windows, macOS, Linux и TrueNAS без дополнительных пакетов. Не сохраняет права Unix (это придется восстанавливать вручную).
  • ext4: Оптимальна, если исходная и целевая системы - Linux-based (включая многие NAS). Сохраняет базовые права (владелец, группа). Для монтирования в Windows потребуются драйверы (например, Paragon extFS).
  • NTFS: Хороша, если основной источник - Windows-сервер. TrueNAS поддерживает NTFS только для чтения в базовой системе, что усложняет процесс.

Перед началом проверьте скорость записи на диск с помощью dd if=/dev/zero of=./testfile bs=1G count=1 oflag=direct. Убедитесь, что она не станет узким местом.

Импорт данных с внешнего диска в пул TrueNAS

После копирования данных на промежуточный диск подключите его к серверу TrueNAS.

  1. В веб-интерфейсе перейдите в «System Settings» > «Import Disk».
  2. Выберите ваш диск из списка. Система попытается автоматически смонтировать его.
  3. После монтирования диск появится в каталоге /mnt/ (например, /mnt/disk_name).
  4. Скопируйте данные в целевой dataset, используя команду cp или rsync локально. Для сохранения прав и быстрого копирования используйте rsync даже на локальной машине:
    rsync -avhP /mnt/disk_name/source_data/ /mnt/tank/dataset/target_data/
    
  5. После проверки целостности отмонтируйте и отключите внешний диск через интерфейс.

Не копируйте данные напрямую в корень пула (/mnt/tank/) - создайте отдельный dataset. Это обеспечит гибкость в управлении снапшотами, квотами и репликацией.

Стратегия 3: Прямая замена дисков в существующем пуле ZFS

Самый быстрый метод, но с жесткими требованиями к совместимости. Работает при переходе с TrueNAS Core, FreeNAS, или любого сервера под управлением OpenZFS.

Процедура безопасного экспорта и импорта пула ZFS

Порядок действий критически важен для сохранности данных.

  1. На исходной системе: Убедитесь, что с пулом не работают службы. Экспортируйте пул командой zpool export имя_пула. Эта команда гарантирует, что все транзакции завершены, а пул помечен как экспортированный, что делает его безопасным для отключения.
  2. Физическое отключение: Выключите сервер. Аккуратно извлеките диски. Если используется аппаратный RAID-контроллер, переведите его в режим JBOD или HBA, иначе ZFS не увидит отдельные диски.
  3. Подключение к TrueNAS: Установите диски в новый сервер. Порядок подключения не важен для ZFS.
  4. Импорт в TrueNAS Scale: Загрузите TrueNAS. В веб-интерфейсе перейдите в «Storage» > «Import Pool». Система должна обнаружить пул. Если нет, используйте Shell и команду zpool import для просмотра доступных пулов, затем zpool import имя_пула.
  5. Обновление функций пула: После успешного импорта система может предложить обновить функции пула до новой версии ZFS. Сделайте это только если уверены, что не будете возвращать диски в старую систему. Команда: zpool upgrade имя_пула.

Что делать, если пул не импортируется

Распространенные проблемы и их решение:

  • «One or more devices are missing»: ZFS не видит все диски из пула. Проверьте физическое подключение, кабели, порты SAS/SATA. Убедитесь, что контроллер работает в режиме HBA.
  • «The pool uses the following feature(s) not supported»: Версия ZFS на TrueNAS новее, чем на исходной системе, но пул был обновлен до функций, которых нет в текущей версии TrueNAS. Это маловероятно при переходе на более новую систему. В случае ошибки попробуйте импорт с ключом -o readonly=on для монтирования в режиме только для чтения: zpool import -o readonly=on имя_пула.
  • Пул не отображается: Выполните zpool import -l для поиска пулов, доступных для импорта. Если пул найден, но имеет другое имя, импортируйте его с новым именем: zpool import старое_имя новое_имя.

Если импорт не удается, последним средством может быть восстановление из резервной копии конфигурации ZFS (zpool.cache) или использование процедур аварийного восстановления TrueNAS.

Настройка сетевых сервисов (SMB, NFS, iSCSI) на TrueNAS Scale после миграции

Перенос данных - только половина работы. Вторая половина - восстановление доступа для пользователей и серверов.

Воссоздание общих папок SMB с сохранением прав доступа

В TrueNAS Scale права доступа управляются через ACL. Создайте dataset для данных, если вы этого еще не сделали.

  1. Перейдите в «Datasets», выберите нужный dataset, нажмите «Edit». В разделе «Advanced Options» установите «ACL Type» в «SMB/NFSv4». Примените изменения.
  2. Нажмите «Edit ACL» для этого dataset. Здесь вы можете добавить пользователей и группы (предварительно созданные в «Credentials» > «Local Users»), задав им права (Full Control, Modify, Read). Для репликации сложной структуры ACL с Windows-сервера используйте утилиту robocopy с ключом /copyall во время миграции или инструменты вроде setfacl/getfacl.
  3. Создайте общую папку SMB: «Sharing» > «Windows Shares (SMB)» > «Add». Укажите путь к dataset. Настройте имя (Share Name) - оно может совпадать с именем на старом сервере для прозрачной замены. В «Advanced Options» настройте параметры, аналогичные старому серверу: «Enable Shadow Copies» (для Previous Versions), «Enable Alternate Data Streams», «Enable SMB3».

Подробнее о тонкостях настройки SMB, NFS и FTP читайте в нашем практическом руководстве по настройке сетевого доступа в TrueNAS.

Настройка NFS и iSCSI для серверной инфраструктуры

Для NFS:

  1. Создайте NFS Share: «Sharing» > «Unix Shares (NFS)» > «Add».
  2. Укажите путь к dataset. В «Networks» задайте разрешенные подсети (например, 192.168.1.0/24).
  3. Настройте параметры «Maproot User» и «Maproot Group» для управления правами суперпользователя с клиента. Используйте «All dirs» для доступа ко всем подкаталогам.

Для iSCSI (для ВМ или баз данных):

  1. Создайте ZVOL: «Storage» > «Create Zvol» в нужном dataset. Укажите размер, совпадающий с размером старого LUN.
  2. Настройте iSCSI: «Sharing» > «Block Shares (iSCSI)».
    1. Во вкладке «Portals» настройте IP-адрес и порт для прослушивания (обычно 0.0.0.0:3260).
    2. В «Initiators Groups» укажите IQN инициаторов или разрешите все («ALL»).
    3. В «Authorized Access» настройте CHAP-аутентификацию для безопасности.
    4. В «Targets» создайте новый Target, укажите группу инициаторов.
    5. В «Extents» создайте Extent, связанный с созданным ZVOL.
    6. В «Associated Targets» свяжите Target и Extent.

После настройки протестируйте подключение с хоста (ESXi, Linux). Для оптимизации производительности этих служб обратитесь к руководству по настройке производительности TrueNAS.

Финальная проверка и ввод в эксплуатацию

Перед переключением пользователей убедитесь в полной целостности данных и работоспособности сервисов.

Скрипты для автоматической проверки целостности данных

Выборочная проверка файлов недостаточна. Используйте скрипт для построения и сравнения контрольных сумм. На исходной системе выполните (если есть доступ к Shell):

find /путь/к/исходным/данным -type f -exec sha256sum {} \; > /tmp/source_checksums.txt

Скопируйте файл на TrueNAS. На целевой системе выполните аналогичную команду для нового расположения данных и сравните файлы:

find /mnt/tank/dataset/данные -type f -exec sha256sum {} \; > /tmp/target_checksums.txt
sort /tmp/source_checksums.txt -o /tmp/source_sorted.txt
sort /tmp/target_checksums.txt -o /tmp/target_sorted.txt
diff /tmp/source_sorted.txt /tmp/target_sorted.txt

Пустой вывод diff означает полное совпадение. Также сравните общий объем и количество файлов командами du -sb и find . -type f | wc -l.

Чек-лист ввода нового NAS в эксплуатацию

  1. Уведомление пользователей: Запланируйте техническое окно, оповестите о времени переключения.
  2. Резервное копирование конфигурации TrueNAS: Экспортируйте конфигурацию системы («System» > «General» > «Export Config»). Сохраните файл .db в безопасном месте.
  3. Тест отказоустойчивости: Если используется RAIDZ/mirror, симулируйте отказ диска («Storage» > «Disks», выберите диск, «Offline»), убедитесь, что пул остается доступен в degraded mode.
  4. Обновление точек доступа: Измените DNS-записи, IP-адреса или пути монтирования на клиентских машинах и серверах. Для NFS-клиентов обновите записи в /etc/fstab. Для iSCSI-инициаторов переподключитесь к новому target.
  5. Создание первого снапшота: Создайте ручной снапшот пула или dataset через «Storage» > «Snapshots» > «Add». Это точка возврата перед началом активной работы.
  6. Деактивация старых ресурсов: После успешного переключения и тестирования в течение 24-48 часов отключите общие папки на старом NAS.
  7. Документирование: Задокументируйте итоговую конфигурацию TrueNAS: схему пулов, сетевые настройки, пользователей, расписание снапшотов и репликаций.

После завершения миграции ваша новая система TrueNAS Scale готова к работе. Для дальнейшего углубления в администрирование, например, настройки автоматической репликации на второй сервер, изучите практическое руководство по миграции и репликации данных в TrueNAS.

Поделиться:
Сохранить гайд? В закладки браузера