Установка и настройка Arch Linux на машинах с UEFI

Arch Linux – один из самых универсальных дистрибутивов GNU Linux благодаря своей простоте и передовым программным пакетам благодаря своей модели Rolling Release, Arch Linux не рассчитан на начинающих в мире Linux. Он также предоставляет сложный командный интерфейс установщика без поддержки графического интерфейса. Модель установки через командную строку делает процесс установки системы очень гибким, но также очень сложным для новичков в Linux.

На вершине всего этого Arch Linux предоставляет свои собственные репозитории программных пакетов через менеджер пакетов Pacman. Arch Linux также обеспечивает среду Multiarch для различных архитектур процессоров, таких как 32-битные, 64-битные и ARM.

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

Arch Linux также поддерживает AUR – Arch User Repository, который является огромным зеркалом репозиториев программного обеспечения, управляемых сообществом. Зеркала репозиториев AUR позволяют пользователям компилировать программное обеспечение из исходных кодов и устанавливать его с помощью менеджеров пакетов Pacman и Yaourt (Yet Another User Repository Tool).

В этом руководстве представлен пошаговый процесс установки базовой Arch Linux через образ загрузочного диска/USB на машинах с UEFI. Для других настроек или подробностей посетите официальную страницу вики Arch Linux по адресу https://wiki.archlinux.org.

Требования

  1. Скачать образ ISO Arch Linux

Шаг 1: Создание разметки дисков

1. Прежде всего, перейдите на страницу загрузки Arch Linux и загрузите последний образ CD (текущая стабильная версия: 2020.05.01), создайте загрузочный CD/USB, а затем подключите его к вашему CD/USB-приводу системы.

2. ВАЖНЫЙ ШАГ! Также убедитесь, что в вашей системе подключен кабель Ethernet с доступом в Интернет, а также активирован DHCP-сервер.

3. После загрузки CD/USB вы увидите первые параметры установщика Arch Linux. Здесь выберите Arch Linux archiso x86_64 UEFI CD и нажмите клавишу Enter для продолжения.

Arch Linux Boot Menu
Booting Arch Linux

4. После того, как установщик разархивирует и загрузит ядро Linux, вы автоматически попадете в терминал Arch Linux Bash (TTY) с привилегиями root.

A good step now is to list your machine NICs and verify internet network connection by issuing the following commands.

# ifconfig
# ping -c2 google.com
Check Arch Linux Network

В случае отсутствия настроенного DHCP-сервера на вашей территории для динамического выделения IP-адресов клиентам, выполните нижеуказанные команды для ручной настройки IP-адреса для среды Arch Live.

Замените сетевой интерфейс и IP-адреса соответственно.

# ifconfig eno16777736 192.168.1.52 netmask 255.255.255.0 
# route add default gw 192.168.1.1
# echo “nameserver 8.8.8.8” >> /etc/resolv.conf
Configure IP Address on Arch Linux

На этом этапе также можно вывести список жесткого диска вашей машины, выполнив следующие команды.

# cat /proc/partitions
# ls /dev/[s|x|v]d*
# lsblk
# fdisk –l 
Check Arch Linux Disk

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

# ls /dev | grep ‘^[s|v|x][v|d]’$* 
Check Virtual Disks

Важно отметить, что соглашение об именах для хранения дисков Raspberry PI обычно /dev/mmcblk0, а для некоторых типов аппаратных RAID-карт может быть /dev/cciss.

5. На следующем этапе мы начнем настраивать разделы жесткого диска. На этом этапе вы можете использовать утилиты cfdisk, cgdisk, parted или gdisk для создания разметки диска для диска GPT. Я настоятельно рекомендую использовать cfdisk из-за его простоты использования и мастер-ориентированного интерфейса.

Для базового раздела используется следующая структура таблицы.

  • Раздел системы EFI (/dev/sda1) размером 300 МБ, форматированный в FAT32.
  • Раздел подкачки (/dev/sda2) с рекомендованным размером 2xRAM, включенный в использование.
  • Корневой раздел (/dev/sda3) размером не менее 20 ГБ или оставшееся пространство на жестком диске, отформатированный в ext4.

Теперь давайте действительно начнем создавать таблицу разделов диска, запустив команду cfdisk против жесткого диска компьютера, выберите тип метки GPT, затем выберите Свободное место, затем нажмите на Создать в нижнем меню, как показано на ниже приведенных скриншотах.

# cfdisk /dev/sda
Select Arch Linux Label Type
Select Arch Linux Installation Disk

6. Введите размер раздела в МБ (300M) и нажмите клавишу Enter, выберите Тип из нижнего меню и выберите тип раздела EFI System, как показано на следующих скриншотах.

