Архитектор с (Кили)Манджаро и btrfs

Явление героя

Тема сегодняшней статьи — установка Manjaro на раздел btrfs с использованием подтомов. За три прошедших года я устанавливал систему на различные файловые системы (ext4, f2fs), но прошлой весной начал активно использовать btrfs. Об этой системе есть достаточно много информации (кто ищет — тот всегда найдёт!). Меня привлекла, в первую очередь, возможность использования подтомов. Она позволяет не ломать голову над схемой разделов для установки системы, не создаёт проблемы с нехваткой или излишком места в созданных разделах и даёт возможность создавать снимки (снапшоты) системы или данных, что может защитить вас, например, от неудачного обновления.

Но вот возможность установить систему с использованием подтомов btrfs была ограничена. Стандартный установщик Манджаро (как и Убунту со товарищи) может только установить систему на два подтома — для корня системы и домашней папки. Это, конечно, тоже неплохо, но… Из известных мне дистрибутивов только OpenSUSE обладал необходимыми возможностями (может быть, я ошибаюсь?), но не менять же дистрибутив только из-за этого!

И тут появился ОН! Нашего героя зовут manjaro-architect или просто Архитектор. Да, самый настоящий архитектор, способный спроектировать и построить нужную нам систему. Его возможности намного превосходят нашу текущую задачу, но чтобы не обидеть нашего героя, я постараюсь хотя бы кратко их обозначить по ходу данного опуса.

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

Итак, начнём!

1. Подготовка диска

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

Создать разделы на диске можно как во время установки, так и заранее. Если вы загрузитесь с установочного диска Манджаро, то можете использовать Partition Manager (Диспетчер Разделов для KDE), или в терминале запустить parted.

Что нам необходимо сделать?

  1. Создать таблицу разделов GPT (если она уже создана, можно просто удалить все разделы).
  2. Создать небольшой раздел для efi. Для этого раздела рекомендуется размер в 512 МВ, у меня создан раздел всего в 64 МВ, может быть, я не прав, но никаких проблем с этим у меня не было. Возможно, что больший размер нужен, если вы собираетесь установить несколько систем (например, добавить к Линуксу Виндовс). Важно! Для этого раздела нужно установить флаги boot и esp.
  3. Создать большой раздел, на котором и будет создана btrfs и установлена Манджаро.
  4. Создать раздел подкачки (если он нужен). Я его при установке не создаю, подключаю потом с другого диска.

Таким образом, нужно создать всего два или три раздела (если вы используете таблицу разделов msdos — один или два раздела).

Для примера посмотрим, как можно создать разделы с помощью parted.

Предположим, что мы имеем диск ёмкостью в 120 GB. Запустим parted для диска /dev/sda:

sudo parted -a optimal /dev/sda

Ключ -a нужен для выравнивания разделов.

Далее даём команды parted (надеюсь, вы не забыли скопировать куда-нибудь ценную информацию с диска?):

unit MB

mklabel gpt

Parted будет измерять размеры разделов в мегабайтах и создаст таблицу разделов GPT

mkpart ESP fat32 1 512

set 1 boot on

Создаётся раздел efi, устанавливаются флаги boot и esp.

mkpart primary ext3 512 113000

mkpart primary linux-swap 113000 -1

Создаём раздел для Манджаро и раздел подкачки. Если раздел подкачки не нужен, эти команды нужно подкорректировать. На SSD диске можно оставить часть диска неразмеченным.

Контролируйте процесс создания разделов с помощью команд print и print free (покажет не только созданные разделы, но и свободное место).

Если все разделы созданы, даём команду quit и выходим из программы.

Перед тем, как продолжить наше повествование, условимся о том, что:

  1. Мы имеем диск (hdd или ssd), на который будет установлена система, и с которого она будет загружаться.
  2. На диске создана таблица разделов gpt.
  3. Созданы необходимые разделы (хотя это можно сделать и позже).
  4. Автор не несёт ответственности за потерю данных, которые вы забыли скопировать в безопасное место!

2. Приглашаем Архитектора

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

sudo pacman -Sy

sudo pacman -S manjaro-architect

