В этой статье мы с
Вами поэтапно пройдём сложный, тернистый, но очень увлекательный путь
Установки одного из самых
почитаемых и
любимых у продвинутых
Линуксятников Linux-дистрибутива -
Arch Linux.
Данный
Linux-дистрибутив, хоть и не в топах у
Пользователей, в виду его сложности установки, но тем ни менее отличается от множества других своей невероятной гибкостью, настраивамостью, одним из самых больших сообществом
фри-ланс разработчиков, как и профессиональных впрочем, огромным хранилищем, как правило самых свежих
пакетов|
программ.
Одним из самых существенных отличий дистрибутива
Arch Linux от любых других - это процесс его
установки, а именно
отсутствие полноценного
GUI-автоматизированного режима установки (
Графический режим установки).
Есть скрипт установки, который вроде бы, как даёт такую возможность, но в минималистском и достатчоно также сложном графическом режиме для простого
Пользователя.
Мы же с вами будем делать всё своими
ручками, как и положено
знатному Линуксятнику, а мы с вами собираемся приобщиться к данной категории
Пользователей, а посему,
ручной способ установки является основным и правильным.
Итак, перво на перво, идём с вами на портал дистрибутива, а именно, сразу же на страничку его
Загрузки:
(частота выхода свежих релизов составляет
каждое 1-е число,
каждого месяца)
https://archlinux.org/download/
В пером разделе странички
Release Info мы видим информацию о текущем релизе, его размер, ссылку на
Руководство по установке (
Installation Guide) где можно при желании посмотреть и использовать инструкции по
Установке, также и на
русском языке (можно выбрать в
Меню странички справа вверху), но, как правило, дефолтное
Руководство на
английском языке всегда в актуально-свежем состоянии, что не всегда бывает со страничками других языков.
Тут же, чуть ниже, в разделе
BitTorrent Download (recommended)|
Загрузка торрент-файлом(рекомендуюется) можно воспользоваться для скачивания
Установщика магнет-ссылкой -
Magnet link for 2023.04.01 и ссылкой на
торрент-файл -
Torrent for 2023.04.01:
Если мы хотим напрямую скачать
iso-образ (
iso-файл)
Установщика, то листаем страничку ниже до
списка зеракал своей страны (в данном случае это
Россия) и выбираем нажатием мышки
нужное зеракало (здесь выбрано одно из двух зеркал
yandex.ru):
В результате чего мы попадаем на страничку
хранилища зеркала, где можно выбрать для скачивания нужный
iso-файл или также здесь можно выбрать и скачать
торрент-файл, после чего происходит
загрузка iso-образа (как правило по умолчанию в папку
Загрузки):
Создаём
Установочную флешку из скачанного
iso-образа в
GPT, т.к. мы будем устанавливать систему в
UEFI, воспользовавшись любимым способом создания таких флешек (это может быть и утилита
Ventoy, и консольная утилита
dd, и утилита
NetBootIn, и
Rufus в Windows, всем, чем угодно...), благо в нашем блоге есть инструкции по таким способам.
После создания
Установочной флешки, грузимся с неё через
BIOS-UEFI|
BIOS (как это делается также есть описания в статьях в нашем блоге) и попадаем в
Установщик Arch Linux:
Жмём на
Enter
т.к. по умолчанию уже
засвечен|
выделен нужный пункт
Загрузочного Меню:
*Arch Linux install medium (x86_64. UEFI)
И после короткого промежутка времени загрузки
Установщика попадаем в его
Консольный режим:
Сразу проверяем, что мы действительно загрузились в режиме
UEFI, проверив наличие соотвтествующего каталога командой:
ls /sys/firmware/efi/efivars/
Где видим по выводу, что такой каталог есть и он не пустой, а это в свою очередь означает, что мы загружены в режиме
UEFI.
Всё отлично, но единственное НО!
Шрифт слишком мелковат и плохо читаем...
Давайте исправим сей казус и для этого сначала
очищаем консоль от всего текста командой:
clear
А ещё лучше, проще и быстрее сочетанием
клавиш клавиатуры:
Ctrl+L
В результате чего строка приглашения для ввода у нас успешно перемещается в самый верх и теперь мы вводим следующую команду и жмём на
Enter:
setfont ter-132n
Вот теперь другое дело!
Мы получили
увеличенный размер шрифта консоли, что комфортно читаемо, удобно и радует глаз:
Продолжаем наши
приятные "мытарства" по
Установке Arch Linux и следующим шагом синхронизируем системные часы с временным сервером
ntp в
автоматическом режиме (подразумевается, что
время|
временной пояс установится автоматически, что не всегда точно, увы) командой:
timedatectl set-ntp true
или делаем это в
принудительном режиме (я предпочитаю именно такой), с указанием конкретной временной зоны командой (в данном случае это
Европа/
Москва):
(не забывайте пользоваться клавишей
Tab |
↹, что существенно облегчит для вас ввод и прописку команд и названий пакетов автоподставкой из
названий|
имён)
timedatectl set-timezone Europe/Moscow
Проверить текущие, установленные
время и
дату можно командой:
date
Теперь проверяем на присутствие, ёмкость и общую информацию наш(и)
носитель(и)|
диск(и), куда мы с вами собрались устанавливать систему.
В данном случае система будет устанавливаться в
Виртульную Машину и соответственно
носитель|
диск здесь будет
один с предварительно задуманным размером в
30 Гб (в вашем случае реальный размер жёсткого диска для
Установки может быть другим, как в меньшую, так и большую по размерам сторону).
Вводим следующую команду, жмём на
Enter:
fdisk -l
И в выводе видим, что здесь имя нашего диска:
vda
Такое имя присваивается обычно
виртуальным дискам, а в данном случае, как раз
Установка происходит в
ВМ.
Реальным же физическим, жёстким дискам обычно присваиваются имена в формате:
sdX
где вместо
X у вас всегда будет латынская буква от
a и далее по алфавиту, в зависимости от кол-ва
носителей|
дисков в вашем компьютере.
Например:
-
sda
-
sdb
-
sdc
-
sdd
и т.д...
Здесь, конкретно, данные вывода по нашему виртуальному диску:
Disk /dev/vda: 30 GiB, 32212254720 bytes, 62914560 sectors
У вас такой вывод может выглядеть для реального физического, жёсткого диска например таким:
Disk /dev/sdb: 500 GiB, XXXXXXXXXX bytes, XXXXXXXX sectors
поэтому будьте внимательны, читая вывод данных по
носителям|
дискам, т.к. в последствии эти данные вам пригодятся в процессе
Установки.
Есть ещё одна команда, которая выводит данные по
носителям|
дискам, но только более сокращённые и можно воспользоваться и ей:
lsblk
Теперь, когда мы, согласно вывода данных о наших
носителях|
дисках, имеем название и размер нашего диска, настало время
разметить его на
разделы для устанавливаемой системы и для этого мы воспользуемся утилитой
fdisk (мы уже выше использовали её для вывода данных о наших
носителях|
дисках, но вы можете использовать и др. утилиты).
Мы с вами будем создавать
3 (
три) раздела:
- раздел
№1:
EFI-раздел,
FAT32, размер
300 Мб
- раздел
№2:
Корневой раздел /,
EXT4, размер
15 Гб
- раздел
№3:
Домашний раздел /home,
EXT4,
всё оставшееся место
Имея название нашего диска вводим следующую команду и жмём на
Enter:
fdisk /dev/vda
В октрывшемся меню утилиты, в самом низу мы видим строку-приглашение:
Comand (m for help:)
которая переводится - для вывода
помощи по командам утилиты можно ввести букву
m
и нажать на
Enter
что мы с вами и делаем и видим список команд и их описание:
Здесь можно также посмотреть сведедния о нашем диске введя
p
и нажав на
Enter:
(аналог команды
fdisk -l)
Сразу обращаем внимание на строку:
Disklabel type:
а именно на её значение:
dos
что говорит нам, что в данный момент используется таблица разделов
MBR.
Но, т.к. мы с вами устанавливаем систему в
UEFI-режиме, то для этого нам нужна таблица разделов
GPT, и, следовательно, мы её создаём введя
g
и нажав на
Enter
сразу видим, что на нашем диске успешно создана таблица разделов
GPT:
После создания таблицы разделов
GPT приступаем к
созданию резделов и для этого вводим
n
и жмём на
Enter
и обращаем внимание на вывод
-
Partition number (1-128, default 1):
предлагающий нам выбрать
номер раздела от 1 до 128 и указывает нам
авто-выбором раздел по
умолчанию № 1, а его мы и собираемся создавать, а значит, что нам не нужно прописывать его номер (здесь имеется в виду
1), а просто жмём ещё раз на
Enter:
Далее следует информационный вывод о
первом секторе раздела и его
дефолтном значении, где также просто жмём на
Enter:
-
First sector (2048-62914526, default 2048):
(напоминаю, что в вашем случает эти значения будут другими)
И, т.к. мы устанавливаем систему в режиме
UEFI, нам нужен соответствующий
EFI-каталог|раздел для дальнейшей успешной загрузки установленной системы, ибо, если его не создать, то установленная система просто не загрузится, выдав нам сообщение о отсутствии разделов и пр...
Поэтому в следующем выводе
разметчика о
последнем секторе и способах убавить/добавить сектора или размер создаваемого раздела к этой строке:
-
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-62914526, default 62912511):
дописываем
+300M (этого вполне достаточно для
EFI-раздела)
чтобы строка выглядела так:
-
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-62914526, default 62912511):+300M
жмём на
Enter
и видим вывод, что
новый раздел под
№1 с типом файловой системы
'Linux filesystem' и размером
300 MiB успешно нами создан:
(обратите внимание на тип ФС
'Linux filesystem' созданного раздела.
EFI-раздел должен иметь тип ФС
'EFI System' в формате
FAT32 и мы обязательно после создания всех разделов поменяем тип ФС и отформатируем в этот формат)
Далее, создаём
корневой раздел для системы -
/ и снова вводим
n
и жмём
Enter
и снова по аналогии с пердыдущим созданием
EFI-раздела видим вывод
-
Partition number (2-128, default 2):
но уже предлагающий нам выбрать
номер раздела от 2 до 128 и указывает нам умным
авто-выбором раздел по
умолчанию № 2, а его мы и создаём сейчас, а значит, что нам не нужно прописывать его номер (здесь имеется в виду
2), а просто снова жмём на
Enter:
Далее снова следует информационный вывод о
первом секторе раздела и его
дефолтном значении, где также просто жмём на
Enter:
-
First sector (616448-62914526, default 616448):
(напоминаю, что в вашем случает эти значения будут другими)
В следующем выводе
разметчика о
последнем секторе и способах убавить/добавить сектора или размер создаваемого раздела к этой строке:
-
Last sector, +/-sectors or +/-size{K,M,G,T,P} (616448-62914526, default 62912511):
дописываем
+15G (такой размер корневого раздела выбрал я, но вы можете выбрать другой размер)
чтобы строка выглядела так:
-
Last sector, +/-sectors or +/-size{K,M,G,T,P} (616448-62914526, default 62912511):+15G
жмём на
Enter
и видим вывод, что
новый раздел под
№2 с типом файловой системы
'Linux filesystem' и размером
15 GiB успешно нами создан:
Ну и создаём последний раздел
/home -
Домашний и также вводим
n
и жмём на
Enter
и снова видим вывод
-
Partition number (3-128, default 3):
но уже предлагающий нам выбрать
номер раздела от 3 до 128 и указывает нам умным
авто-выбором раздел по
умолчанию № 3, а его мы и создаём сейчас, а значит, что нам опять не нужно прописывать его номер (здесь имеется в виду
3), а просто снова жмём на
Enter:
Снова следует информационный вывод о
первом секторе раздела и его
дефолтном значении, где также просто жмём на
Enter:
-
First sector (32073728-62914526, default 32073728):
(напоминаю, что в вашем случает эти значения будут другими)
И в следующем выводе
разметчика о
последнем секторе и способах убавить/добавить сектора или размер создаваемого раздела:
-
Last sector, +/-sectors or +/-size{K,M,G,T,P} (32073728-62914526, default 62912511):
ничего не прописываем, т.к. мы выбираем всё оставшееся место на
носителе|
диске и просто жмём на
Enter
и видим вывод, что
новый раздел под
№3 с типом файловой системы
'Linux filesystem' и оставшимся размером
14.7 GiB успешно нами создан:
Теперь, как я пояснял чуть ранее на этапе создания
EFI-раздела, нам надо преобразовать его тип ФС из
'Linux filesystem' в
'EFI System' и для этого, согласно вывода
помощи по командам, вводим
t
и жмём на
Enter
и видим вывод
-
Partition number (1-3, default 3):
предлагающий нам выбрать
номер раздела от 1 до 3 и указывает нам умным
авто-выбором раздел по
умолчанию № 3:
Но нам надо преобразовать раздел
№1 и поэтому вписываем его номер
1
и жмём на
Enter
и видим вывод, предлагающий нам ввести тип или обозначение (
алиас) раздела (или напечатать заглавную
L (можно и строчную
l), чтобы вывести весь список типов и обозначений разделов):
Ну и, давайте для ознакомления посмотрим список типов и обозначений разделов введя
l - (здесь строчная, но можно и заглавную
L, разницы нет)
и жмём на
Enter:
Выпадает список типов и обозначений разделов, где сразу же
первым номером 1 (
№1) мы видим нужный нам тип и обзначение
EFI-раздела. Запоминаем его (думаю вам запомнить цифру
1 не составит труда...):
Теперь нажатием на
Пробел
или
Enter
пролистываем весь список, чтобы ознакомится на будущее со всеми типами и обозначениями (
алиасами) разделов и обращаем внимание, что раздел
Обозначения (
Aliases|
Алиасы) в самом конце списка:
Выходим из списка вводом или:
q и жмём на
Enter либо:
:q и жмём на
Enter
после чего происходит возврат к предложению ввести тип или обозначение (
алиас) раздела:
А ранее, из вывода списка типов и обозначений разделов мы с вами запомнили
первый из списка номер
1 EFI System
а именно в этот тип нам и надо преобразовать
1-й, созданный нами раздел, а значит мы вводим здесь
1
жмём на
Enter
и видим вывод, что тип раздела изменился с
Linux filesystem
на
EFI System
что нам и было нужно:
И, т.к. мы в принципе
выполнили все задачи по
разметке диска на разделы,
преобразовали первый раздел в нужный нам тип, то всё, что нам остаётся сделать - это
сохранить|
записать все сделанные нами изменения и для этого вводим
w - (значит
write down|
записать)
жмём на
Enter
и видим вывод, что все изменения в таблице разделов
сделаны и
сохранены и видим, что после сохранения изменений осуществлён автоматический выход из разметчика в
Консольный режим Установщика Arch Linux:
И, чтобы посмотреть, а что же мы собственно с вами "натворили" с диском вводим
lsblk
жмём на
Enter
и видим таблицу того, что мы с вами наколдовали:
Теперь настало время
отформатировать созданные нами разделы.
Форматируем первый
EFI-раздел в
FAT32 командой:
mkfs.fat -F32 /dev/vda1
Форматируем второй
Корневой раздел в
EXT4 командой:
mkfs.ext4 /dev/vda2
Форматируем третий
Домашний раздел в
EXT4 командой:
mkfs.ext4 /dev/vda3
Проверяем, что мы с вами
наформатировали командой:
fdisk -l
А
наформатировали мы с вами всё, как положено, о чём нам и говорит вывод команды:
Следующим этапом
Установки будет монтирование разделов для установки системы в каталог
/mnt
И
первым в каталог
/mnt мы монтируем созданный нами
Корневой раздел vda2 (полный путь
/dev/vda2) командой:
(напоминаю, что у вас
обозначение разделов будут отличаться на физическом
диске|
ностиеле. Например
/dev/sdc2. Просто внимательно смотрите вывод предыдущей команды)
mount /dev/vda2 /mnt/
Далее нам нужно создать в каталоге
/mnt каталоги для созданных нами разделов
EFI и
Домашний (
/home) и делаем мы это командой:
mkdir -p /mnt/{boot/efi,home}
Дополнительно хочу пояснить более подробно, что мы конкретно создали в каталоге
/mnt, а именно мы создали каталоги:
-
boot, а в нём ещё и каталог
efi (полный путь будет
/mnt/boot/efi)
и
-
home (полный путь будет
/mnt/home)
И теперь, если мы выполним команду, дающую возможность заглянуть в каталог
/mnt:
ls /mnt
то увидим вывод, что каталоги
boot и
home созданы и присутствуют:
И для убедительности проверяем ещё и создался ли каталог
efi в
boot командой:
ls /mnt/boot
и видим, что каталог
efi в каталоге
boot также создан и присутствует:
А теперь
монтируем в созданные каталоги по очереди созданные нами
разделы.
Монтируем
EFI-раздел в
/mnt/boot/efi:
mount /dev/vda1 /mnt/boot/efi
Теперь монтируем
Домашний раздел в
/mnt/home:
mount /dev/vda3 /mnt/home
И сразу проверяем, всё ли правильно мы сделали командой:
lsblk
и видим вывод, что всё успешно смонтировалось туда, куда и нужно:
Теперь нам необходимо подключить дополнительный репозиторий
multilib, чтобы иметь возможность установить все нужные нам пакеты и для этого воспользуемся интегрированным в
Установщик редактором
nano, отредактировав файл
pacman.conf в каталоге
/etc командой:
nano /etc/pacman.conf
Перед нам откроется содержимое этого файла:
Пролистываем содержимое файла на клавиатуре стрелкой
Вниз ⬇|▼ в самый низ, чтобы перед нами появился блок из
2-х строк:
#[multilib]
#Include = /etc/pacman.d/mirrorlist
И
раскомментируем обе строки, убрав перед каждой знак
#, приведя этот блок к виду:
[multilib]
Include = /etc/pacman.d/mirrorlist
Теперь
сохраняем сделанные нами изменения в файле, выполнив поочерёдно на клавиатуре следующие комбинации сочетаний клавиш:
Ctrl+O (латынская буква
О)
Enter
и выходим из редактора
nano:
Ctrl+X
Очищаем консоль командой:
Ctrl+L
И обновляем сведения о репозиториях командой:
pacman -Sy
А теперь
Устанавливаем базовую систему и некоторый набор
обязательных программ командой:
pacstrap -i /mnt base base-devel bash-completion linux linux-firmware linux-headers linux-lts linux-lts-headers nano sudo vim
Это займёт какое-то время, пока скачаются и установятся все пакеты (у всех по разному. Зависит от скорости Интернета и параметров вашего компьютера).
Просто дождитесь
окончания Установки, пока не появится
строка-
приглашение к вводу, как на скрине, что означает, что
Установка прошла успешно:
Снова очищаем экран командой:
Ctrl+L
Следующим этапом
Установки будет
генерация|
создание файла
fstab в
/mnt/etc (полный путь
/mnt/etc/fstab) и делаем мы это командой:
genfstab -U -p /mnt >> /mnt/etc/fstab
После успешной генерации файла
fstab переходим к
Настройке системы с помощью
chroot — операция изменения корневого каталога в
Unix-подобных операционных системах, выполнив команду входа:
arch-chroot /mnt /bin/bash
Настраиваем
временную зону командой (здесь временная зона
Москвы, но вы можете прописать свою):
(не забывайте пользоваться клавишей
Tab |
↹, что существенно облегчит для вас ввод и прописку команд и названий пакетов автоподставкой из
названий|
имён, т.к. при установке базовой системы мы установили, отвечающий за это пакет
bash-completion! Написав первые буквы команды или названия пакета и нажав на
Tab |
↹, как правило просиходит автоподставка команды или названия пакета)
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
Задаём
текущее время на основании выбранной временной зоны командой:
hwclock --systohc --utc
Можно проверить
текущие время и дату командой:
date
Задаём имя хоста командой созданием файла hostname в
/etc (полный путь
/etc/hostname):
(где
test - это имя хоста, но у вас видимо будет другое, ваше)
echo test > /etc/hostname
Записываем в файл
hosts в
/etc (полный путь
/etc/hosts) сведения о локальном хосте и имя хоста:
(где
test - это имя хоста, но у вас видимо будет другое, ваше)
echo -e '\n127.0.0.1 localhost\n::1 localhost\n127.0.1.1 test.localdomain test' >> /etc/hosts
Можно проверить, как всё записалось командой:
cat /etc/hosts
Теперь
настроим файл локали
locale.gen (выбор применяемых языков для системы по умолчанию) в
/etc (полный путь
/etc/locale.gen) и снова воспользуемся редактором nano, выполнив команду:
nano /etc/locale.gen
В результате чего открывается файл:
Наша задача
раскомментировать нужные нам
локали (здесь я выбираю
русскую и
английскую США. Вы же можете выбрать любую другую), тем самым активировав их и для этого воспользуемся
горячими клавишами управления редактором
nano, а именно
Поиском по содержимому файла:
Ctrl+W
В результате откроется строка ввода
Поиска, куда вписываем:
en_US.UTF-8
Жмём на
Enter и
Поиск нас перемещает к нужной строке:
Раскомментируем строку, убрав знак
# перед ней, приведя строку к такому виду:
Снова, воспользовавшись
Поиском по содержимому файла, жмём на:
Ctrl+W
и в строке ввода
Поиска вписываем:
ru_RU.UTF-8
Жмём на
Enter и
Поиск снова перемещает нас к нужной строке:
И также
раскомментируем строку, убрав знак
# перед ней, приведя строку к такому виду:
Сохраняем сделанные нами изменения в файле, выполнив поочерёдно на клавиатуре следующие комбинации сочетаний клавиш:
Ctrl+O (латынская буква
О)
Enter
и выходим из редактора
nano:
Ctrl+X
Очищаем консоль командой:
Ctrl+L
И генерируем локали командой:
locale-gen
и, если мы сделли всё правильно, мы видим такой вывод об успешной гереации локалей:
Далее создаём файл
locale.conf в
/etc (полный путь
/etc/locale.conf) с настройкой предпочтительного языка системы (здесь будет
русский) командой:
echo LANG=ru_RU.UTF-8 > /etc/locale.conf
Также создаём ещё один конфигурациооный файл
vconsole.conf в
/etc (полный путь
/etc/vconsole.conf) с дополнительными языковыми настройками командой:
echo -e 'KEYMAP=ru\nFONT=cyr-sun16' | tee -a /etc/vconsole.conf > /dev/null
Теперь давайте создадим пароль для
root и сделаем мы это командой:
passwd
Вывод нам предлагает ввести
новый пароль:
(
New password:)
Вводим его, жмём на
Enter и видим приглашение ввести его ещё раз:
Повторно вводим его, жмём на
Enter и видим сообщение, что
пароль успешно создан|
обновлён:
(
passwd: password updated successfully)
Доустанавливаем некоторые пакеты, в частности обязательные для установки системы, такие, как системный загрузчик
grub, управление сетями
Network Manager,
X-сервер и др. сопутствующие пакеты:
- если у вас на борту видео
nVidia и камень
Intel:
pacman -S dosfstools efibootmgr git grub intel-ucode mtools networkmanager ntfs-3g nvidia nvidia-settings nvidia-utils opencl-nvidia os-prober xorg xorg-server xorg-server-devel xorg-xinit
- если у вас на борту
AMD:
pacman -S dosfstools efibootmgr git grub lib32-mesa-vdpau mesa mesa-vdpau mtools networkmanager ntfs-3g os-prober xorg xorg-server xorg-server-devel xorg-xinit
Установка займёт какое-то время, поэтому ждём
окончания Установки, пока не появится
строка-
приглашение к вводу, после чего очищаем экран командой:
Ctrl+L
Теперь делаем для
Network Manager автозапуск при старте системы, чтобы в последствии при
перезагрузке|
загрузке системы он
стартовал автоматически и у нас всегда будет конект с
Интернетом, командой и если она отрабатывает корректно, мы видим такой вывод:
systemctl enable NetworkManager
Далее нам нужно раскомментировать в файле
grub в
/etc/default (полный путь
/etc/default/grub) строку:
#GRUB_DIABLE_OS_PROBER=false
чтобы работал установленный нами пакет
os-prober, отвечающий за обнаружение других установленных на компьютер систем и добавление их в
GRUB MENU, чтобы можно было выбрать при старте нужную в данный момент
ОСь и для этого октрываем в редакторе
nano этот файл командой:
nano /etc/default/grub
Пролистываем содержимое файла на клавиатуре стрелкой
Вниз ⬇|▼ в самый низ, чтобы перед нами появилась строка:
#GRUB_DIABLE_OS_PROBER=false
Раскомментируем её, убрав первый знак
#, приведя её к виду:
GRUB_DIABLE_OS_PROBER=false
Теперь
сохраняем сделанные нами изменения в файле, выполнив поочерёдно на клавиатуре следующие комбинации сочетаний клавиш:
Ctrl+O (латынская буква
О)
Enter
и выходим из редактора
nano:
Ctrl+X
Очищаем консоль командой:
Ctrl+L
Устанавливаем системный загрузчик
GRUB для
UEFI командой:
grub-install --target=x86_64-efi --bootloader-id=archlinux --recheck
и, если всё прошло штатно, видим вывод, что системный загрузчик
GRUB успешно установлен без каких-либо ошибок:
Создаём|
генерируем конфигурационный файл
grub.cfg в
/boot/grub (полный путь
/boot/grub/grub.cfg) командой:
grub-mkconfig -o /boot/grub/grub.cfg
и в результате выполнения этой команды получаем вот такой вывод, поэтапно сообщающий нам о
создании загрузочного меню:
Теперь выходим из
chroot:
exit
Отмонтируем примонтированные нами разделы в
/mnt командой:
umount -R /mnt
И
перезагружаем Установленную систему командой:
reboot
После
Перезагрузки мы с вами попадаем в
GRUB-
Меню свежеустановленной нами абсолютно голой, без каких-либо
Оконных Менеджеров (
ОМ),
Сред рабочего стола (
СРС) и
Дисплейных Менеджреов (
ДМ) -
Операционной Системы (ОС) Arch Linux, где сразу по умолчанию виделен первый пункт
Меню:
*Arch Linux
и чтобы
продолжить загрузку системы просто жмём на
Enter:
После чего получаем предложение ввести
Логин Пользователя хоста, в сессию которого мы хотим подключится:
На данном этапе мы можем войти только в сессию
Пользователя root, т.к. другого у нас пока просто нет, а посему нам нужно ещё сделать кое-какие настроки системы и поэтому пишем:
root
и жмём на
Enter, в выпавшем предложении
ввести Пароль (
Password:) пишем созданный нами ранее
пароль Суперпользователя и снова жмём на
Enter:
Результатом чего будет осуществлён вход в сессию
Суперпользователя root:
Далее нам нужо ещё раз (рекомендуется)
регенерировать конфигурационный файл
grub.cfg в
/boot/grub (полный путь
/boot/grub/grub.cfg) и поэтому мы делаем это ещё раз командой:
grub-mkconfig -o /boot/grub/grub.cfg
в результате получаем вывод, поэтапно сообщающий нам о
Генерации загрузочного меню, но заметьте, уже на русском языке:
Теперь наступил важный момент, а именно, нам нажуно создать
SWAP-Файл (не раздел, а именно
файл!), а для чего, я думаю, все не раз слышали о
SWAP и для чего он нужен.
Расписывать тут цельный
Wiki на эту тему не вижу особой нужды, а если кому-то интересно, легко можно на
Гуглить или на
Яндексить по этой теме...
Поэтому просто приступаем к его
соазданию.
Как
Правило, размер
SWAP-Файла утсанавливают
равным размеру ОЗУ, а т.к. в данном конкретном случае размер
ОЗУ ВМ
2 Гб, то и размер файла будем делать такого же размера.
Пишем команду и жмём на
Enter тем самым создавая обычный файл:
fallocate -l 2G /swapfile
Далее даём
Права на чтение и запись созданного файла командой:
chmod 600 /swapfile
Теперь
Форматируем (
создаём) сам
SWAP-Файл на основе созданного нами файла командой:
mkswap /swapfile
Чтобы файл заработал подключаем
SWAP-Файл командой:
swapon /swapfile
Ну и последний штрих - добавляем
SWAP-Файл в файл
fstab в
/mnt/etc (полный путь
/mnt/etc/fstab) командой:
echo '/swapfile none swap sw 0 0' >> /etc/fstab
Далее, т.к. мы будем рассматривать
два варианта загрузки выбранных нами в дальнейшем
Оконных Менеджеров,
Окружений рабочего стола:
- с помощью
xinit (
X11) без
ДМ
- с помощью
Дисплейного менеджера (
ДМ)
для
первого нам, т.к. для него мы будем настраивать
автологин без ДМ, к сущесвующим по умолчанию
группам окружения, надо добавить ещё одну -
autologin, что мы и делаем командой:
(для
второго -
ДМ создавать эту группу не надо)
groupadd -r autologin
И теперь создаём нового своего
Пользователя и окружение для него командой:
(здесь будет создан
Пользователь test. Вы же создаёте своего)
useradd -m -U -G audio,autologin,floppy,optical,scanner,storage,video,wheel -s /bin/bash test
Если вы будете использовать
ДМ, то эта команда будет такой:
useradd -m -U -G audio,floppy,optical,scanner,storage,video,wheel -s /bin/bash test
Теперь создаём
Пароль для
Пользователя test этой командой, жмём на
Enter, вводим придуманный
Пароль и ещё раз жмём на
Enter:
passwd test
На предложение ещё раз
повторить ввод пароля,
вводим его, жмём на
Enter и получаем вывод, что
Пароль успешно обновлён|
создан:
После создания
Пользователя, для комфортной его работы в дальнейшем и работы всей системы, нам нужно наделить его
правами Суперпользователя, отредактировав файл
sudoers в
/etc/ (полный путь
/etc/sudoers) и делаем мы это командой:
EDITOR=nano visudo
Открывается этот файл в редакторе
nano:
В нём находим строку:
root ALL=(ALL:ALL) ALL
Устанавливаем курсор в её конец и жмём на
Enter, чтобы перевести каретку на
новую строку:
И вписываем следующий текст:
(где вместо
test впишите имя
вашего Пользователя)
test ALL=(ALL:ALL) ALL
А следующую строку:
# %wheel ALL=(ALL:ALL) ALL
расскомментируем (убираем знак
#), приведя её к виду:
%wheel ALL=(ALL:ALL) ALL
чтобы в результате файл принял такой вид:
Сохраняем сделанные нами изменения в файле, выполнив поочерёдно на клавиатуре следующие комбинации сочетаний клавиш:
Ctrl+O (латынская буква
О)
Enter
и выходим из редактора
nano:
Ctrl+X
Очищаем консоль командой:
Ctrl+L
Если в дальнейшем вы планируете пользоваться например
Оконным Менеджером (
ОМ)
Openbox, то надо сразу позаботится о способе
переключения раскладки клавиатуры.
Для этого нам надо создать конфигурационный файл
01-keyboard-layout.conf в
/etc/X11/xorg.conf.d/ (полный путь
/etc/X11/xorg.conf.d/01-keyboard-layout.conf) такого вида:
(если вы собираетесь пользовать например
GNOME, или
KDE Plasma, или
XFCE, или др.
ОМ,
СРС, то способ переключения раскладки можно будет настроить непосредственно уже в их рабочих средах, хотя и этот способ будет работать после их установки)
Section "InputClass"
Identifier "keyboard-layout"
Driver "evdev"
MatchIsKeyboard "yes"
Option "XkbLayout" "us, ru"
Option "XkbVariant" ","
Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
EndSection
в котором мы прописываем
способ переключения раскладки комбинацией сочетания клавиш:
Ctrl+Shift
плюс заодно работу индикатора раскладки - лампочку
scroll на клавиатурах и делаем мы всё это командой:
echo -e 'Section "InputClass"\n Identifier "keyboard-layout"\n Driver "evdev"\n MatchIsKeyboard "yes"\n Option "XkbLayout" "us, ru"\n Option "XkbVariant" ","\n Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"\nEndSection' | tee /etc/X11/xorg.conf.d/01-keyboard-layout.conf > /dev/null
Ну и можно проверить, всё ли правильно записалось в файл командой:
cat /etc/X11/xorg.conf.d/01-keyboard-layout.conf
Теперь, когда все приготовления в принципе сделаны, можно выходить из сессии
root командой:
exit
После чего снова видим
приглашение ввести
имя|
логин Пользователя в сессию которого мы собираемся войти:
А войти нам надо в сессию
созданного нами
Пользователя, поэтому мы вводим его
имя|
логин, жмём на
Enter, вводим
Пароль Пользователя и снова жмём на
Enter, после чего происходит вход в
сессию Пользователя о чём и говорит строка приглашение к вводу:
(здесь
Пользователь test. У вас будет
имя|
логин созданного вами
Пользователя)
В принципе последним действием мы с вами
успешно завершили Установку и первичную
настройку голой
ОС Arch Linux и теперь вы можете приступать к установке любого, любимого вами
ДМ|
ОМ|
СРС.
После входа в
сессию Пользователя первое, что необходимо сделать для дальнейшего успешного входа в установленный в будущем вами
ОМ|
СРС, если вы собираетесь осуществлять вход по первому способу:
- с помощью
xinit (
X11) без
ДМ
скопировать файл
.xinitrc из
/etc/X11/xinit/ (полный путь
/etc/X11/xinit/xinitrc) в
Домашний каталог командой:
(
шелл-скрипт передаваемый
xinit посредством команды
startx)
cp /etc/X11/xinit/xinitrc .xinitrc
Без этого файла
Иксы просто не запустятся...
Содержимое файла можно посмотреть командой:
cat .xinitrc
А выглядит файл так:
#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f "$userresources" ]; then
xrdb -merge "$userresources"
fi
if [ -f "$usermodmap" ]; then
xmodmap "$usermodmap"
fi
# start some nice programs
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
[ -x "$f" ] & & . "$f"
done
unset f
fi
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login
Теперь нам обязательно надо
закомментировать последнюю строку, ибо она будет запускать терминал
Xterm, а нам этого не нужно и делаем мы это командой:
sed -i '/exec xterm/s/^/#\ /' .xinitrc
Проверяем успешно ли закомментировалась последняя строка командой:
cat .xinitrc
и видим вывод, что строка успешно
закомментирована:
#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f "$userresources" ]; then
xrdb -merge "$userresources"
fi
if [ -f "$usermodmap" ]; then
xmodmap "$usermodmap"
fi
# start some nice programs
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
[ -x "$f" ] & & . "$f"
done
unset f
fi
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
# exec xterm -geometry 80x66+0+0 -name login
И теперь
добавляем в конец файла следующий блок, модифицируя который в последствии, а именно
комментируя или
раскомментируя ту или иную строку запуска того или иного
ОМ|
СРС, мы всегда можем активировать запуск нужного:
# Window Manager of your choice
# exec gnome-session
# exec startkde
# exec startplasma-x11
# exec startxfce4
# exec awesome
# exec openbox-session
командой:
(
Хочу сразу предупредить!!!, что данная команда добавляет блок в конец файла и сделать это можно
только один первый раз! Т.е. вы ниже выбираете тот вариант
ОМ|
СРС, который вы собираетесь потом устанавливать. В последсвии, если вы захотите исользовать другой
ОМ|
СРС, вам нужно будет редактировать этот файл вручную, любым редактром, например
nano)
- уже раскомментировано для
GNOME
echo -e '\n# Window Manager of your choice\nexec gnome-session\n# exec startkde\n# exec startplasma-x11\n# exec startxfce4\n# exec awesome\n# exec openbox-session' >> .xinitrc
- уже раскомментировано для
KDE
echo -e '\n# Window Manager of your choice\n# exec gnome-session\nexec startkde\n# exec startplasma-x11\n# exec startxfce4\n# exec awesome\n# exec openbox-session' >> .xinitrc
- уже раскомментировано для
KDE Plasma
echo -e '\n# Window Manager of your choice\n# exec gnome-session\n# exec startkde\nexec startplasma-x11\n# exec startxfce4\n# exec awesome\n# exec openbox-session' >> .xinitrc
- уже раскомментировано для
XFCE4
echo -e '\n# Window Manager of your choice\n# exec gnome-session\n# exec startkde\n# exec startplasma-x11\nexec startxfce4\n# exec awesome\n# exec openbox-session' >> .xinitrc
- уже раскомментировано для
Awesome
echo -e '\n# Window Manager of your choice\n# exec gnome-session\n# exec startkde\n# exec startplasma-x11\n# exec startxfce4\nexec awesome\n# exec openbox-session' >> .xinitrc
- уже раскомментировано для
Openbox
echo -e '\n# Window Manager of your choice\n# exec gnome-session\n# exec startkde\n# exec startplasma-x11\n# exec startxfce4\n# exec awesome\nexec openbox-session' >> .xinitrc
И если мы проверим содержимое файла, например, если мы добавляли этот блок с
раскомментированной строкой запуска
KDE Plasma командой:
cat .xinitrc
То увидим вывод с нужной раскомментированной строкой:
#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f "$userresources" ]; then
xrdb -merge "$userresources"
fi
if [ -f "$usermodmap" ]; then
xmodmap "$usermodmap"
fi
# start some nice programs
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
[ -x "$f" ] & & . "$f"
done
unset f
fi
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
# exec xterm -geometry 80x66+0+0 -name login
# Window Manager of your choice
# exec gnome-session
# exec startkde
exec startplasma-x11
# exec startxfce4
# exec awesome
# exec openbox-session
Ну и, чтобы наглядно посмотреть
Arch Linux с каким-либо из выбранных вами
ДМ|
ОМ|
СРС, для примера мы с вами установим например
СРС KDE Plasma (вы же можете установить то, что вам более по душе).
Но сначала давайте выполним обязательное действие по
обновлению системы и для этого используем следующую команду:
sudo pacman -Syu
А после обновления уже устанавливаем
СРС KDE Plasma введя команду и нажав на
Enter:
sudo pacman -S kde-applications plasma
На предложение ввести пароль
Пользователя, вводим его и жмём на
Enter:
После чего запускается процесс
Выбора зеркал хранилищь файлов и на каждое предложение
Выбрать вариант и в конце вопрос
Приступить к установке?, ничего не выдумывая, просто жмём каждый раз на
Enter:
После чего начинается
Установка KDE Plasma и после небольшого ожидания
успешно завершается:
После завершения
Установки очищаем экран командой:
Ctrl+L
И пробуем проверить
запуск|
старт установленной нами
KDE Plasma командой:
startx
и с чувством удовлетворения видим, что
KDE Plasma успешно
запустилась|
загрузилась:
Обращаем внимание на нижний правый угол следующих
2-х скринов, где отображена
текущая раскладка клавиатуры, а именно:
- на
1-м (
первом)
us
- на
2-м (
втором)
ru
что значит, что созданный ранее кофиг переключения раскладки отлично работает!
Проверив
запуск|
старт KDE Plasma и убедившись, что она успешно стартует,
выходим из её
сессии, выполнив следующие действия, чтобы произошёл возврат в
консольный режим:
Очищаем консоль командой:
Ctrl+L
И далее доделываем
автоматический запуск Иксов в нужной
виртуальной консоли после залогинивания нашего
Пользователя и для этого нам понадобится файл
.bash_profile в
Домашнем каталоге.
По умолчанию он имеет такой вид:
#
# ~/.bash_profile
#
[[ -f ~/.bashrc ]] && . ~/.bashrc
Добавляем в конец файла строку вида:
[[ -z $DISPLAY && $XDG_VTNR -eq NomerVirtConsole ]] && exec startx
где переменную
NomerVirtConsole меняем на номер нужной
виртуальной консоли (обычно это
1 или
3. Здесь мы впишем
1)
командой:
echo -e '\n[[ -z $DISPLAY&& $XDG_VTNR -eq 1 ]] && exec startx' >> .bash_profile
Проверяем правильность сделанных нами изменений в файле командой:
cat .bash_profile
и видим в выводе, что строка успешно добавлена:
#
# ~/.bash_profile
#
[[ -f ~/.bashrc ]] && . ~/.bashrc
[[ -z $DISPLAY&& $XDG_VTNR -eq 1 ]] && exec startx
И последняя "вишенка на торте"...
Последний шаг, заключающийся в том, чтобы посредством
Systemd сделать автологин нужного
Пользователя в нужную
виртуальную консоль, а дальше всё будет по цепочке тех шагов, которые описаны выше и для этого нам требуется создать нужный
Unit для
Systemd и для этого мы воспользуемся следующей командой:
sudo systemctl edit --force --full getty@tty1
или
sudo systemctl edit --force --full getty@tty1.service
в результате выполнения которой октроется
файл-
шаблон Юнита в редакторе
nano, который нам надо немного отредактировать:
Далее, стрелками
Вверх ⬆|▲ /
Вниз ⬇|▼,
Влево ⟵|◄ /
Вправо ⟶|► переводим
каретку|
курсор в конец строки, содержающую:
# the entered username.
И переводим
каретку|
курсор нажатием на клавишу
Enter на новую строку:
И здесь с новой строки
вписываем|
вводим следующее значение:
ExecStart=
а следующую за ней строку:
ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear - $TERM
изменяем до такого вида:
ExecStart=-/sbin/agetty --autologin test --noclear - $TERM
(тут можно использовать клавишу
Backspace ⟻. Она стирает текст, т.е. можно просто стереть не всю строку, а только ту часть текста, которая подлежит замене и вместо неё
вписать|
ввести нужный текст: вместо
-o '-p -- \\u' вписать|ввести
--autologin test, где в вашем случае вместо
test будет ваше имя
Пользователя)
Сохраняем сделанные нами изменения в файле, выполнив поочерёдно на клавиатуре следующие комбинации сочетаний клавиш:
Ctrl+O (латынская буква
О)
Enter
и выходим из редактора
nano:
Ctrl+X
И командой:
reboot
перезагружаем нашу систему и...
Профит!!!
Сразу же происходит
автологин нашей
Arch Linux в
СРС KDE Plasma, чего мы с вами и добивались!
И таким способом с помощью
xinit можно настроить
старт и
автологин любого
ОМ или
СРС.
А что касается
второго способа, с помощью
ДМ, то тут всё намного проще, достатчоно установить сам
ДМ, например
SDDM, и этого будет достаточно.
Установить его можно командой:
sudo pacman -S sddm
И для
KDE Plasma ещё рекомендуется установить пакет
sddm-kcm, который имеет
графический интерфейс для конфигурации
SDDM в
Параметрах СРС KDE Plasma командой:
sudo pacman -S sddm-kcm
После установки пакетов необходимо запустить демона сервиса
SDDM и делаем это поочерёдно следующими командами:
sudo systemctl daemon-reload
sudo systemctl enable sddm.sevice
sudo systemctl start sddm.servise
После чего происходит первый старт
ДМ SDDM:
Каждый раз при старте системы
SDDM будет появлятся на старте и всё, что вам нужно будет сделать, это выбрать
Пользователя (если у вас их будет несколько. Если всего один, то его имя будет отображаться по умолчанию), ввести
Пароль и осуществить
вход в сессию вашего
ОМ или
СРС, нажав на
Enter:
Также есть возможность настроить
автологин данного
ДМ отредактировав его конфигурационный файл
autologin.conf в
/etc/sddm.conf.d/ (полный путь
/etc/sddm.conf.d/autologin.conf), приведя его к такому виду:
(где вместо
test вписываете
логин|
имя своего
Пользователя)
[Autologin]
User=test
Session=plasma.desktop
Или в самих
ОМ или
СРС в
Настройках.
Ну и давайте я вам покажу на примере
KDE Plasma, как это делать.
Входите в неё и жмёте на кнопку
Параметры системы в нижнем левом углу:
В открывшемся окне
Параметров системы, в левой колонке жмёте на
Запуск и завершение:
В окне
Запуск и завершение в левой колонке выделяете самый верхний пункт
Вход в систему (SDDM) и жмёте на кнопку
Поведение...:
Откроется раздел
Поведение:
Где вешаем галочку на пункт
Автоматически входить в систему и в сразу же открывшемся дополнительном окне жмёте на кнопку
Открыть параметры Бумажника KDE:
В открывшемся дополнительном окне
Управление бумажниками жмёте на кнопку
Сменить пароль...:
И в следующем дополнительном окне
Служба бумажника KDE ничего не вписываете, а просто жмёте на кнопку
ОК:
И в выпавшем предупредительном окне жмёте на кнопку
Да:
Закрываете окно
Управление бумажниками, нажав в его верхней панели управления на
крестик Х:
В окне
Поведение, в нижнем правом углу жмёте на кнопку
Применить:
И в выпавшем дополнительном окне
Требуется аутентификация -
Сохранение параметров диспетчера входа в систему SDDM в поле
Пароль: вводите ваш пароль
Пользователя и жмёте на кнопку
ОК:
А дальше закрываете окно
Параметры системы и теперь, при перезагрузке или старте системы у вас будет всегда
автологин (
автоматический вход).
На этом в принципе и всё...
А дальше?
А
дальше огромное колличество
возможностей оттюнинговать вашу
Arch Linux на ваши
вкус и
цвет, как говорится!
Для наглядного примера, так выглядит моя
Arch Linux с
ОМ Openbox:
Дерзайте и всё у вас получиться!
Статью ещё буду дополнять, т.к. надо ещё показать вам, как примонтировать при
Установке системы другие носители, если у вас в компьютере есть таковые и на них установлены другие
операционные системы.
Просто, скрининг и последующая редакция скринов и написание текста забирает уйму времени!
Поэтому прошу отнестись к перерывам в публикациях статей с пониманием.
Всем
Приятного Пользования!!!
P.S. Если у вас появились вопросы или мнения по данной статье, обсудить их можно на нашем форуме: