Arch Linux: Установка хардкорным путем
Среди всех дистрибутивов Линукс самыми сложными считаются три: Linux From Scratch (по факту, PDF-файл, в котором расписана инструкция по сборке системы ПОЛНОСТЬЮ с НУЛЯ), Gentoo (многочасовая установка, разборки с кодами… в общем, для извращенцев) и Arch. LFS и Gentoo - это уже для реальных глобальных целей, либо в обучающих целях, но не для общего применения, так как эти дистрибутивы настолько сложные в плане установки и настройки, а потом и в использовании, что только единицы их осилят, вдобавок нужна команда целая, в одиночку это очень тяжело. Вдобавок, для их сборки нужен существующий дистрибутив Линукс.
Arch можно собрать вручную. Его установка такая, что чисто в консоли все настраиваешь. И без инструкций никак. Зато он полегче и можно собрать в одиночку. А по сложности он третий, зато можно собрать чистую систему без мусорных файлов и прочих библиотек. То есть, ты знаешь, что устанавливаешь и собираешь.
Я много перепробовал Линуксов - все они какие-то легкие. Решил повысить скилл и уровень, потому взялся за Arch (Арч на русском), хотя я боялся к нему прикасаться. Теперь разбираюсь, что можно установить и как надо установить.
Я хочу записать инструкцию по установке. Заодно чтобы сам брал для себя, потому что я устанавливал, оглядываясь на несколько роликов и инструкций - везде по-разному, но что-то надо брать. Я запишу более оптимальный на мой взгляд вариант.
Проще установить на виртуальной машине, чтобы возиться не пришлось. Как подключать iso-образ к виртуальной машине я уже писал про это в другой статье. Так что перейдем сразу к делу. Только хардкор!
Сначала скачиваем образ системы. Так как он голый, то есть не захламленный, то скачаешь почти 800 Мб - остальное интернетом во время установки. Основное условие установки Арча - это наличие интернета, так как внутри него особо ничего нет. Если бы ставили на реальную машину, пришлось бы немного пошаманить, а в виртуальной машине сеть изначально доступна. И если у кого проводной интернет, тоже проблем не испытает.
В общем, запускаем виртуальную машину с Арчем, откроется черное окно с выбором пунктов. Выбираем самый первый.
Немного ждем и покажется консоль.
Для новичков рекомендую напечатать команду archinstall - там уже проще будет, так как просто пункты выбираешь и все, команды строчить не надо.


Про установку системы через скрипт archinstall я распишу потом. Это легкий путь, новичкам поможет. А я пойду хардкорным путем. Потому выйду из archinstall и начну установку вручную.
Первым делом, загрузим в систему русский язык командой:
loadkeys ru
Затем подключим шрифт кириллицы:
setfont cyr-sun16
Если надо, можем переключаться на русскую раскладку и печатать русскими буквами комбинацией клавиш Ctrl+Shift, но во время установки нам это не нужно, потому что все команды вводятся на английском.
Настроим время по московскому времени следующими командами:
timedatectl set-ntp true
timedatectl set-timezone Europe/Moscow
Далее настроим разметку диска. Есть два способа: команда fdisk и команда cfdisk. Первая команда - это уже реально для реальных хардкорщиков, а я сам запутаюсь, потому воспользовался командой cfdisk.
Вбиваем команду cfdisk, выбираем в обновленном окне первый пункт, то есть gpt, после чего откроется следующее окно с разметкой диска.
Нажимаем Enter на клавиатуре, выбрав Free space и внизу пункт New, затем внизу в partition size вместо 50G (50G я выставил при создании виртуальной машины, у вас может быть по-разному) вы вводите 1G для загрузчика системы.
Нажимаете Enter. Выбираем внизу пункт Type, затем в открывшемся списке выбираем самый первый, который называется EFI System. А потом снова Enter.


