Алексей Федорчук
Итак, «лирический» образ был успешно создан, настало время проверить его в деле. Пока ещё не совсем реальном, а скорее виртуальном — то есть сначала запуском его в VirtualBox’е, а потом и установкой в оном же. Неожиданно оказалось, что при этом не оказалось ни малейших неожиданностей. Настолько, что по этому вопросу просто и сказать нечего. Кроме разве что того, что всё не очень стандартное (поддержка файловых систем f2fs и zfs, softRAID, глобальных настроек Zsh) работало так, как оно и ожидалось — что в Live-режиме, что в виртуально установленной режиме.
А по части установки я захотел было немного выпендриться. Как известно, установщик Ubuntu, от которого происходит и Mint’овский, отличается замечательной простотой в применении. Оборотная сторона чего — недостаточная гибкость, в частности, его модуля дисковой разметки и форматирования (по сравнению с openSUSE — эталоном в этом отношении). А ведь это то единственное во всей установке любой системы, что трудно изменить рабочим порядком на работающей системе.
В частности, для начала я решил установить свой ремикс на раздел диска, отформатированный в Ext4 с отключённым журналированием. Говорят, что до недавнего времени в Google говорили, что это обеспечивает максимальное быстродейтсвие файловых операций. И мои наблюдения некоторым образом это подтверждали, хотя выигрыш и был копеечным. Тем не менее, приятно сознавать, что идёшь нагавно… нага в ногу с другими г… Google’ями…
Инсталлятор Ubuntu/Mint, в отличие от соответствующего модуля openSUSE, не поддерживает установку параметров форматирования (как и опций монтирования). Так что представлялось, что можно заранее подготовить разделы с должным образом созданными файловыми системами, на которые, как на готовенькое, установить Mint. Так думали я и Мамедка. А как вышло? Расскажу по порядку.
Дело происходит в Live-режиме, в виртуальной машине. Для дисковой разметки и создания файловых систем, как известно, требуются права администратора, которые я получил на неопределённое время командой
$ sudo -i
Далее запускаю это:
# fdisk /dev/sda
Свежесозданнй виртуальный диск не несёт на себе никакой, даже пустой, таблицы разделов (в отличие от свежекупленного реального, у которого в MBR фабрично записана стандартная таблица разметки DOS). О чём, кстати, fdisk
сразу и предупреждает. Так что первым делом таблицу разделов надо создать такой его внутренней командой:
Command (m for help): o
Здесь следует предупреждение, что всё придёт в норму после записи, так что следующая команда внутри fdisk
‘а — выход из него с записью:
Command (m for help): w
Теперь fdisk
запускается снова (никаких предупреждений уже не следует):
# fdisk /dev/sda
И обычным порядком создаются нужные разделы — я в экспериментальных целях ограничился одним — /dev/sda1
.
Сказанное относится к разметке в стиле MBR. Если есть желание использовать GPT-стиль, следует прибегнуть к утилите gdisk
, о которой написано, например, здесь. В рамках данной задачи разницы между стилями разметки нет ни малейшей.
Далее на новообразованном разделе создаю файловую систему Ext4 без журнала:
# mkfs.ext4 -O ^has_journal /dev/sda1
Здесь опция ^has_journal как раз и отрицает имение журнала на /dev/sda1
. Ну а после этого можно уже и запустить инсталлятор.
Сама по себе установка ничем не отличается от многократно описанной ранее — даже ссылки лень приводить. Заслуживает, казалось бы, внимания только следующее. Во-первых, когда дело дошло до так называемого выбора типа установки, я, разумеется, выбрал Другой вариант:
После чего обнаружился виртуальный диск с единственным разделом, для которого остаётся только определить точку монтирования — в данном случае /
:
Но определить её можно только после определения выбора из выпадающего меню пункта Использовать как. Очевидно, что избежать форматирования (а ведь именно это — наша цель) можно одним способом — выбрать здесь Ext4:
Однако, как будет показано ниже, не спасает положения. А пока — селдует обычное сообщение об остутствии swap-раздела:
А за ним — вот такое предупреждение, которое игнорируется:
Длаьше установка протекает как всегда, перезагрузка тоже проходит нормально, после авторизации загружается рабочий стол Cinnamon’а, который выглядит так:
Это те самые «нескучные обои» — плитки серпентинита, на котором в виде контррельефа воспроизведено одно из наскальных изображений Залавруги.
Однако долго любоваться обоями не пришлось, потому как надо было проверять работоспособность впихнутого. Хотя для начала я решил посмотреть, как там поживает файловая система Ext4 без журналирования. Оказалось, что без журналирования она поживает плохо, потому как живёт с журналом, что выявляется такой командой:
$ sudo tune2fs -l /dev/sda1 | grep journal Filesystem features: has_journal ext_attr...
То есть в процессе установки Mint’а журналирование включилось вновь, потому как это можно сделать не только при создании файловой системы, но и впоследствие. Впрочем, и отключить его тоже можно — правда, только на отмонтированном носителе (или смонтированном только для чтения). Поэтому я перезагрузился в однопользовательском режиме (в меню GRUBN’а этот пункт называется recovery mode, некоторые подробности о входе в него здесь). И там дал команду
$ sudo tune2fs -O ^has_journal /dev/sda1
После этого команда
$ sudo tune2fs -l /dev/sda1 | grep journal вернула пустую командную строку, то есть от журналирования не осталось и следа. Но это, согласитесь, не очень изящное решение. Зато с поддержкой "нетрадиционных" файловых систем всё оказалось в порядке. Достаточно было дать команды
$ sudo modprobe zfs $ sudo modprobe f2fs
чтобы подключить модули поддержки соответствующих файловых систем. В чём легко убедиться командой
$ lsmod | grep -e zfs -e f2fs
которая даст такой вывод:
f2fs 170846 0 zfs 1185541 0 zunicode 331251 1 zfs zavl 15010 1 zfs zcommon 51321 1 zfs znvpair 89166 2 zfs,zcommon spl 175436 5 zfs,zavl,zunicode,zcommon,znvpair
То есть, сразу мосле этого можно создавать новый пул ZFS или импортировать существующий — на эту тему я тоже писал неоднократно, так что поиск точных ссылок оставляю заинтересованным лицам. Правда, поддержка f2fs до сих пор носит чисто декоративный характер — для применения с какими-либо практическими целями она (пока?) не годится ни в какую. Впрочем, и об этом я тоже писал. В рамках же сегодняшней темы могу сказать, что принципиальная готовность системы к работе с ZFS и f2fs была проверена на практике.
Столь же хорошо дело обстоит и с softRAID, свидетельством чему — данная без всяких предварительных телодвижений команда
$ lsmod | grep raid
на что система ответит таким выводом:
raid10 48128 0 raid456 86484 0 async_raid6_recov 12984 1 raid456 async_memcpy 12762 1 raid456 async_pq 13365 1 raid456 async_xor 13160 2 async_pq,raid456 async_tx 13509 5 async_pq,raid456,async_xor,async_memcpy,async_raid6_recov raid6_pq 97812 2 async_pq,async_raid6_recov raid1 35530 0 raid0 17842 0
Проверить готовность к работе с softRAID практически я, понятное дело, в среде виртуальной машины не мог (точнее, это требовало телодвижений, напоминающих бег в мешке, и потому лениво). К этому вопросу я ещё вернусь, когда дело дойдёт до установки «лирического образа» на реально «техническое железо».
Осталась последняя проверка — поведение Zsh. Ибо первое, что я сделал после загрузки машины… Пардон, второе, потому что первым было искоренение кириллических каталогов — наблюдения показали, что если сделать это сразу, то русские имена исчезают бесследно.
…так вот, второе деяние моё было — смена командной оболочки пользователя:
$ chsh -s /bin/zsh
что требует ввода пароля и авторизации заново. После чего при открытии терминала появится вот такое предложение:
Здесь я выбрал «нулевой вариант» — он создаст пустой файл ~/.zshrc
, а все настройки шелла будут браться из общесистемного конфига /etc/zsh/zshrc
. Что, разумеется, не запрещает редактировать конфиг пользовательский для внесения в него дополнительных функций, модификации имеющихся или отключения их вообще. Если же выбрать вариант (2), то в домашний каталог под именем ~/.zshrc
скопируется «эталонный» конфиг /etc/zsh/newuser.zshrc.recommended
— как было сказано в прошлой заметке, он идентичен /etc/zsh/zshrc
.
На этом всё — система полностью готова к применению в «лирических» целях — например, к сочинению нетленки в Komodo Editor’е.