Найти в Дзене
mrybs dev

Как установить Arch Linux без головной боли

Оглавление

Предисловие

О системе

Arch Linux - дистрибутив, основанный на ядре GNU/Linux с открытым исходным кодом (лицензия GPL-3.0). Linux был разработан как бесплатная альтернатива Unix.

В дистрибутиве нет ничего лишнего. Только терминал, менеджер пакетов pacman, ядро, конфигурационные файлы, некоторые папки и пакеты. Такие дистрибутивы построены по принципу KISS(Keep It Simple Stupid, переводится как Сохрани Это Простым, Тупица). Этим он и хорош. Нет ничего лишнего, система не нагружена. Затем можно сделать из этого сервер, установить любую графическую оболочку, любой драйвер. Все можно настроить очень просто.

Дистрибутив обновляется по принципу Rolling realese (дословный перевод: плавающий релиз). Каждый пакет после релиза компилируется для Arch, а затем появляется в репозиториях. После ввода одной команды можно обновить все пакеты или только определенный пакет или группу пакетов.

Правила безопасной установки

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

Рекомендуется первую установку провести на виртуальной машине (к примеру qemu)

Если Вы хотите поставить Arch на ПК, на котором есть данные, то необходимо сделать бекап данных на внешний накопитель, который перед установкой нужно извлечь. Не всех, но важных.

Все действия перепроверяйте (все ли файлы скопировались, правильная ли команда была выполнена, не было ли никаких ошибок)

Соблюдая вышесказанные правила, вероятность потери данных практически нулевая.

Подготовка загрузочной флешки

На этой странице скачиваем iso образ дистрибутива. Затем записываем любой удобной утилитой.

Для Windows: rufus, а для Linux есть dd. У меня Linux, поэтому порядок действий расписан ниже

su root # Необходимо ввести пароль для использования терминала от имени root
fdisk -l # из этой команды нужно получить название накопителя
dd if=/home/mrybs/Data/systems/linux/arch.iso of=/dev/sdb bs=8K # вместо /home/mrybs/Data/systems/linux указываем путь до образа.

Вместо /dev/sdb указываем Ваш накопитель. Аргумент bs обозначает количество данных, которые скопируюутся за раз. В моем случае это 8 КиБ

Подключение к сети

Если Вы используете ethernet, то пропустите этот шаг до последней команды. Если Вы используете wi-fi, то пропишите команды ниже

iwctl
station wlan0 connect Mekakay5gz

где SSID — имя сети wi-fi. Если необходимо, то введите пароль. Затем ведите

Если возникли ошибки, то воспользуйтесь утилитой wifi-menu

wifi-memu

Затем проверяем наличие интернета:

ping archlinux.org # Команда отправляет мусорные пакеты на указанный ip-адрес

Если появляются строки с задержкой, то все нормально, выключаем команду комбинацией ctrl+c

Работа с разделами

Разметка дисков

Для Arch необходимо два раздела: загрузчик и корень системы. Также можно добавить любой раздел для хранения данных. Для начала выберем диск для системы

fdisk -l

Если Вам необходимо поменять таблицу разделов на диске (все данные на нем будут утеряны), то используйте утилиту fdisk

fdisk /dev/sda # где /dev/sda— системный диск

А затем введите букву соответствующую таблице разделов. Лучше использовать GPT или DOS

g — GPT

G — SGI (IRIX)

o — DOS

s — Sun

Затем введите w для записи и выхода или q для выхода без записи

Для разметки диска можно воспользоваться утилитой cfdisk. Она интуитивно понятная. Разметьте диск, чтобы в нем были разделы, которые я написал ниже

cfdisk /nvme0n1

1) Загрузчик. Размер до 1 Гиб. Тип Linux filesystem или Linux. Если материнская плата с чипом BIOS и таблица разделов GPT, то тип раздела должен быть BIOS boot

2)Корень. Размер от 4 до 64 ГиБ (если будет отдельный разддел home) или от 4 (если не будет отдельного раздела home). Тип Linux filesystem или Linux

3)home. Размер любой (рекомендуется все оставшееся пространство отдать этому разделу). Тип Linux filesystem или Linux. Необязательно, но рекомендуется, т.к. при переустановке все данные останутся

Проверяем разметку командой fdisk

fdisk -l

Если вы переустанавливаете систему, то этот шаг делать необязательно

Форматирование разделов

Вводим команды как ниже.

