Открыть меню
Переключить меню настроек
Открыть персональное меню
Вы не представились системе
Ваш IP-адрес будет виден всем, если вы внесёте какие-либо изменения.

Установка Arch Linux: различия между версиями

Материал из Aprel Wiki
Дополнительные действия
Нет описания правки
Метки: с мобильного устройства из мобильной версии через расширенный мобильный режим
 
(не показано 67 промежуточных версий этого же участника)
Строка 1: Строка 1:
Здравствуйте, на связи [[Oleg Aprel]]!
Приветствую, товарищи!
Ну что, приступим же к ручной установке? Или воспользуемся [[archinstall]] (быстрее, легче, понятнее)?
Ну что, приступим же к ручной установке? Или воспользуемся [[archinstall]] (быстрее, легче, понятнее)?


Если в статье есть недостоверная информация, то обязательно посетите обсуждение: [[Обсуждение:Установка Arch Linux]]
Если в статье есть недостоверная информация, то обязательно посетите наш чат в Telegram и сообщите об этом: https://t.me/aprelkunchat, https://t.me/aprelteamchat или https://t.me/linuxchatik.
 
Помимо Telegram обо всём можно сообщить на форуме, в Discord и Matrix: https://forum.aprelteam.su/mur/ustanovka-i-nastrojka-arch-linux-2024/?id=163, https://discord.aprelteam.su, https://matrix.aprelteam.su.


== Загрузка образа ==
== Загрузка образа ==
Переходим на сайт и загружаем ISO-файл: https://archlinux.org/download.
Переходим на сайт и загружаем ISO-файл: https://archlinux.org/download.


Лучше всего использовать торрент > [[qBittorrent]].
Для загрузки лучше всего использовать торрент > [[qBittorrent]].


== Запись образа ==
== Запись образа ==
Записать образ с [[Windows]] проще всего используя [[Rufus]], если же у вас [[Linux]], то можно воспользоваться [[Etcher]], версия для [[Windows]] также есть.
Записать образ в [[Windows]] проще всего используя [[Rufus]], если же у вас [[Linux]], то можно воспользоваться [[Etcher]], версия для [[Windows]] также есть.


=== Rufus ===
=== Rufus ===
Скачайте программу с официального сайта и запустите > https://rufus.ie/ru.
Загрузите программу с официального сайта и запустите > https://rufus.ie/ru.
Укажите носитель, на который нужно записать образ. Если в компьютер вставлена одна флешка, то [[Rufus]] выберет её по умолчанию.
Укажите носитель, на который нужно записать образ. Если в компьютер вставлена одна флешка, то [[Rufus]] выберет её по умолчанию.
Выберите скачанный образ ISO. Скорее всего, он будет находиться в папке '''«‎Загрузки»'''. Другие параметры для продвинутых пользователей не трогайте: Rufus сам знает, что делать.
Выберите загруженный образ ISO. Скорее всего, он будет находиться в папке '''«‎Загрузки»'''. Другие параметры для продвинутых пользователей не трогайте: Rufus сам знает, что делать.
Нажмите на кнопку '''«‎Старт»'''. Если понадобится подтверждение, нажмите '''«‎Да»''' и OK. И ждите, пока Rufus не закончит работу.
Нажмите на кнопку '''«‎Старт»'''. Если понадобится подтверждение, нажмите '''«‎Да»''' и OK. И ждите, пока Rufus не закончит работу.


=== Etcher ===
=== Etcher ===
Скачайте программу с официального сайта и запустите > https://etcher.balena.io.
Загрузите программу с официального сайта и запустите > https://etcher.balena.io.
Нажмите '''Select image''' и укажите скачанный вами ISO.
Нажмите '''Select image''' и укажите скачанный вами ISO.
Щёлкните '''Select drive''' и выберите нужный носитель.
Щёлкните '''Select drive''' и выберите нужный носитель.
Строка 30: Строка 32:


== Проверка подключения ==
== Проверка подключения ==
Сперва вы увидите некоторые архивные журналы загрузки и системные проверки. Таким образом, в течение нескольких секунд, после проверки, Arch загрузит и введёт вас в корневую директорию. Здесь мы вставим команду '''«IP link»''', чтобы проверить доступность сетевых адаптеров.


Теперь вы увидите некоторые архивные журналы загрузки и системные проверки. Таким образом, в течение нескольких секунд, после проверки, Arch загрузит и введёт вас в корневую директорию. Здесь мы вставим команду «IP link», чтобы проверить доступность сетевых адаптеров.
<blockquote>ip link</blockquote>
 
