Шпаргалка по ZFS
modinfo zfs | head -n 9
— узнать версию ZFS и другие подробности
Информация о пулах / файловых системах (ФС) на пулах
zpool list
— статус пулов
zpool status -v
— статус пулов подробный
zfs list
— список ФС, так называются монтируемые разделы в пулах
zfs get all
— вся информация по пулам
Управление пулами / дисками
ls -lha /dev/disk/by-id/
— выяснить id дисков чтобы потом на них создать пул (не юзайте имя диска типа sda — они динамически меняются)
zpool create zfspool disk-id-1 disk-id-2
— может быть сколько угодно дисков
zpool create -m /mnt/backups zfspool disk-id-1
— создать пул с указанием папки
zpool destroy zfspool
— уничтожить пул
mkfile 100m disk1 disk2
— создать файлы дисков
zpool create backups /disk1 /disk2
- создать пул backups на созданных файлах
zpool create zfspool mirror /disk1 /disk2
— создать пул zfspool с зеркалированием на 2 диска
zpool add zfspool /disk3
— добавить диск в пул
zpool attach zfspool /disk3
— добавить устройство в пул, если он в зеркале — добавится в зеркало, если простой — пул расширится
zpool detach zfspool /disk3
— исключить устройство из пула
zpool remove zfspool /disk3
— удаление устройства из пула
zpool add zfspool spare /disk3
— добавление диска горячей замены в пул
zpool remove zfspool spare /disk3
— удаление диска горячей замены из пула
zpool offline zfspool /disk1
— отключить устройство, на него не будет чтения/записи, если добавить ключ -t, то после ребута станет онлайн
zpool online zfspool /disk1
— включить disk1
zpool replace zfspool /disk1 /disk3
— заменить disk 1, на disk3
zpool upgrade -v
— увидеть версию, и фичи текущего ZFS, -a обновит все пулы до новейшей версии
Создание и свойства ФС
zfs create zfspool/data — создать ФС data
zfs create zfspool/backups создать ФС backups, обе ФС будут бесконтрольно расти, пока не выставлены квоты
zfs destroy -fr zfspool/backups/old — уничтожит ФС old, ключ -r — рекурсивно, если внутри ещё несколько ФС, -f — форсить
zfs set reservation=1G zfspool/data — зарезервировать 1 Гигабайт, который ФС гарантированно получит, а другие не займут
zfs list -o quota zfspool/backups — выяснить квоту в пуле на ФС backups
zfs set quota=1G zfspool/backups — установить квоту в 1 Гигабайт на ФС backups
zfs list -o compression — проверить включена компрессия или нет
zfs set compression=on zfspool/backups — включить компрессию на ФС backups в пуле zfspool
zfs set sharesmb=on zfspool/backups — расшарить по SMB ФС backups средствами ZFS
zfs set sharenfs=on zfspool/backups — расшарить по NFS ФС backups средствами ZFS
Монтирование
zfs mount — показать все примонтированные ФС
zfs mount zfspool/backups — примонтировать backups
zfs umount zfspool/backups — размонтировать ФС backups
zfs mount -a — смонтировать все ФС
zfs umount -a Umount — размонтировать все ФС
Снапшоты
zfs list -t snapshot — отобразить все снапшоты
zfs list -o space — сколько занимают места снапшоты
zfs snapshot zfspool/backups@test — создать снапшот ФС backups с названием test
zfs rollback zfspool/backups@test — вернуться к снапшоту backups с названием test, с ключом -r рекурсивно уничтожит промежуточные снапшоты, с ключом -f форсит анмаунт и ремаунт
zfs destroy zfspool/backups@test — уничтожить снапшот backups с названием test
zfs send zfspool/backups@march2021 > /home/backups/march2021.bak — сделать локальный бекап снапшота march2021
zfs receive zfspool2/backups2 < /home/backups/march2021.bak — восстановить из локального снапшота ФС на другом пуле
zfs send zfspool/backups@march2021 | ssh COMP02 «zfs receive testpool/testfs» — отправить снапшот по SSH на хост COMP02
zfs clone zfspool/backups@march2021 /clones/backups — клонировать существующий снапшот
zfs destroy zfspool/backups@march2021 — уничтожить клон