EFI System Size
EFI System Type
Select EFI System

Вы завершили настройку раздела EFI System.

7. Затем давайте создадим раздел Swap с использованием той же процедуры. Используйте клавишу вниз и снова выберите оставшееся Свободное место и повторите шаги выше: Создать -> размер раздела 2x рекомендуемый размер ОЗУ (можно безопасно использовать 1G) -> Тип Linux swap.

Используйте ниже приведенные скриншоты в качестве руководства для создания раздела подкачки.

Create Swap Partition
Set Swap Partition Size
Select Partition Type
Select Swap Partition

8. Наконец, для раздела /(root) используйте следующую конфигурацию: Создать -> Размер: остаток свободного места -> Тип файловой системы Linux.

После того, как вы проверите таблицу разделов, выберите Записать, ответьте “да”, чтобы применить изменения диска, а затем введите quit, чтобы выйти из утилиты cfdisk, как показано на ниже изображениях.

Create Root Partition
Set Root Partition Size
Select Type for Root Partition
Select Linux Filesystem
Partition Table Summary
Confirm Partition Changes
Quit Disk Management Console

9. На данный момент ваша таблица разделов была записана на диск HDD GPT, но на ней еще не была создана файловая система. Вы также можете просмотреть краткое содержание таблицы разделов, запустив команду fdisk.

# fdisk -l

10. Теперь пришло время отформатировать разделы с необходимыми файловыми системами. Выполните следующие команды для создания файловой системы FAT32 для раздела EFI System (/dev/sda), создайте файловую систему EXT4 для раздела root (/dev/sda3) и создайте раздел подкачки для /dev/sda2.

# mkfs.fat -F32 /dev/sda1
# mkfs.ext4 /dev/sda3
# mkswap /dev/sda2
Create Arch Linux Filesystem

Шаг 2: Установка Arch Linux

11. Для установки Arch Linux раздел /(root) должен быть смонтирован в точку монтирования /mnt, чтобы быть доступным. Также необходимо инициализировать раздел подкачки. Выполните следующие команды, чтобы настроить этот шаг.

# mount /dev/sda3 /mnt
# ls /mnt 
# swapon /dev/sda2
Mount Root Partition

12. После того как разделы стали доступными, пришло время выполнить установку системы Arch Linux. Для увеличения скорости загрузки пакетов установки вы можете отредактировать файл /etc/pacman.d/mirrorlist и выбрать ближайший зеркальный веб-сайт (обычно выберите сервер в вашей стране) в начале списка зеркал.

# nano /etc/pacman.d/mirrorlist

Вы также можете активировать поддержку Arch Multilib для живой системы, раскомментировав следующие строки в файле /etc/pacman.conf.

[multilib]
Include = /etc/pacman.d/mirrorlist
Enable Arch Multilib

13. Затем начните установку Arch Linux, выполнив следующую команду.

# pacstrap /mnt base base-devel linux linux-firmware nano vim
Install Arch Linux
Arch Linux Installer in Progress

В зависимости от ресурсов вашей системы и скорости интернета установка может занять от 5 до 20 минут.

14. После завершения установки создайте файл fstab для вашей новой системы Arch Linux, выполнив следующую команду.

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

Затем проверьте содержимое файла fstab, выполнив следующую команду.

# cat /mnt/etc/fstab
Generate fstab File

Шаг 3: Настройка системы Arch Linux

15. Чтобы дополнительно настроить Arch Linux, вам необходимо войти в chroot в системный путь /mnt и добавить имя хоста для вашей системы, выполнив следующие команды.

# arch-chroot /mnt
# echo "archbox-tecmint" > /etc/hostname
Set Hostname for Arch Linux

16. Затем настройте язык вашей системы. Выберите и раскомментируйте предпочтительные языки кодирования из файла /etc/locale.gen, а затем установите свою локаль, выполнив следующие команды.

# pacman -S nano
# nano /etc/locale.gen

Отрывок из файла locale.gen:

en_US.UTF-8 UTF-8
en_US ISO-8859-1
Set Arch Linux Language

Создайте раскладку языка вашей системы.

# locale-gen
# echo LANG=en_US.UTF-8 > /etc/locale.conf
# export LANG=en_US.UTF-8
Set Arch Linux Language

17. Следующим шагом является настройка часового пояса вашей системы путем создания символической ссылки для вашего суб-часового пояса (/usr/share/zoneinfo/Continent/Main_city) к файлу пути /etc/localtime.

# ls /usr/share/zoneinfo/
# ln -s /usr/share/zoneinfo/Aisa/Kolkata /etc/localtime
Set Arch Linux Timezone