'''ip link'''


Вы можете проверить свой вывод, что ваша команда работает отлично.
Вы можете проверить свой вывод, что ваша команда работает отлично.


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


Такой командой можно проверить своё соединение и увидеть время ответа сайта.
Такой командой можно проверить своё соединение и увидеть время ответа сайта.


<nowiki>ping archlinux.org</nowiki>
<blockquote>ping archlinux.org</blockquote>
 
Если вы используете Wi-Fi на своём ПК, то используйте команды (обычно имя wlan0, если у вас другое, то указываем своё):


Если вы используете Wi-Fi на своём ПК, то используйте команды:
<blockquote>iwctl


<ref>iwctl
device list
device list
station device scan
 
station device get-networks
station wlan0 scan
station device connect SSID</ref>
 
station wlan0 get-networks
 
station wlan0 connect SSID</blockquote>
 
Вводим пароль от сети Wi-Fi, всё готово.
 
SSID (имя вашей сети Wi-Fi - указываем в скобках, пример: '''"Xiaomi Mi WiFi6 Router AX9000"''').


После подключения:
После подключения:
<ref>ping archlinux.org</ref>
 
<blockquote>exit
<br>ping archlinux.org</blockquote>


Ctrl + C остановит задачу.
Ctrl + C остановит задачу.
Этап завершён.


== Разделы диска ==
== Разделы диска ==
Строка 62: Строка 75:
Команда для просмотра разделов:
Команда для просмотра разделов:


<ref>lsblk</ref>
<blockquote>lsblk</blockquote>


Если у вас несколько дисков, а вы хотите установить на какой-то конкретный, то можно посмотреть диски по размерам.
Если у вас несколько дисков, а вы хотите установить на какой-то конкретный, то можно посмотреть диски по размерам.


<ref>fdisk -l</ref>
<blockquote>fdisk -l</blockquote>
 
=== Разметка диска ===


Время размечать наш диск. Используем команду cfdisk для этого и выбираем gpt формат :
Время размечать наш диск. Используем команду cfdisk для этого и выбираем gpt формат :


<ref>cfdisk /dev/sda</ref>
<blockquote>cfdisk /dev/sda</blockquote>


Bажно! если во время использования команды lsblk и fdisk вы увидели что sda является не тем диском, что нужен вам, то вы дописываете в конец название другого диска, например sdb.
Bажно! Если во время использования команды '''lsblk''' и '''fdisk -l''' вы увидели что sda является не тем диском, что нужен вам, то вы дописываете в конец название другого диска, например '''sdb''', у меня это был '''nvme0n1'''.


