Книга: Погружение в Salix
Поддержка f2fs и nilfs2
Поддержка f2fs и nilfs2
На этой странице речь пойдёт о поддержке в Salix'е двух файловых систем, специально предназначенных для твердотельных накопителей – nilfs2 и f2fs. Хотя обе они официально включены в ядро Linux достаточно давно (первая – с 2009 года, вторая – с 2012), ни та, ни другая пока не получили широкого распространения. И, насколько мне известно, штатно не поддерживаются инсталлятором ни одного из современных дистрибутивов, в том числе и инсталлятором Salix. И скоро станет понятно, почему. Однако, как будет видно из дальнейшего, включить их поддержку в нём можно.
Для начала легко убедиться в том, что ядро текущей версии Salix'а собрано с модульной поддержкой обеих интересующих нас файловых систем:
$ ls /lib/modules/3.10.17/kernel/fs/{nilfs2,f2fs} /lib/modules/3.10.17/kernel/fs/f2fs: f2fs.ko
/lib/modules/3.10.17/kernel/fs/nilfs2: nilfs2.ko
После этого соответствующие модули следует загрузить:
$ sudo modprobe nilfs2 $ sudo modprobe f2fs
И удостовериться в успехе этой операции:
$ lsmod | grep nilfs2 nilfs2 147232 0 $ lsmod | grep f2fs f2fs 141479 0
Для работы с любой файловой системой (создания, монтирования etc.) необходим соответствующий инструментарий, и героини моего сегодняшнего рассказа – не исключение. Для f2fs он в виде пакета легко находится в штатном репозитории:
$ slapt-get --search f2fs f2fs_tools-1.2.0-x86_64-1_SBo [inst=нет]: f2fs_tools (Userland tools for the f2fs filesystem)
И столь же непринуждённо устанавливается:
$ slapt-get --install f2fs_tools
А вот за инструментами для nilfs2 придётся лезть в слакбилды:
$ slapt-src --search nilfs nilfs-utils:2.1.5 - nilfs-utils (Utilities for NILFS)
Впрочем, и этот пакет собирается без всяких проблем:
$ sudo slapt-src -i nilfs-utils
Теперь с обеими файловыми системами можно работать – например, я отвёл под каждую из них по флешке объёмом 4 ГБ (больше свободных не было) на предмет последующего сравнения их быстродействия:
$ sudo /mkfs.nilfs2 -f -K /dev/sdf1 $ sudo /mkfs.f2fs -t 0 /dev/sdg1
В первой команде опция -f
означает принудительное форматирование – иначе на флешке с существующей файловой системой оно не пойдёт. А опция -K
отключает поддержку TRIM, каковая на флешках бесполезна. Аналогичный смысл опции -t 0
во второй команде. У обоих команд есть ещё несколько опций, с которыми можно ознакомиться на соответствующих man-страницах, но мне они показались (пока) не актуальными.
К слову – после включения поддержки наших героинь и установки надлежащего инструментария они появляются и в списке доступных для создания через Gparted:
Рисунок 12-28.Файловые системы f2fs и nilfs2 в меню GParted
Всё это прекрасно, но работает до первой перезагрузки – при старте машины модули поддержки обеих файловых систем сами собой не подгружаются. И обычно практиковавшийся мной в таком случае метод – создание в каталоге /etc/modprobe.d/
соответствующих конфигов, nilfs2.conf
и f2fs.conf
– не прокатил.
Однако задача, тем не менее, решилась. Ибо в Slackwate для обеспечения загрузки модулей существует специальный файл, /etc/rc.d/rc.modules
– симлинк на соответствующий конфиг для текущей версии ядра, в данном случае – /etc/rc.d/rc.modules-3.10.17
. В его секцию
### Filesystem support ###
достаточно вписать такие строки:
/sbin/modprobe f2fs /sbin/modprobe nilfs2
чтобы всё стало замечательно.
Теперь, после рестарта машины, при подключении флешки с nilfs2 соответствующее ей устройство появляется в списке устройств файлового менеджера Thunar. То есть, казалось бы, может быть смонтировано обычным пользователем, верно?
А не тут-то было. При выборе из контекстного меню пункта Подключить том устройство действительно делает вид, что подключается. Но для записи обычным пользователем оно недоступно, пока не переопределишь (от root'а) атрибуты принадлежности и доступа к точке монтирования.
Впрочем, такое поведение nilfs2 можно считать прогрессом. Когда я с этой файловой системой, она вообще не поддерживала монтирование обычным пользователем.
А с f2fs получается другая история: она вообще не желает монтироваться от лица обычного пользователя, если не вписать в файл /etc/fstab
строку воде такой:
/dev/sdf1 /mount_point f2fs noauto,users,rw 0 0
Где /dev/sdf1
– первое устройство после подключённых постоянно. А точке монтирования нужно задать атрибуты принадлежности нужного пользователя. Причём сделать это обязательно после первого подключения устройства – в этот момент оно самопроизвольно становится принадлежащим root'у. Хотя установленная потом принадлежность пользователю в дальнейшем сохраняется. Об этом глюке я некогда писал. Судя по тому, что с тех пор прошёл год, бага приобрела статус фичи.
Тем не менее, после всего проделанного с устройством, несущим f2fs, можно работать почти нормально. Почти – потому что нет никакой гарантии, что оно будет найдено системой после отключения и повторного включения в том же сеансе. Это относится, кстати, и к nilfs2.
И ещё: при совместном использовании устройств с f2fs и nilfs нужно следить, чтобы первое было включено раньше второго, иначе, ясное дело, «буковки» не совпадут.
Резюмирую базар: в настоящее время и nilfs2, и f2fs представляют чисто академический интерес. Использование каждой из них по отдельности достаточно неудобно, а обе-две вместе вообще уживаются с напрягом. В чём, надо полагать, и заключается причина слабой, мягко говоря, их распространённости.
Поэтому всё сказанное выше – ни в малейшей степени не руководство к действию, а просто узелок на память: кто знает, может, триумфальное шествие SSD-накопителей по пользовательским десктопам побудит довести до ума не одну, так другую. И они будут поддерживаться дистрибутивами уже не для «галочки», а для реальной работы.
- Искоренение кириллицы из домашнего каталога
- Доводка консольного режима: включение мыши в консоли
- Доводка консольного режима: русификация вывода
- Thunar и архивы
- Thunar и права root’а
- Thunar и поиск файлов
- Thunar и Яндекс.Диск
- Шпаргалки по установке пакетов: gThumb
- Шпаргалки по установке пакетов: GPRename
- Шпаргалки по установке пакетов: Chromium
- Шпаргалки по установке пакетов: Мультимедиа
- Шпаргалки по установке пакетов: выпадающий терминал Tilda
- Шпаргалки по установке пакетов: VirtualBox
- Шпаргалки по установке пакетов: Komodo Editor
- Dolphin и Root
- Поддержка f2fs и nilfs2
- Поддержка ZFS
- Поддержка SMP
- Рекламно-информационная поддержка
- 6.1.5. Поддержка WINS
- 1.7. Поддержка Ubuntu
- Поддержка ссылочной целостности
- Окончательная детализация плана перехода на новую систему и поддержка ее работы
- Поддержка форм и сценариев
- Глава 12 Поддержка сервера новостей
- Глава 20 Поддержка Web-сервера
- Поддержка сетевых протоколов
- Поддержка протоколов высокого уровня
- Поддержка альтернативных сетевых протоколов