MX Linux: включение поддержки ZFS

Алексей Федорчук

Сочиняя очерк о ZFS on Linux для применителя, в котором чуть-чуть говорилось про сравнительное быстродействие файловых систем, я неожиданно обнаружил, что довольно много тестировал в этом плане ZFS для FreeBSD — и лишь один раз ZFS on Linux, причём давно и почти неправда. А потому решил восполнить этот пробел, а заодно изучить вопрос о включении поддержки ZFS в дистрибутиве MX Linux. Решение второй задачи и будет предметом данного очерка.

Дистрибутив MX Linux является прямым клоном Debian’а и потому, казалось бы, к нему применима соответствующая инструкция с официального сайта проекта ZFS on Linux. Однако, как показал опыт аналогичной процедуры для LMDE, «в лоб» этот номер не проходит. Тогда же был найден обходной путь решения задачи — сборка статических модулей KMOD, также описанная в официальной документации.

Однако для MX Linux мне хотелось найти более универсальное решение, не требующее ручной пересборки модулей после каждого обновления ядра. И потому я пошёл другим путём. Начав, однако, со скачивания официального установочного пакета:

$ wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_6_all.deb

При установке он не делает ничего, кроме как создаёт файл описания своего репозитория и добавляет к нему GPG-ключ, однако делает это с сообщением об ошибке. Поэтому устанавливать его я не стал, а вытащил из него файл ключа zfsonlinux.gpg, поместив его в /etc/apt/trusted.gpg.d/.

После этого я создал файл описания репозитория:

# touch /etc/apt/sources.list.d/zfsonlinux.list

И внёс в него такие строки:

deb [arch=amd64] http://archive.zfsonlinux.org/debian jessie main
deb-src http://archive.zfsonlinux.org/debian jessie main

Затем выполнил обновление кеша

# apt upgrade

закончившееся сообщением ошибке ввиду отсутствия ключа. Который я тут же и добавил:

# apt-key add /etc/apt/trusted.gpg.d/zfsonlinux.gpg

Отступление: ключ можно добавить и другим образом, обойдясь без скачивания пакета, а скачать с сайта проекта только файлик 4D5843EA.asc и прикрутить его той же командой apt-key. Но я об этом вспомнил уже потом.

Так или иначе, но после добавления ключа с обновлением кеша всё пришло в норму. Так что можно было запустить сборку и установку нужных модулей и инструментального пакета со всеми их зависимостями:

# apt in zfs-dkms spl zfsutils

И идти курить. После чего оставалось дать команду загрузки модулей:

# modprobe zfs

Убедиться, что всё нужное хозяйство загрузилось:

$ lsmod | grep 'zfs\|spl' 
zfs                  2768896  5
zunicode              331776  1 zfs
zcommon                53248  1 zfs
znvpair                90112  2 zfs,zcommon
spl                   102400  3 zfs,zcommon,znvpair
zavl                   16384  1 zfs

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

Всё, можно было создавать пул ZFS и файловую систему в нём. Поскольку делалось это (пока) исключительно в целях тестирования, дело было просто. Сначала — создание пула:

# zpool create test sdb4

Где sdb4 — заблаговременно созданный раздел на 18 ГБ. На нём создаётся единственная файловая система:

# zfs create test/test

И для неё устанавливается атрибут noatime — путём умолчального атрибута relatime:

# zfs set relatime=off test/test

Убрал я и аттрибут xattr, также присваиваемый по умолчанию:

# zfs set xattr=off test

Результат можно проверить таким, например, образом:

$ mount | grep zfs

Последний штрих — смена атрибутов принадлежности для файловой системы ZFS, дабы обычный юзер имел к ней полный доступ:

# chown -R alv:users /test

Теперь можно будет приступить к тестирования, о котором я расскажу в следующем очерке.

А в заключение очерка этого замечу, что описанный способ включения поддержки ZFS подходит, насколько я понимаю, для любого deb based дистрибутива, использующего репозитории Debian’а, но таковым, согласно описанию в файле /etc/lsb-release, не представляющимся.

Оглавление

MX Linux: включение поддержки ZFS: 3 комментария

  1. Если о ZFS никто не знает, может это никому не надо? Ведь иначе спорили бы до хрипоты. А так, ну и нет, значит не очень и надо было. В чём конкретно преимущество и в чём оно выражается?.. Вопрос дилетанта немного умеющего пользоваться Линуксом.

  2. sazhka, люди, которым чего-то надо, не имеют обыкновения спорить, тем более до хрипоты.
    Они просто пользуются тем, что им надо. В частности, потому, что знают, в чем конкретно :)
    Ну а для общего образования — http://alv.me/?p=12221

  3. Внимательно всё прочитал и вник. Возможно, что-то и есть. С другой стороны, как посмотреть. СтОят ли эти усилия того ..

Добавить комментарий