Выбираем Free space, который зеленым подсвечен, внизу New и создаем второй раздел с оставшимися гигабайтами, где и будет храниться все.
Для него тоже меняем тип, как и для первого раздела. Только в пункте выбираем Linux root (x86-64). Затем Enter.


Разделы создали. Внизу пишем Write, чтобы сохранить изменения. Затем печатаем yes и нажимаем на Enter. После чего выходим из разметки диска, выбрав Quit.
Мы вернемся в самое начало.
Теперь переходим к форматированию разделов.
Пишем следующие команды:
mkfs.fat -F32 /dev/sda1 (первый раздел в формате FAT 32 будет загрузчиком системы)
mkfs.ext4 /dev/sda2 (это основной раздел, куда все пихнем)
Далее монтируем разделы следующими командами (заранее предупреждаю: двойное тире в командах пишется слитно):
mount /dev/sda2 /mnt (монтируем основной раздел в одну папку)
mount - -mkdir /dev/sda1 /mnt/boot (сначала создаем папку boot, затем монтируем загрузочный раздел туда)
С монтированием разобрались. Теперь проведем базовую установку системы с нужными пакетами следующей командой:
pacstrap -i /mnt base base-devel linux linux-firmware linux-headers sudo nano networkmanager efibootmgr (устанавливаем базовую версию системы с поддержкой драйверов и оборудования, в частности, включая поддержку видеокарт, а также права, текстовый редактор, управление сетью и загрузчик).
Затем идет выбор источника скачивания пакетов (по умолчанию 1) - там просто Enter выбираем, затем нажимаем Y, потом Enter - и пошла установка системы.
И ждем, пока не закончится.
После окончания установки создаем конфигурационный файл следующей командой:
genfstab -U -p /mnt » /mnt/etc/fstab (создаем конфигурационный файл в соответствующей папке)
Затем входим в систему от имени админа следующей командой:
arch-chroot /mnt /bin/bash (вход от админа и сразу запуск консоли)
Далее задаем часовой пояс и активируем:
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
hwclock - -systohc - -utc
Теперь установим в систему английский и русский языки, перейдя в редактор командой:
nano /etc/locale.gen (редактор nano открывает конфигурационный файл, где хранятся языки)locale
Откроется редактор:
Нижней стрелкой ищем две строки: #en_US.UTF8 и #ru_RU.UTF-8. Перед ними уберем решетки.


