MX Linux: виртуальная кастомизация

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

Как говорилось в общих сведениях об MX Linux, этот дистрибутив имеет средства для очень простого создания кастомизированных сборок на базе себя самого, и увековечивания своих трудов в виде образа — «живого» и установочного. Правда, оказалось, что с прямым созданием образа из Live-сессии всё обстоит не так гладко, как казалось — установка системы после кастомизации таки потребовалась. Но вот её саму целесообразно проводить в Live-сессии, запущенной в виртуальной машине (в моём случае — в Virtualbox’е, хост-системой для которого выступала моя самосборная Cintu).

Кастомизация в моём понимании в значительной степени сводится к удалению ненужных пакетов и доустановке пакетов нужных. И то, и другое требует привилегий администратора, которые в MX можно получить обоими традиционными способами — командой su с вводом пароля root’а и командой sudo, задав пароль обычного пользователя. Так что для начала неплохо выяснить хотя бы один из них, а ещё лучше оба.

Благо, делается это просто: после загрузки системы с Live-носителя, как уже говорилось, пред глазами изумлённого применителя предстаёт панель приветствия, в нижней левой части которой можно видеть надпись Информация о входе:

mx-cust_001

Вот по ней и следует щёлкнуть для получения искомых сведений, которые предстают в таком виде:

mx-cust_002

На всякий случай поясню словами: пользователя Live-сессии зовут demo, и пароль у него — demo. А имя администратора — root, и пароль у него, как это ни странно, тоже root.

Обретя это тайное знание, можно приступать собственно к кастомизации. Каковая в любом случае должна начинаться командами

# apt update
# apt upgrade

Примечание: здесь и далее # символизирует, что команды эти даются с правами администратора. А уж каким способом они получены — разовым ли sudo, через sudo -s (предпочитаемый мной способ) или через su — остаётся на усмотрение применителя. Команды, для выполнения которых достаточно прав обычного пользователя, в дальнейшем будут символизироваться милым сердцу россиянина знаком — $.

Важно, что обновление локального кеша пакетов и общее обновление системы должны предшествовать любым операциям с пакетами (удалению их или установке), иначе в дальнейшем команда apt upgrade будет завершаться с ошибкой, и рекомендуемый при этом способ её исправления в Live-режиме не сработает. Почему — тайна сия велика есть…

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

  • всего содержимого секции меню Графика, кроме простого вьювера изображений (в MX эту роль исполняет Mirage);
  • в секции Интернет я оставил только FireFox и Transmission;
  • в секции Мультимедиа расправы избежали Asunder (вдруг пригодится) и регуляторы громкости;
  • из секции Офис были изъяты LibreOffice Draw и LibreOffice Impress.

Секции Инструменты и Настройки я трогать не стал, потому как ещё не до конца разобрался с их содержимым. А выполнил команду избавления от «осиротелых» зависимостей:

# apt autoremove

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

Как ни странное, но в MX не сработал привычный мне способ очистки от локалей:

# locale-gen --purge [что надо оставить]

Она вызывала регенерацию всех локалей. И даже безобидная, казалось бы, команда

# locale-gen --help

вызывала тот же процесс. Поэтому пришлось «в лоб» редактировать файл /etc/locale.gen (предварительно сохранив копию под именем /etc/locale.orig), приведя его вот к такому виду:

en_US.UTF-8 UTF-8
ru_RU.UTF-8 UTF-8

Вслед за этим была выполнена команда

# locale-gen

И прошло знакомство с результатом её работы:

$ locale -a
C
C.UTF-8
en_US.utf8
POSIX
ru_RU.utf8

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

# apt intall zsh

И назначена любимой женой оболочкой входа:

# chsh -s /bin/zsh demo

А мои конфиги, .zshrc и .zshenv для неё — скопированы в каталог /home/demo. Разумеется, с хост-машины: как уже говорилось, при установке MX «гостевые дополнения» не просто подключаются автоматически, но и образовывается разделяемый каталог, в моём случае — такой:

mx-cust_003

Правда, его требуется смонтировать в гостевую Live-систему руками — командой вроде

# mount -t vboxfs mx-custom /media/demo/sf_mx-linux

После этого все необходимые конфиги копируются в эту папку из хост-машины, а затем в гостевой Live-среде разносятся куда надо, в частности, конфиги Zsh — в каталог /home/demo. Однако этого недостаточно: чтобы они унаследовались пользователем, чей аккаунт в дальнейшем будет создан при инсталляции, их же следует поместить и в каталог /etc/skel.

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

# apt install fonts-cantarell gpm mpv

Теперь можно выполнить все потребные настройки пользовательской среды Xfce. И, пожалуй, что и нужно: как говорилось ранее, они будут унаследованы в пользовательском аккаунте и запланированного «живого» образа, и установленной системы.

Наконец, последний штрих: вынести на рабочий стол пиктограмму запуска инсталлятора MX Linux — утилиты minstall. Делается это очевидным способом, из контекстного меню рабочего стола. Единственно, что тут надо помнить — что команда запуска инсталлятора должна иметь такой вид: gksu /usr/sbin/minstall. Что можно видеть на приводимом скриншоте:

mx-cust_004

После этого я приступил к созданию образа непосредственно из Live-сессии, но потерпел в этом деле фетяску. То есть образ-то благополучно создался, однако система с него грузиться отказалась с таким сообщением:

mx-cust_005

Причина этого более-менее понятна и, скорее всего, проблема эта решаема. Правда, я ещё не придумал, как. А если честно, то даже и не думал, потому как занялся установкой кастомизированной системы в виртуальной машине, каковая прошла без проблем. Дав в итоге полную копию той системы, которая получилась в Live-сессии после всех описанных выше действий. Из этой-то установленной системы я и сваял в итоге работоспособный «живой», он же установочный образ. О чём будет рассказано в следующем очерке.

Оглавление

MX Linux: виртуальная кастомизация: 1 комментарий

  1. Как всегда очень наглядно и познавательно!
    Огромное спасибо!

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