Как уничтожить пул ZFS, пока пул занят?

У меня есть пул zfs:

$ sudo zpool status lxd
  pool: lxd
 state: ONLINE
  scan: none requested
config:

    NAME                    STATE     READ WRITE CKSUM
    lxd                     ONLINE       0     0     0
      /var/lib/lxd/zfs.img  ONLINE       0     0     0

Я пытался:

$ sudo zpool destroy -f lxd 
cannot destroy 'lxd': pool is busy

Как размонтировать zpool img


zfs
person Vasiliy Schitov    schedule 16.11.2016    source источник


Ответы (2)


Я бы попробовал эти вещи в таком порядке:

  • Остановить все операции чтения/записи из программ в пуле и его файловых системах (проверьте с помощью zpool iostat текущие операции чтения/записи)
  • Остановите все службы общего доступа (SMB, NFS, AFP, iSCSI), которые используют этот пул, или удалите свойства общего доступа в файловых системах.
  • Размонтировать (zfs unmount) все файловые системы пула
person user121391    schedule 16.11.2016
comment
Да, что мне помогает, так это rm .img с sudo, размонтировать файловую систему, убить все процессы zfs, и мне нужно перезагрузить машину. - person Vasiliy Schitov; 18.11.2016
comment
У меня была аналогичная проблема с занятостью пула, когда я пытался его экспортировать. Однако после того, как я завершил все сеансы tmux всех пользователей на сервере, экспорт был выполнен успешно. Не всегда осуществимо, но, по крайней мере, еще одна вещь, которую стоит попробовать. - person bassim; 11.01.2021

Из вашего комментария мне не ясно, сработали ли предложения в предыдущем ответе для вас. Поскольку вы не приняли ответ, я предполагаю, что он не сработал для вас, поэтому я дам вам еще одно предложение попробовать.

Загрузитесь с usb/cd/external hd с поддержкой zfs и уничтожьте свой пул оттуда. Может быть сложно остановить все службы в зависимости от того, как настроено монтирование из вашей системы, и это позволит обойти это чистым способом.

person airhuff    schedule 12.01.2017