Замена диска в пуле ZFS

Замена диска в пуле ZFS на Proxmox

Документ описывает пошаговую процедуру замены физического диска в ZFS-пуле на Proxmox VE.

Подходит для сценариев:

Рассматриваются два варианта:


0. Вводные и допущения


1. Просмотр текущей картины

1.1 Список ZFS-пулов

zpool list

Обращаем внимание на:


1.2 Список датасетов и виртуальных дисков

zfs list

По выводу можно понять:


1.3 Проверка, какие VM используют пул

pvesm status

Смотрим строку нужного пула (SSD, DEXP_SSD) и убеждаемся, что он активен и используется.


1.4 Просмотр конфигураций VM

Для каждой VM:

qm config <VMID>

Пример:

scsi0: SSD:vm-112-disk-0
scsi1: DEXP_SSD:vm-112-disk-1

Фиксируем:

💡 Если цель — «вернуть как было», достаточно знать, какие storage использовались, а не точный порядок дисков.


2. Остановка и удаление VM

Если VM не нужно сохранять:

2.1 Остановка VM

qm stop <VMID>

2.2 Удаление VM

qm destroy <VMID> --purge

Флаг --purge:


3. Удаление ZFS storage из Proxmox

3.1 Проверка storage

cat /etc/pve/storage.cfg

Ищем блок:

zfspool: SSD
    pool SSD
    content images,rootdir

3.2 Удаление storage

После этого storage исчезнет из GUI.


4. Удаление ZFS-пула

4.1 Проверка, что пул не используется

zfs list | grep <POOLNAME>

4.2 Удаление пула

zpool destroy <POOLNAME>

Пример:

zpool destroy SSD

После этого:


5. Физическая замена диска

  1. Выключаем сервер (рекомендуется)
  2. Меняем диск
  3. Загружаем систему

Проверяем, что диск виден:

ls -l /dev/disk/by-id | grep Samsung

Используем /dev/disk/by-id, а не /dev/sdX.


6. Создание нового ZFS-пула

6.1 Пул из одного диска

zpool create SSD /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_XXXX

📌 Особенности:


6.2 Пул из двух дисков (mirror)

zpool create SSD mirror \
  /dev/disk/by-id/ata-Samsung_SSD_1 \
  /dev/disk/by-id/ata-Samsung_SSD_2

📌 Разница:


6.3 RAIDZ (3+ диска)

zpool create SSD raidz1 \
  /dev/disk/by-id/disk1 \
  /dev/disk/by-id/disk2 \
  /dev/disk/by-id/disk3

📌 Отличия:


7. Настройка свойств ZFS

Рекомендуемые параметры (как в рабочей системе):

zfs set compression=zstd SSD
zfs set atime=off SSD
zfs set xattr=sa SSD

Проверка:

zfs get compression,atime,xattr SSD

8. Добавление пула в Proxmox

Через GUI

Datacenter → Storage → Add → ZFS

Проверка

pvesm status

Пул должен быть active.


9. Восстановление VM «как было»

qmrestore <backup> <VMID>

//Например
qmrestore PBS_Local:backup/vm/112/2026-01-24T17:00:06Z 112

Proxmox сам:

10. Контрольный чек-лист


11. Полезные команды

zpool status
zpool list
zfs list
pvesm status
qm config <VMID>

Итог

Замена диска в ZFS-пуле на Proxmox — контролируемый и безопасный процесс, если:

При правильной последовательности система легко возвращается в состояние «как было», но уже на новом железе.


Revision #1
Created 9 February 2026 22:27:12 by Admin
Updated 9 February 2026 22:31:28 by Admin