mkfs.fat -F32 /dev/sda1 # Создаем файловую систему fat(32) для загрузчика
mkfs.ext4 /dev/sda2 # Создаем файловую систему ext4 в корневом разделе
mkfs.ext4 /dev/sda3 # Создаем файловую систему ext4 в разделе для папки /home. Эту команду выполнять необязательно, если Вы переустанавливаете систему.

Монтирование разделов

В моем образе Arch в корне есть папка /mnt, но если ее нет, то создаем

mkdir /mnt # Команда создает папку

Затем монтируем туда корневой раздел

mount /dev/sda2 /mnt # Команда монтирует раздел в указанный путь

Установка важных пакетов

С помощью утилиты pacstrap устанавливаем базовые пакеты в систему

pacstrap /mnt base grub efibootmgr vim sudo linux-firmware networkmanager # Команда устанавливает pacman пакеты смонтированный раздел

Можно добавить свои пакеты. Ниже пояснение, зачем нужны эти пакеты

base — базовые файлы и пакеты системы. Обязателен

grub — пакет для установки загрузчика grub. Обязателен

efibootmgr — пакет для взаимодействия с UEFI. Не нужен, если у Вас BIOS. А если UEFI, то обязателен

vim — текстовый редактор. Крайне рекомендуется

sudo — команда для выполнения одиночной команды от имени root. Рекомендуется

linux-firmware — драйвера на различные устройства. Рекомендуется

networkmanager — служба для подключения к wi-fi и не только. Не обнаруживает устройства без пакета linux-firmware. Рекомендуется

Первоначальная настройка системы

Заходим в установленную систему

arch-chroot /mnt

Ставим имя ПК

echo euirei >> /etc/hostname #>> записывает вывод команды в файл

Я выбрал euirei

Настраиваем DNS

vim /etc/hosts

В файле пишем следущее (чтобы войти в режим редактирования нажмите i)

127.0.0.1 localhost
::1 localhost
127.0.1.1 euirei.localdomain
euirei

Чтобы выйти и сохранить нажмите esc и введите :wq!

Генерируем локали и настраимаем язык

vim /etc/locale.gen

Там раскомментируем en_EN.UTF-8 UTF-8 и любую другую локаль.

Чтобы раскомментировать строку, необходимо убрать # в начале

Потом генерируем локаль

locale-gen

Затем выбираем английский язык и любой другой. Например я выберу русский

echo LANG=en_US.UTF-8 >> /etc/locale.conf
echo LANG=ru_RU.UTF-8 >> /etc/locale.conf

Настраиваем пользователей

Создаём пользователя

useradd mrybs # команда создаёт пользователя с именем mrybs

Добавляем пользователя в группу wheel

usermod -G wheel mrybs

Задаём пароль для пользоватей

passwd root # После выполнения команды необходимо ввести желаемый пароль
passwd mrybs

Редактируем файл /etc/sudoers

В нем напишите

%wheel ALL=(ALL) ALL

Генерация /etc/fstab

Выходим из системы

exit

Монтируем домашний раздел (если есть) в папку /home

mount /dev/sda3 /mnt/home

Генерируем fstab

genfstab -U -p /mnt >> /mnt/etc/fstab

Установка ядра и загрузчика

В данном уроке я рассматриваю установку загрузчика grub на ПК с UEFI или BIOS.

Заходим в систему

arch-chroot /mnt

Установка для UEFI

Создаём папку и монтируем загрузочный раздел

mkdir /boot/efi
mount /dev/sda1 /boot/efi

Устанавливаем grub на диск

grub-install --removable --efi-directory=/boot/efi --target=x86_64-efi --bootloader-id=GRUB

Установка ядра

Я выбрал linux-zen

sudo pacman -S linux-zen linux-zen-headers

Конфигурируем загрузчик

Загрузчик установлен, он работает. Но чтобы там появились пункты меню, необходимо сгенерировать конфигурционный файл в /etc/grub/grub.cfg

grub-mkconfig -o /boot/grub/grub.cfg

Готово! Теперь можно извлекать загрузочный накопитель и перезагружаться в систему. В начале появится выбор в grub, какие команды выполнить. Нужно выбрать первый вариант (что-то вроде Arch Linux), который загрузит корень, запустит ядро.

В одной из следующих статей я расскажу, как установить драйвера, включить wifi, запускать службы, как установить графическую оболочку

Всем спасибо за прочтение!

#linux #archlinux #arch #install #линукс #арч #Установка