Используя стрелочки создаём 3 раздела на диске:
Используя стрелочки создаём 4 раздела на диске (можно создать 2, boot и корень - '''/''' (это быстрее и проще).


/dev/sda1 # размером 1G места под UEFI
<blockquote>/dev/sda1 # примерно 1 GB под BOOT \\ UEFI. Здесь будет загрузчик.</blockquote>
/dev/sda2 # размером примерно 10-15 GB под root
 
/dev/sda3 # всё оставшееся место под директорию home
Наводим на выделенное место (1 GB), выбираем Type » BIOS boot или UEFI boot (пункт может различаться, можно выделить просто Linux и поставить звёздочку в Bootable).
 
<blockquote>/dev/sda2 # примерно 15-20 GB. Здесь будет корень (root).</blockquote>
 
Наводим на выделенное место (15-20 GB), выбираем Type » Linux или Linux Filesystems (пункт может различаться).
 
Следующие разделы по желанию пользователя, если их не создавать или создать только home, не создавая отдельный раздел под swap, то ничего не произойдёт. Многие граждане делают файл swap в уже установленной системе, а не выделяют целый раздел.
В общем под swap выделяем минимум 2 GB, в зависимости от ОЗУ.
 
<blockquote>/dev/sda3 # практически всё оставшееся место. Здесь будет домашний раздел (home).</blockquote>
 
Наводим на выделенное место (много GB), выбираем Type » Linux или Linux Filesystems (пункт может различаться).
 
<blockquote>/dev/sda4 # от 2 GB (в зависимости от ОЗУ). Здесь будет раздел подкачки (swap).</blockquote>
 
Наводим на выделенное место (от 2 GB), выбираем Type » Linux swap / Solaris (пункт может различаться).
 
»»» Наводим на корневой раздел (root), выделяем внизу '''Write''', пишем '''yes''' и нажимаем Enter.
 
Выходим (выделяем '''Quit''' и жмём '''Enter''').


PS: Если вы решили переделать разметку диска, то через эту утилиту можно и удалять разделы.
PS: Если вы решили переделать разметку диска, то через эту утилиту можно и удалять разделы.


Для проверки используем lsblk снова. Если всё норм, что /dev/sda будет содержать в себе 3 раздела.
Для проверки используем lsblk снова. Если всё норм, то /dev/sda будет содержать в себе 4 раздела.
 
Трудный этап завершён.
 
=== Форматирование разделов ===


Далее форматируем наши разделы.
Форматируем тот раздел, который мы выделили под загрузчик.


Форматируем тот раздел, который мы выделили под UEFi
<blockquote>mkfs.fat -F32 /dev/sda1</blockquote>


<ref>mkfs.fat -F32 /dev/sda1</ref>
Раздел root (если файловая система ext4 вас устраивает, раздел можно не форматировать в ext4, если он уже отформатирован ранее в btrfs - пропускаем команду).


Раздел root
<blockquote>mkfs.ext4 /dev/sda2</blockquote>


<ref>mkfs.ext4 /dev/sda2</ref>
Раздел home (если файловая система ext4 вас устраивает, раздел можно не форматировать в ext4, если он уже отформатирован ранее в btrfs - пропускаем команду).


Раздел home
<blockquote>mkfs.ext4 /dev/sda3</blockquote>


<ref>mkfs.ext4 /dev/sda3</ref>
Раздел swap.
 
<blockquote>mkswap /dev/sda4</blockquote>


Монтируем root и создаём папку home:
Монтируем root и создаём папку home:


<ref>mount /dev/sda2 /mnt
<blockquote>mount /dev/sda2 /mnt
mkdir /mnt/home
mkdir /mnt/home
mount /dev/sda3 /mnt/home</ref>
mount /dev/sda3 /mnt/home</blockquote>
 
Итак, давайте включим наш раздел подкачки с приведенным ниже кодом.
 
<blockquote>swapon /dev/sda4</blockquote>
 
И снова lsblk для проверки.


И снова lsblk для проверки
Очередной успех, товарищ!


== Установка ==
== Установка ==


Начинается самая долгая часть, потому что нужно будет много скачать. Устанавливаем все основные пакеты, а также nano, чтоб редачить файлы системы. Если вдруг вы знакомы с vim можете скачать и его (дописать в конец).
Переходим к установке, придётся много чего загрузить. Устанавливаем все основные пакеты, а также nano, чтоб редактировать файлы системы. Если вдруг вы знакомы с vim можете загрузить и его (дописать в конец).
 
<blockquote>pacstrap -i /mnt base linux linux-firmware sudo nano</blockquote>


<ref>pacstrap -i /mnt base linux linux-firmware sudo nano</ref>
Или по желанию:
<blockquote>pacstrap -i /mnt base linux linux-firmware sudo nano vi</blockquote>


Вам предложат что установить выбирайте all и далее yes. Если будут трудности, то можно просто выполнить команду дважды выбирая вначале один пакет, а затем второй.
Если возникнут трудности с зеркалами, то меняйте своё подключение. После ввода команды выше должна моментально идти загрузки, если этого не произошло, то меняйте подключение. Я например подключил свой смартфон по USB в режиме модема и загрузка пошла моментально (да, статья пишется в режиме настоящей ручной установки на настоящем оборудовании).


Создадим  fstab файл
Вам предоставят выбор того, что установить, выбирайте all и далее yes. Если будут трудности, то можно просто выполнить команду дважды выбирая вначале один пакет, а затем второй.


<ref>genfstab -U -p /mnt >> /mnt/etc/fstab</ref>
Ждём окончания загрузки, наверное это самый долгий этап установки, так как здесь мы ждём окончания загрузки.


Настраиваем установленную систему
=== Создадим  fstab файл ===


<ref>Chroot</ref>
<blockquote>genfstab -U -p /mnt >> /mnt/etc/fstab</blockquote>


Chroot (change root) нужен нам, чтобы мы могли сменить  root пользователя (как и сказано в названии команды).
Настраиваем установленную систему. Chroot.


<ref>arch-chroot /mnt /bin/bash</ref>
Chroot (change root) нужен нам, чтобы мы могли сменить  root пользователя.


Настройка файла локали
<blockquote>arch-chroot /mnt /bin/bash</blockquote>


Для начала идём в файл локали, чтоб настроить язык
=== Настройка файла локализации ===


<ref>nano /etc/locale.gen</ref>
Для начала идём в файл локализации, чтобы настроить язык.


Находим там #en_US.UTF-8 и стираем #, с русским языком так же. PS: можно использовать Ctrl + W для поиска языка в файле.
<blockquote>nano /etc/locale.gen</blockquote>


Чтобы всё сохранить Ctrl + O, затем Enter и Ctrl + X, затем Enter.
Находим там #ru_RU.UTF-8 и стираем решётку '''#''', с английским языком так же: #en_US.UTF-8.
<br>Можно использовать Ctrl + W для поиска языка в файле.


Далее пишем команды, которые сгенерируют локаль и создаём locale.conf с нужными настройками языка.
Чтобы всё сохранить '''Ctrl + O''', затем '''Enter''' и '''Ctrl + X'''.


<ref>locale-gen
Далее пишем команды, которые сгенерируют локализацию и создаём locale.conf с нужными настройками языка.
echo "LANG=en_US.UTF-8" > /etc/locale.conf</ref>


Настраиваем временную зону
<blockquote>locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
echo "LANG=ru_RU.UTF-8" > /etc/locale.conf</blockquote>


<ref>ln -sf /usr/share/zoneinfo/</ref>
=== Настройка временной зоны ===
 
<blockquote>ln -sf /usr/share/zoneinfo/</blockquote>


Далее жмём 2 раза на Tab и видим список регионов, после городов.
Далее жмём 2 раза на Tab и видим список регионов, после городов.
Строка 149: Строка 202:
В моём случае было так:
В моём случае было так:


<ref>ln -sf /usr/share/zoneinfo/Europe/Minsk /etc/localtime</ref>
<blockquote>ln -sf /usr/share/zoneinfo/Europe/Minsk /etc/localtime
<br>timedatectl set-ntp true</blockquote>


Задаём время
Ну что, товарищ, идём дальше?


Тут 2 команды. Одна ставит время для системы, а другая его показывает.
=== Задаём время ===


<ref>hwclock --systohc --utc
Здесь 2 команды. Одна ставит время для системы, а другая его показывает.
date</ref>


Имя хоста и адрес
<blockquote>hwclock --systohc --utc
<br>date</blockquote>


Я решил назвать ПК archlinux, поэтому использую следующую команду:
=== Имя хоста и адрес ===


<ref>echo archlinux > /etc/hostname</ref>
Я решил назвать ПК '''archlinux''', поэтому использую следующую команду:
 
<blockquote>echo archlinux > /etc/hostname</blockquote>


Далее идём в файл localhosts и записываем ip. Если у вас ip статический, используйте свой.
Далее идём в файл localhosts и записываем ip. Если у вас ip статический, используйте свой.


nano /etc/hosts
<blockquote>nano /etc/hosts
<ref>127.0.1.1 localhost.localdomain archlinux</ref>
<br>127.0.1.1 localhost.localdomain archlinux</blockquote>


Сетевой менеджер
Чтобы всё сохранить '''Ctrl + O''', затем '''Enter''' и '''Ctrl + X'''.


Качаем и включаем.
=== Сетевой менеджер ===


<ref>pacman -S networkmanager
Загружаем и включаем.
systemctl enable NetworkManager</ref>


Установка GRUB
<blockquote>pacman -S networkmanager
<br>systemctl enable NetworkManager</blockquote>
 
=== Установка GRUB ===


Для начала сменим пароль root пользователя :
Для начала сменим пароль root пользователя :


<ref>passwd</ref>
<blockquote>passwd</blockquote>


GRUB — это загрузчик, который нужен, чтоб запускать нашу установленную систему (в режиме EFI). Далее будет куча команд, которые нужно выполнить.
Вводим пароль 2 раза.
 
GRUB — загрузчик, который нужен, чтобы запускать нашу установленную систему (в режиме EFI).
 
<blockquote>pacman -S grub efibootmgr
<br>mkdir /boot/efi</blockquote>
 
Вводим lsblk # Для проверки (всё ли нормально смонтировано и нужного названия раздела для загрузчика).
 
<blockquote>mount /dev/sda1 /boot/efi
 
lsblk # Для проверки, всё ли нормально смонтировано.


<ref>pacman -S grub efibootmgr
mkdir /boot/efi
mount /dev/sda1 /boot/efi
lsblk # для проверки всё ли норм смонтировано
grub-install --target=x86_64-efi --bootloader-id=GRUB --efi-directory=/boot/efi --removable
grub-install --target=x86_64-efi --bootloader-id=GRUB --efi-directory=/boot/efi --removable
grub-mkconfig -o /boot/grub/grub.cfg</ref>


Перезагрузка
grub-mkconfig -o /boot/grub/grub.cfg</blockquote>
 
Альтернатива:
 
<blockquote>pacman -S grub
 
grub-install /dev/sda
 
grub-mkconfig -o /boot/grub/grub.cfg</blockquote>
 
=== Перезагрузка ===


Чтобы без потерь перезагрузить нашу систему используем эти команды:
Чтобы без потерь перезагрузить нашу систему используем эти команды:


<ref>exit
<blockquote>exit
umount -R /mnt
umount -R /mnt
reboot</ref>
reboot</blockquote>
 
После перезагрузки вы увидите следующее. Если это так, то наш GRUB установился правильно


Входим в root аккаунт и создаём swapfile (что-то вроде доп оперативки) и задаём ему размер как у вашей ОЗУ.
После перезагрузки входим в root аккаунт и создаём swapfile (если не создавали его выше, если создавали раздел, то минуем этот пункт).


<ref>fallocate -l 3G /swapfile</ref>
<blockquote>fallocate -l 3G /swapfile</blockquote>


Далее выполняем следующие команды:
Далее выполняем следующие команды:


<ref>chmod 600 /swapfile
<blockquote>chmod 600 /swapfile
mkswap /swapfile
mkswap /swapfile
swapon /swapfile
swapon /swapfile
echo '/swapfile none swap sw 0 0' >> /etc/fstab</ref>
echo '/swapfile none swap sw 0 0' >> /etc/fstab</blockquote>
 
Проверяем, работает ли swap:
 
<blockquote>free -m</blockquote>


И проверяем, работает ли swap:
== Добавление пользователя==


<ref>free -m</ref>
<blockquote>useradd -m -g users -G wheel -s /bin/bash aprelteam


Добавим пользователя и окружение
Установим пароль.


<ref>useradd -m -g users -G wheel -s /bin/bash username
<br>passwd aprelteam</blockquote>
passwd username</ref>


username замените на то имя, что хотите вы)
aprelteam замените на то имя, что хотите вы)