Обновление! Сейчас эти две команды уже не актуальны, manjaro-architect входит в стандартный установочный образ Манджаро, поэтому его можно просто запустить из меню или командой

sudo manjaro-architect

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

установка manjaro architect главное меню

Для решения нашей текущей задачи нам потребуются только первые два пункта. Итак, выбираем пункт первый и начинаем подготовку к установке.

3. Подготовка к установке

установка manjaro architect подготовка к установке

Пробежимся по пунктам:

Настройка виртуальной консоли — на мой взгляд, вещь опциональная — настроить консоль на русский язык можно и после установки.

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

Разметить диск — если вы не разметили диск заранее, то заходите сюда и выбирайте программу для разметки диска (я бы использовал всё тот же parted)

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

Менеджер логических томов (LVM) — для тех, кто использует LVM. Если в системе много дисков, то можно попробовать, но сейчас есть и другие решения. Я, например, использую zfs, но настраиваю его уже после установки.

Смонтировать разделы — итак, поскольку диск у нас уже размечен, то начинаем прямо отсюда.

установка manjaro architect раздел root

Мы видим наш диск с двумя разделами: sda1 для efi и sda2 для установки системы. Именно его мы и указываем для root. Затем выбираем файловую систему (btrfs) и соглашаемся на форматирование раздела. Обратите внимание, что возможно смонтировать раздел, не форматируя его. Это может быть полезно для отладки уже установленной системы, или если вы хотите смонтировать раздел с вашими данными (что, впрочем, можно сделать и после установки).

Затем нужно выбрать опции монтирования. Обратите внимание, что Архитектор предлагает включить некоторые опции в зависимости от того, какой диск вы используете — SSD  или HDD.

опции монтирования btrfs

Я, обычно, ничего на данном этапе не меняю, это легко сделать и позже (если вы устанавливаете систему на HDD, Архитектор может не предложить вам включить сжатие, но вы можете сделать это сами). Дополнение от 19 июля 2018г.: сейчас Архитектор предлагает для SSD дисков ключ ssd вместо nossd.

Дальше следует ключевой вопрос: хотим ли мы создать подтома на разделе. Естественно, отвечаем «Да».

Далее нам предлагается выбрать автоматическое или ручное создание подтомов. В автоматическом режиме Архитектор создаст четыре подтома: @ для корневого каталога системы, @home — для домашнего каталога, @cache — для каталога /var/cache/pacman, где хранятся загруженные установочные пакеты Манджаро и подтом @snapshots, который не будет автоматически монтироваться к файловой системе — для хранения снапшотов. Если такой вариант вас устраивает, то идём сюда. Если есть необходимость выбрать свой набор снапшотов, то нужно выбрать ручной режим. Мы также выберем его, чтобы лучше освоить процесс.

установка manjaro architect создать подтома

Итак, нам предлагается создать три подтома. Если нужно, вносим свои правки и идём дальше.

установка manjaro монтировать подтома

Подтом @ автоматически монтируется в корень будущей файловой системы. Далее Архитектор спрашивает, куда монтировать другие подтома ( @home, @cache). Монтируем @home в /home, @cache — в /var/cache/pacman, а также любые другие подтома, необходимые нам. После этого спокойно идём дальше.

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

установка manjaro architect swap

Можно также попросить вместо использования раздела подкачки создать файл подкачки, но помните, что создавать его на разделе с btrfs нельзя!

Следующий важный момент — выбор uefi раздела. Указываем нужный раздел и соглашаемся на его форматирование. Если на диске есть uefi раздел от Виндовс, то нужно его указать, но не форматировать!

установка manjaro architect uefi

Выбираем точку монтирования uefi. Не вижу необходимости менять стандартные настройки и устанавливаю /boot/efi

установка manjaro architect дополнительные разделы

Далее, если нужно, монтируем дополнительные каталоги, по окончании этого выбираем «Готово» и идём дальше.

установка manjaro architect зеркала

Настроить список зеркал установщика  здесь можно просто запустить RankMirrors, после чего выбрать ветвь дистрибутива (если вы хотите переключиться на testing или unstable подумайте ещё раз, нужно ли это вам?).

установка manjaro architect выбор ветви

