Однако радость моя по поводу успешного прикручивания ZFS оказалась преждевременной. Реализовав своё право на отдых и включив компьютер, я при попытке авторизоваться в панели KDM получил сообщение, что сделать это нельзя за отсутствием домашнего каталога. Пришлось залогиниться в KDE (!) root’ом (!) и разбираться, куда же он подевался, хотя совсем недавно был.

Недолгое расследование показало, что каталога /home/alv нет действительно — как и всех прочих каталогов, куда были примонтированы файловые системы ZFS. Не нашлось их и в прародительском каталоге /tank. В то же время команды zpool status tank и zfs list показывали, что и сам пуд, и наборы данных внутри него где-то существуют. В частности, вывод последней команды ничуть не изменился с таковым, приведённым на предыдущей странице:

NAME              USED  AVAIL  REFER  MOUNTPOINT
tank             18.3G   178G   136K  /tank
tank/home        18.3G   178G   176K  /home
tank/home/alv     384M   178G   384M  /home/alv
tank/home/media  3.08G   178G  3.08G  /home/media
tank/home/other   310M   178G   310M  /home/other
tank/home/proj   4.20G   178G  4.20G  /home/proj
tank/home/test   10.3G   178G  10.3G  /home/test

И показывал, что и с точками монтирования для файловых систем ZFS также всё в порядке. Вот только смонтировано в эти точки ничего не было.

Единоразово проблема решилась просто: достаточно было дать команду

# zfs mount -a

как каталоги /home/alv, /home/proj и прочие появились волшебным образом, вместе со всем их содержимым. И перелогиниться обычным пользователем после этого тоже проблемы не составило.

Напомню на всякий случай, что при первом знакомстве с ZFS on Linux, при использовании пакетов из другого репозитория, ни с чем подобным мне столкнуться не пришлось. Отсюда напрашивалось резонное предположение, что в пакетах из ghaskins отсутствовали скрипты инициализации, обеспечивающие монтирование файловых систем ZFS при старте машины.

Ан нет, такой скрипт благополучно обнаружился там, где ему и следовало быть:

$ ls /etc/init.d/zfs
/etc/init.d/zfs*

А вот чего не было — так это символических ссылок на него из каталогов /etc/init.d/rc3.d и /etc/init.d/rc5.d, содержимое которых отвечает за инициацию консольного и графического режимов, соответственно. Так что оставалось их просто создать — для первого случая с помощью примерно таких команд:

# cd /etc/init.d/rc5.d
# ln -s ../etc/init.d/zfs  /etc/init.d/rc5.d/K01zfs
# ln -s ../etc/init.d/zfs  /etc/init.d/rc5.d/S01zfs

А для первого — таких:

# cd /etc/init.d/rc5.d
# ln -s ../zfs K01zfs
# ln -s ../zfs S01zfs

И после выполнения указанных действий свершилось чудо: файловые системы ZFS стали монтироваться при старте, и именно туда, куда велят большевики… то есть команда zfs set mountpoint. Так что я очередной раз поздравил себя — теперь уже с полной и окончательной победой над этой системой управления хренилищами данных. Что ознаменовал оценкой её быстродействия, каковая будет дана в следующей заметке.


Содержание