Открытие пула ZFS как доступного для записи

Я успешно установил FreeBSD в необработанный файл образа с помощью эмулятора QEMU. Я отформатировал файл изображения с использованием файловой системы ZFS (ZFS POOL).

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

sudo losetup /dev/loop0 [path-to-file].img
sudo kpartx -l /dev/loop0
sudo kpartx -av /dev/loop0

Однако со следующей командой, показанной ниже....

sudo zpool import -R [MOUNT-PATH] -d /dev/mapper

Я получаю следующее сообщение об ошибке

The pool can only be accessed in read-only mode on this system. It
    cannot be accessed in read-write mode because it uses the following
    feature(s) not supported on this system:
    com.delphix:spacemap_v2 (Space maps representing large segments are more efficient.)
The pool cannot be imported in read-write mode. Import the pool with
    "-o readonly=on", access the pool on a system that supports the
    required feature(s), or recreate the pool from backup.

Я не могу нигде найти в Интернете информацию о функции под названием «spacemap_v2». Как мне установить это или как смонтировать мой пул zfs, чтобы он был доступен для записи. Я знаю, что могу смонтировать его как доступный только для чтения, но это противоречит цели того, что я хочу сделать, поскольку я хочу иметь возможность записывать данные для копирования/вставки данных в его интерфейс монтируемой платформы.

Кто-нибудь знает, как этого добиться. Буду благодарен за ответ.

С уважением


person greenelephant    schedule 21.05.2019    source источник


Ответы (1)


Какую версию FreeBSD вы используете? И откуда взялся этот пул ZFS?

Я предполагаю, что это пул ZFS On Linux, который, как говорится в сообщении, использует функцию, которую ZFS FreeBSD в настоящее время не поддерживает.

Единственный способ обойти это на данный момент — создать еще один пул без этой функции в системе, которая ее поддерживает, отправить zfs в новый пул, а затем импортировать этот пул во FreeBSD.

Примечание FreeBSD скоро будет поддерживать эту функцию(tm).

person Steve Wills    schedule 21.05.2019
comment
Привет, Стив. Я использовал следующий iso-файл FreeBSD для файла cdrom, используемого QEMU ..... FreeBSD-12.0-RELEASE-i386-dvd1.iso - person greenelephant; 22.05.2019
comment
Я использовал средство форматирования в установке FreeBSD, чтобы отформатировать файл изображения как ZFS. - person greenelephant; 22.05.2019
comment
Я начал пытаться смонтировать файл образа с помощью терминала Xubuntu 18.04, введя 3 обязательные команды sudo, найденные выше. Но фактическая команда для инициирования монтирования файла img в формате FreeBSD, так как ZFS не монтируется успешно (как отмечалось выше в отношении проблемы com.delphix:spacemap_v2) - person greenelephant; 22.05.2019
comment
Еще один момент, который я хотел бы отметить, заключается в том, что я использовал zfs-dkms для создания модулей ZFS, необходимых для попытки доступа к файлу образа, а не zfs-fuse. (Я пытался использовать скомпилированные модули zfs-fuse, но получаю сообщение об ошибке, в котором говорится, что zpool не может быть импортирован, так как мне нужно обновить мою систему до более нового типа.) Я надеюсь, что эта дополнительная информация будет полезна для вас. Я с нетерпением жду любой помощи, которую я могу получить :) - person greenelephant; 22.05.2019
comment
Я не думаю, что вы ответили на мой вопрос о том, откуда взялся пул ZFS. И я не знаю, что такое zfs-dkms, это может быть специальная команда ZFS для Linux. - person Steve Wills; 22.05.2019
comment
Пул ZFS был создан во время установки freebsd. Это было сделано с использованием QEMU в качестве эмулятора, запускающего iso-файл FreeBSD-12.0-RELEASE-i386-dvd1.iso в качестве компакт-диска внутри QEMU. Это означало (используя iso-файл Freebsd) установку freebsd в файл образа RAW, созданный qemu-img. Именно в этом файле изображения RAW, созданном qemu-img, находится пул ZFS, надеюсь, я дал вам больше ясности в моей ситуации. Если вы все еще можете мне помочь, это было бы здорово :) - person greenelephant; 23.05.2019
comment
Кстати, zfs-dkms — это программа, используемая Xubuntu 18.04 для создания модуля zfs, используемого modprobe. Этот метод (с использованием zfs-dkms) — просто еще один способ создания модулей zfs, отличный от ортодоксального метода установки zfs-fuse на Xubuntu с помощью «apt-get install» :) - person greenelephant; 23.05.2019
comment
Я вижу, поэтому я думаю, что все было наоборот. Проведя дополнительные исследования, которые я должен был сделать раньше, zfs во FreeBSD действительно поддерживает spacemap_v2. Кажется, вы создали пул во FreeBSD и пытаетесь использовать его в Linux, но именно Linux не поддерживает эту функцию. Согласно этой странице, в настоящее время только главная ветвь ZFS в Linux поддерживает spacemap_v2: open-zfs.org/wiki/ Feature_Flags Так что я думаю, что вам все равно нужно переместить данные в пул без этой функции, прежде чем их можно будет импортировать. - person Steve Wills; 26.05.2019