Также необходимо настроить аппаратные часы для использования UTC (обычно аппаратные часы установлены на местное время).

# hwclock --systohc --utc

18. Как и многие известные дистрибутивы Linux, Arch Linux использует зеркала репозиториев для различных мировых локаций и нескольких архитектур системы. Стандартные репозитории включены по умолчанию, но если вы хотите активировать репозитории Multilib, вам необходимо раскомментировать директивы [multilib] в файле /etc/pacman.conf, как показано в нижеприведенном отрывке.

# nano /etc/pacman.conf
Enable Arch Multilib

19. Если вы хотите включить поддержку Yaourt Package Tool (используется для загрузки и сборки пакетов AUR), перейдите в конец файла /etc/pacman.conf и добавьте следующие директивы.

[archlinuxfr]
SigLevel = Never
Server = http://repo.archlinux.fr/$arch
Activate Yaourt Package Tool

20. После того как файл репозитория был изменен, синхронизируйте и обновите зеркала базы данных и пакеты, выполнив следующую команду.

# pacman -Syu
Synchronize and Update Database

21. Затем установите пароль для учетной записи root и создайте нового пользователя с привилегиями Sudo в системе Arch, выполнив приведенные ниже команды. Также истеките срок действия пароля пользователя, чтобы заставить нового пользователя изменить пароль при первом входе.

# passwd
# useradd -mg users -G wheel,storage,power -s /bin/bash your_new_user
# passwd your_new_user
# chage -d 0 your_new_user
Create Arch Linux User

22. После добавления нового пользователя вам необходимо установить пакет sudo и обновить строку группы wheel в файле /etc/sudoers, чтобы предоставить привилегии root вновь добавленному пользователю.

# pacman -S sudo
# pacman -S vim
# visudo 

Добавьте эту строку в файл /etc/sudoers:

%wheel ALL=(ALL) ALL
Enable Sudo Privileges

24. На последнем шаге установите загрузчик, чтобы Arch мог загрузиться после перезагрузки. Загрузчик по умолчанию для дистрибутивов Linux и Arch Linux также представлен пакетом GRUB.

Для установки загрузчика GRUB на машинах с UEFI на первом жёстком диске, а также для обнаружения Arch Linux и настройки файла загрузчика GRUB, выполните следующие команды, как показано на скриншотах.

# pacman -S grub efibootmgr dosfstools os-prober mtools
# mkdir /boot/EFI
# mount /dev/sda1 /boot/EFI  #Mount FAT32 EFI partition 
# grub-install --target=x86_64-efi  --bootloader-id=grub_uefi --recheck
Install Grub Boot Loader in Arch Linux
Configure Grub Boot Loader in Arch Linux

25. Наконец, создайте файл конфигурации GRUB, выполнив следующую команду.

# grub-mkconfig -o /boot/grub/grub.cfg
Create Grub Configuration file

Поздравляем! Arch Linux теперь установлен и настроен на вашем устройстве. Последние шаги, которые остались, – выйти из окружения chroot, отмонтировать разделы и перезагрузить систему, выполнив следующие команды.

# exit
# umount -a
# telinit 6

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

Arch Linux Grub Menu

27. Когда система загрузится в Arch Linux, войдите с учётными данными, настроенными для вашего пользователя в процессе установки, и измените пароль учётной записи пользователя, как показано ниже.

Arch Linux Login

28. Подключение к интернету будет потеряно, так как в системе по умолчанию не запущен DHCP-клиент. Чтобы решить эту проблему, выполните следующую команду с привилегиями root, чтобы запустить и включить DHCP-клиент.

Также проверьте, что сетевой интерфейс работает и получил IP-адрес от DHCP-сервера, и что интернет-подключение работает как ожидается. Пингуйте случайный домен для проверки интернет-подключения.

$ sudo systemctl start dhcpcd
$ sudo systemctl enable dhcpcd
# ip a
# ping -c2 google.com

В данный момент система Arch Linux содержит только базовые программные пакеты, необходимые для управления системой из командной строки, без графического пользовательского интерфейса.

Из-за своей высокой портативности, циклов выпуска с постоянным обновлением, компиляции пакетов из исходных кодов, гранулярного контроля над установленным программным обеспечением и скорости обработки, Arch Linux во многом напоминает Gentoo Linux, но не может достичь сложной архитектурной конструкции Gentoo.

Однако процесс управления системой Arch Linux не рекомендуется для начинающих пользователей Linux. Начинающие пользователи Linux, которые хотят работать с системой, подобной Arch Linux, должны сначала изучить принципы Arch Linux, установив дистрибутив Manjaro Linux.

Source:
https://www.tecmint.com/arch-linux-installation-and-configuration-guide/