Также нужно дать ему права суперюзера:
Также нужно дать ему права суперюзера:


<ref>EDITOR=nano visudo</ref>
<blockquote>EDITOR=nano visudo</blockquote>


там ищем и убираем #, а дальше Ctrl + O, затем Enter и Ctrl + X, затем Enter.
Ищем и убираем #:


# %wheel ALL=(ALL) ALL
# %wheel ALL=(ALL) ALL


Дрова
Сохраняем '''Ctrl + O''', затем '''Enter''' и '''Ctrl + X'''.
 
=== Драйвера ===


<ref>pacman -S pulseaudio pulseaudio-alsa xorg xorg-xinit xorg-server</ref>
<blockquote>pacman -S pulseaudio pulseaudio-alsa xorg xorg-xinit xorg-server</blockquote>


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


Окружение
=== Окружение ===
 
'''KDE Plasma'''
 
<blockquote>pacman -S xorg plasma plasma-wayland-session kde-applications console</blockquote>
 
kde-applications по желанию.


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


<ref>pacman -S xfce4 lightdm lightdm-gtk-greeter
<blockquote>systemctl enable sddm
echo "exec startxfce4" > ~/.xinitrc
<br>reboot</blockquote>
systemctl enable lightdm</ref>


И моё любимое  i3, там выбираем пакеты 2 4 5. Возможно вы увидите квадраты вместо символов, но это нормально, вам просто нужно будет скачать шрифт dejavu (pacman -S ttf-dejavu). Cписок горячих клавиш можно посмотреть  тут
Для запуска вашего окружения используйте


<ref>echo "exec i3"  > ~/.xinitrc
<blockquote>startx</blockquote>
sudo pacman -S i3</ref>


Если вы решите поменять своё окружение, то нужно будет менять запись в файле xinitrc.
Если вы решите поменять своё окружение, то нужно будет менять запись в файле xinitrc.
Если у вас уже до этого был дисплейный менеджер, то его нужно отключить. Но этого можно и не делать, если вы не будете использовать GDM. Рассмотрим данную операцию на примере SDDM:


Для запуска вашего окружения используйте
<blockquote>systemctl disable sddm
<br>systemctl enable gdm
<br>sudo systemctl start gdm
<br>reboot</blockquote>


<ref>startx</ref>
[[Категория:Linux]]