Теперь комбинацией клавиш нажимаем на Ctrl+X, потом нажимаем на Y, потом на Enter - сохраняя изменения, мы выходим из редактора.
После проводим генерацию языков:
locale-gen
Далее устанавливаем язык системы. Рекомендуют для начала английский поставить, а я рискну и поставлю русский следующей командой:
echo «LANG=ru_RU.UTF-8» > /etc/locale.conf (устанавливаем русский язык и записываем в файл)
Затем открываем редактор, чтобы кириллицу установить:
nano /etc/vconsole.conf
Затем записываем в открывшемся редакторе две строчки, чтобы установить кириллицу в консоль, иначе будут крякозябры:
KEYMAP=ru
FONT=cyr-sun16
Затем нажимаем комбинацию клавиш Ctrl+X, затем кнопку Y, а потом Enter, тем самым сохранив изменения и выйдя из редактора.
Едем дальше. Создаем имя компьютера следующей командой:
echo namePC (вводите свое) > /etc/hostname
Затем открываем редактор, чтобы настроить сам компьютер:
nano /etc/hosts
Записываем следующую строку:
127.0.1.1 localhost.local domain namePC (имя компа, которое вы ввели)
Затем нажимаем комбинацию клавиш Ctrl+X, затем кнопку Y, а потом Enter, тем самым сохранив изменения и выйдя из редактора.
Далее включаем управление сетью следующей командой:
systemctl enable NetworkManager
Даем пароль администратору командой:
passwd
Затем набираем пароль, потом Enter, потом снова вводим пароль для подтверждения, после чего Enter. В Линуксах админской учеткой является root.
Теперь создаем обычную учетку, то есть пользователя, через который мы будем заходить в систему. Пользоваться от root крайне не рекомендуется - эта админская учетка служит как подушка безопасности, если через основную накосячишь. Если накосячить под root, тогда считай, что сломал систему.
Итак, создаем пользователя:
useradd -m -g users -G wheel -s /bin/bash user (здесь вместо user пишете свое имя)
Затем задаем пароль себе:
passwd user (вместо user ваш логин)
Далее добавляем его в группы:
usermod -aG wheel,audio,video,optical,storage user (вместо user ваш логин)
Назначаем редактор nano по умолчанию и открываем конфигурационный файл, где задаем права себе. Обычно все установки в консоли проводятся через sudo (superuser do - типа суперпользователь, короче, админ). Свою учетку и кинем в админскую группу:
EDITOR=nano visudo (назначив nano по умолчанию, мы открываем visudo)
Открывается редактор с кучей строк. Ищем #%wheel ALL=(ALL:ALL) ALL, убираем решетку. Сохраняем изменения уже привычной комбинацией: Ctrl+X, потом Y, потом Enter.
Теперь устанавливаем загрузчик системы:
pacman -S grub
Создаем папку для загрузчика, а потом монтируем следующими командами:
mkdir /boot/efi
mount /dev/sda1 /boot/efi
Далее устанавливаем парочку утилит системных:
pacman -S dosfstools os-prober mtools
Далее устанавливаем grub во внутрь системы:
grub-install - -target=x86_64-efi - -bootloader-id=GRUB - -efi-directory=/boot/efi - -removable
Создаем конфиг для загрузчика:
grub-mkconfig -o /boot/grub/grub.cfg
Все, базовую часть системы установили. Остается сделать перезапуск последовательной командой:su
exit (выходим из админской учетки)
umount -R /mnt (отсоединяем установщик)
reboot (перезагружаемся)
Теперь в виртуальной машине нам надо в настройках отключить iso-образ, чтобы после перезагрузки мы могли загрузиться в установленную систему.
И еще важно в настройках включить EFI (UEFI).
После этого запускаем виртуальную машину. Должны увидеть это:
Запускаем первый пункт. Далее вводим логин и пароль в консоли. И входим в систему.
Теперь настроим пакетный менеджер pacman, в котором разрешим ему скачивать дополнительные библиотеки, чтобы в будущем с виндовыми программами работать. Используем редактор nano:
sudo nano /etc/pacman.conf (мы зашли под себя, а для проведения операций придется писать sudo)
Вводим пароль и входим в редактор. Там ищем #[multilib] и #include = /etc/pacman.d/mirrorlist. Убираем решетки.
Потом сохраняем изменения уже привычной комбинацией: Ctrl+X, потом Y, потом Enter.
Теперь запускаем обновление системы командой:
sudo pacman -Syu
Теперь устанавливаем звуковые драйвера:
sudo pacman -S pipewire pipewire-alsa pipewire-pulse pipewire-jack pavucontrol
Вводим число 2, потом Enter, потом вводим y, потом Enter - запускаем установку звуковых драйверов.
Затем активируем службу звуковую:
systemctl --user enable --now pipewire.service wireplumber pipewire-pulse.service
Далее устанавливаем графический сервер, то бишь драйвера на графику. У линукса два вида: xorg и wayland. Xorg - проверенный временем, но старый и сложный для разработчиков, а wayland - новый, но пока корявый, который был призван заменить xorg. Мы установим проверенный временем:
sudo pacman -S xorg xorg-xinit xorg-server xorg-apps mesa-libgl
Трижды нажимаете Enter, затем Y, потом Enter - запускаем установку.
Теперь устанавливаем драйвера на видеокарту. Так как мы используем виртуальную машину, то используем vmware.
sudo pacman -S xf86-video-vmware
Если бы ставили на реальную машину и там стояла бы видеокарта nvidia или amd, тогда писали бы вместо intel соответствующую. Arch поддерживает видеокарты лучше, чем подавляющее большинство.
Разумеется, в консоли батрачить мы не будем, поэтому установим графическую оболочку, то есть графический пользовательский интерфейс. Я писал статью про Gnome, KDE, Xfce, Cinnamon и т.д. Но Арчу подходит KDE, да и в плане настроек он будет проще и красивее, чем остальные. Потому установим KDE - все-таки ближе к Винде по стилю.
Для установки KDE пишем следующую команду:
sudo pacman -S plasma sddm sddm-kcm kde-applications
Далее пойдет выбор пунктов. Первые два пункта тупо Enter нажимаем. В третьем уже цифру надо ввести - это выбор шрифта системы для начала. Я выбрал цифру 5, вы можете выбрать любой, но красивее шрифт под цифрой 5 - мною проверено.
В следующем пункте выбираем кодеки, то есть приложение для запуска видео и аудио. Я выбрал второе.
Для дальнейших настроек оболочки идет следующий пункт. Я выбрал цифру 2:
В следующем пункте я выбрал цифру 1, так как я точно не знаю, что это такое.
Дальше выбор языка. Здесь надо быть внимательным! Русский язык обозначен под числом 96 - его и вводим.
Затем вводите Y, потом Enter - начинаем установку оболочки. Он закачает около 4 Гб, так что можете отдохнуть от рутины и ждать окончания установки.
После окончания установки активируем экран входа в систему:
sudo systemctl enable sddm
А потом перезапускаем систему командой reboot.
И… консольный ад закончился!