Обладая этой ценной информацией Архитектор опросит зеркала Манджаро по всему миру и вам будет предложено выбрать серверы, которые вы хотите использовать при установке. Нужно будет поставить галочки напротив нужных серверов и нажать ОК. Я обычно отмечаю несколько наиболее быстрых, впрочем, после установки эти серверы легко переопределить, например, с помощью команды:

sudo pacman-mirrors -f0

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

На этом подготовка к установке закончена. Выходим в главное меню и выбираем следующий пункт «Установка настольной системы».

4. Установка настольной системы

установка manjaro architect меню установки системы

Первое, что нам нужно сделать — выбрать и установить рабочий стол. Но сначала Архитектор предлагает  выбрать и установить ядро системы. Остановим выбор на последнем LTS-ядре 4.14 (скриншоты делались до выхода ядра 4.14):

установка manjaro architect ядро

Пункт yaourt+base-devel необходим, если вы собираетесь использовать AUR (что рекомендуется) или заниматься компиляцией программ из исходников.

установка manjaro architect модули ядра

Теперь нужно выбрать дополнительные модули ядра, необходимые для работы вашего оборудования. Соглашайтесь с вариантами, предложенными Архитектором. Какие модули вам нужны? Это невозможно определить заочно и зависит от вашего оборудования, но нужные модули можно установить и позже. Я дополнительно выделяю необходимые мне модули spl и zfs для поддержки файловой системы zfs, но Архитектор их почему-то не устанавливает, приходится делать это позже.

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

установка manjaro architect рабочий стол

На предложение установить дополнительные пакеты я обычно отвечаю «Нет» — этим лучше заниматься в уже установленной системе.

Для некоторых окружений рабочего стола Архитектор предлагает выбор между полным или минимальным набором пакетов. Если я всё правильно понимаю, то при выборе полного набора вы получите тот же набор программ, что и используя стандартный установщик Манджаро. Я же выбираю минимальный набор, поскольку предпочитаю сам доустановить нужные программы.

Нужно только помнить, что в минимальном наборе (для KDE) отсутствует не только Firefox, но и, например, поддержка принтеров. Если она вам нужна, её нужно будет доустановить потом и не забыть запустить cups:

sudo pacman -S cups print-manager

sudo systemctl enable org.cups.cupsd.service

sudo systemctl start org.cups.cupsd.service

И после этого устанавливать принтер как обычно.

Вот теперь система автоматически начинает загрузку и установку необходимых пакетов.

установка manjaro architect загрузка

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

установка manjaro architect драйвер видео

У владельцев ускорителей Intel выбора нет, они дружно выбирают пункт 1. Владельцы карт от AMD или NVIDIA могут немного подумать. На мой взгляд, лучше остановиться на автоматической установке свободного драйвера — после установки система, скорее всего, нормально стартует, пусть даже за счёт невысокой производительности видео.

Теперь мы возвращаемся в меню настольной системы и переходим к установке загрузчика.

установка manjaro architect загрузчик

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

установка manjaro architect настройка загрузчика

Здесь я просто отвечаю «Да», поскольку загрузчик у меня один.

Теперь переходим к следующему важному этапу — настройке базовой системы. Нам осталось сделать всего семь шагов.

установка manjaro architect настройка

Шаг первый — генерируем fstab.

установка manjaro architect fstab

Выбираем, как будут именоваться устройства в fstab.  Здесь я просто следую рекомендации.

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

установка manjaro architect имя хоста

Шаг третий — установить язык системы (точнее — локаль). Выбираем нужный лично вам, для России рекомендуется ru_RU.UTF-8. Те, кто выбирают другие локали, обычно знают, что делают.

установка manjaro architect локаль

Следующий шаг — установить раскладку клавиатуры — лично я перепрыгиваю. На первое время стандартной английской раскладки вполне хватает, русскую раскладку всё равно придётся настраивать средствами KDE.

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

установка manjaro architect часовой пояс

Какое время выбрать для аппаратных часов вашего компьютера? Всё очень просто: если вы не используете Windows — используйте utc!

установка manjaro architect utc

Шаг шестой — пароль администратора. Даже смотреть не на что: просто дважды вводим пароль. Главное помнить, что root может всё!