Мы установили систему хардкорным путем! И работает шустро и быстро. Потому что мы знали, что устанавливаем. Нет никакой телеметрии. Никаких лишних программ и приложений. Все в базовой поставке. Что нужно, установим потом.
***
Что по итогу? Это самая сложная инструкция, которую я написал. Потому что я устанавливал третий по сложности дистрибутив Линукс - это Арч. Еще более изощренные Linux From Scratch и Gentoo - эти дистрибутивы точно не для домашнего использования, так что о них забудьте.
Я написал эту инструкцию, в первую очередь, для себя, так как искал, собирал с разных источников, объединил и нашел свой способ установки. А то запарился, ведь с первого раза я устанавливал систему, но получалась кривой. Теперь все ништяк.
Для новичков такой хардкорный путь будет слишком хардкорным, но зато нормально соберешь. Дальше надо быть аккуратным. А для установки рекомендую начать с archinstall, по которому я напишу отдельную инструкцию - она будет короче и проще, так как команды вбивать не придется.
Ну теперь я точно сам всех того :-D Учитывая, с каким трудом я установил эту систему, я постараюсь ее доработать в виртуальной машине, а не снесу, как я это сделал с остальными предыдущими - слишком легкие и какие-то… чужие. А когда установил Арч, есть ощущение, что я установил СВОЮ систему, а не собранную ЧУЖИМИ руками. Для того, кто планирует изучать Линукс, это огромный опыт - такие в компаниях нужны, учитывая, что Линукс в России часто начал использоваться в госконторах.
На Арче основан Manjaro, а Manjaro для новичков. Но Арч не используют госконторы, потому что он против стабильности и в качестве сервера не годится из-за риска сломать систему обновлением. То есть Арч является дистрибутивом для пользователей опытных, кто хочет собрать свою систему и сидеть на ней, слушать музыку, играть игры и т.д., так как у Арча самые свежие версии всего, что в нем есть. Но способ установки программ, утилит, драйверов и вообще распределение папок и всего прочего работает одинаково почти на любых дистрибутивах, да и консолью можно овладеть - это сильнейшая сторона Линукса, без освоения которого на системах Линукса не протянешь долго.
Что же, я буду дорабатывать Арч, почитав инструкции и посмотрев видео, а потом на нем постараюсь запускать виндовые игры и программы, если получится.
Что же, путь самурая мы прошли!