Шаг седьмой и последний — добавить нового пользователя. Всё, что осталось — ввести имя пользователя и пароль.

Всё! Оставшиеся три пункта в меню «Установка настольной системы» не являются строго обязательными, их можно использовать по мере необходимости.

Наиболее интересный из них — пункт «Chroot в установленную систему». Он позволяет немедленно попасть в установленную систему и работать в ней с правами root, что может иногда быть полезным. Один пример: если вы захотите сделать отдельный раздел для /boot, то при монтировании разделов он будет смонтирован позже, чем раздел efi. Поэтому при установке grub произойдёт ошибка. Эту проблему, однако, можно решить.

Нужно после настройки системы сделать chroot в неё, и затем дать следующие команды (предполагаем, что раздел efi — /dev/sda1|:

mkdir /boot/efi

mount /dev/sda1 /boot/efi

grub-install —target=x86_64-efi /dev/sda

update-grub

 

Теперь можно спокойно выходить в главное меню.

Пункт «Установка базовой системы (CLI)» позволит вам установить самую минимальную систему, которая после перезагрузки порадует вас приглашением командной строки, что позволит вам почувствовать себя хакером из научно-фантастического фильма.

Пункт «Установка пользовательской системы» позволит вам ещё более тонко настроить устанавливаемую систему. Например, вы можете установить KDE (или другой рабочий стол) со стандартными настройками, а не с настройками от разработчиков Манджаро.

Название пункта «Восстановление системы» говорит само за себя, здесь вы можете попробовать провести аварийно-восстановительные работы в своей Манджаро.

Установка Manjaro завершена! Мы достигли своей цели, наш друг Архитектор построил нам готовую к работе систему, теперь нам остаётся только выбрать пункт «Готово» и покинуть программу. При этом, почему-то, Архитектор пытается предупредить нас, что загрузчик не установлен, хотя с ним всё в порядке. Будем считать это небольшой шуткой от разработчиков. Теперь мы готовы приступить к приёмке выполненной работы.

Нам остаётся только перезагрузить компьютер, вытащить загрузочную флешку и начать настройку свежеустановленной системы. Установка Manjaro закончена, теперь предстоит её настройка. Об этом я уже писал, хочу только заметить, что Архитектор позволяет провести часть настроек ещё при установке (вам не нужно будет обновлять ключи или настраивать ветвь дистрибутива, вы сможете сразу подредактировать файлы конфигурации).

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

Максим Перехрест

2 комментария к “Архитектор с (Кили)Манджаро и btrfs”

  1. Здравствуйте!
    А можно полностью удалить Pulse и оставить только Alsa?
    Будет работать тогда и браузер через ALSA?
    И как сделать можно?

    • Не совсем понял вопрос. Удалить pulse во время установки? С Манджаро такое, полагаю, не пройдёт (я говорю о версии с KDE). Могу ошибаться, но разработчики включили pulse во все варианты. Единственное, что приходит в голову: установить из Архитектора только минимальную систему (CLI), оттуда установить xorg-server, видеодрайвер, а затем — plasma-desktop и sddm. Получится самый минималистичный kde, в котором поначалу нет даже терминала, всё вначале придётся ставить вручную.Pulseaudio там, кажется, тоже нет 🙂 Очень муторный вариант.
      Pulseaudio можно удалить и после установки, удалив, соответственно, пакет pulseaudio.
      Я только что для пробы удалил с ноута pulse, звук в браузере работает, но kde нужно будет настраивать дополнительно.
      Если не ошибаюсь, если в зависимостях программы есть alsa-lib, она должна работать без pulse.
      Посмотрите на Арчвики статью о pulseaudio, там есть инфа по поводу использования alsa и pulseaudio, В частности, если установлен пакет pulseaudio-alsa, все устройства с поддержкой alsa должны работать через pulse. Если этот пакет удалить и отредактировать файл /etc/pulse/default.pa, pulse и alsa должны работать параллельно.
      Посмотрите ещё там же статью о alsa.
      Если честно, я в последнее время насчёт настройки звука не заморачивался, поэтому, чтобы ответить подробнее, нужно будет поэкспериментировать.
      Удачи!

Оставьте комментарий