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

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

Материал из Aprel Wiki
Дополнительные действия
Нет описания правки
Метки: с мобильного устройства из мобильной версии через расширенный мобильный режим
 
(не показана 61 промежуточная версия этого же участника)
Строка 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.


== Загрузка образа ==
== Загрузка образа ==
Строка 10: Строка 12:


== Запись образа ==
== Запись образа ==
Записать образ с [[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''' и выберите нужный носитель.
Строка 32: Строка 34:
Сперва вы увидите некоторые архивные журналы загрузки и системные проверки. Таким образом, в течение нескольких секунд, после проверки, Arch загрузит и введёт вас в корневую директорию. Здесь мы вставим команду '''«IP link»''', чтобы проверить доступность сетевых адаптеров.
Сперва вы увидите некоторые архивные журналы загрузки и системные проверки. Таким образом, в течение нескольких секунд, после проверки, Arch загрузит и введёт вас в корневую директорию. Здесь мы вставим команду '''«IP link»''', чтобы проверить доступность сетевых адаптеров.


'''ip link'''
<blockquote>ip link</blockquote>


Вы можете проверить свой вывод, что ваша команда работает отлично.
Вы можете проверить свой вывод, что ваша команда работает отлично.
Строка 40: Строка 42:
Такой командой можно проверить своё соединение и увидеть время ответа сайта.
Такой командой можно проверить своё соединение и увидеть время ответа сайта.


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


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


'''iwctl'''
station wlan0 scan


'''device list'''
station wlan0 get-networks


'''station device scan'''
station wlan0 connect SSID</blockquote>


'''station device get-networks'''
Вводим пароль от сети Wi-Fi, всё готово.


'''station device connect SSID'''
SSID (имя вашей сети Wi-Fi - указываем в скобках, пример: '''"Xiaomi Mi WiFi6 Router AX9000"''').


После подключения:
После подключения:


'''ping archlinux.org'''
<blockquote>exit
<br>ping archlinux.org</blockquote>


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


== Разделы диска ==
== Разделы диска ==
Строка 66: Строка 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 -l''' вы увидели что sda является не тем диском, что нужен вам, то вы дописываете в конец название другого диска, например '''sdb''', у меня это был '''nvme0n1'''.
 
Используя стрелочки создаём 4 раздела на диске (можно создать 2, boot и корень - '''/''' (это быстрее и проще).
 
<blockquote>/dev/sda1 # примерно 1 GB под BOOT \\ UEFI. Здесь будет загрузчик.</blockquote>
 
Наводим на выделенное место (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>


Bажно! если во время использования команды lsblk и fdisk вы увидели что sda является не тем диском, что нужен вам, то вы дописываете в конец название другого диска, например sdb.
Наводим на выделенное место (от 2 GB), выбираем Type » Linux swap / Solaris (пункт может различаться).


Используя стрелочки создаём 3 раздела на диске:
»»» Наводим на корневой раздел (root), выделяем внизу '''Write''', пишем '''yes''' и нажимаем Enter.


/dev/sda1 # размером 1G места под UEFI
Выходим (выделяем '''Quit''' и жмём '''Enter''').
/dev/sda2 # размером примерно 10-15 GB под root
/dev/sda3 # всё оставшееся место под директорию home


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


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


Далее форматируем наши разделы.
Трудный этап завершён.


Форматируем тот раздел, который мы выделили под UEFi
=== Форматирование разделов ===


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


Раздел root
<blockquote>mkfs.fat -F32 /dev/sda1</blockquote>


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


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


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


И снова lsblk для проверки
Итак, давайте включим наш раздел подкачки с приведенным ниже кодом.
 
<blockquote>swapon /dev/sda4</blockquote>
 
И снова lsblk для проверки.
 
Очередной успех, товарищ!


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


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


<ref>pacstrap -i /mnt base linux linux-firmware sudo nano</ref>
Если возникнут трудности с зеркалами, то меняйте своё подключение. После ввода команды выше должна моментально идти загрузки, если этого не произошло, то меняйте подключение. Я например подключил свой смартфон по USB в режиме модема и загрузка пошла моментально (да, статья пишется в режиме настоящей ручной установки на настоящем оборудовании).


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


Создадим  fstab файл
Ждём окончания загрузки, наверное это самый долгий этап установки, так как здесь мы ждём окончания загрузки.


<ref>genfstab -U -p /mnt >> /mnt/etc/fstab</ref>
=== Создадим  fstab файл ===


Настраиваем установленную систему
<blockquote>genfstab -U -p /mnt >> /mnt/etc/fstab</blockquote>


<ref>Chroot</ref>
Настраиваем установленную систему. Chroot.


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


<ref>arch-chroot /mnt /bin/bash</ref>
<blockquote>arch-chroot /mnt /bin/bash</blockquote>


Настройка файла локали
=== Настройка файла локализации ===


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


<ref>nano /etc/locale.gen</ref>
<blockquote>nano /etc/locale.gen</blockquote>


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


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


Далее пишем команды, которые сгенерируют локаль и создаём locale.conf с нужными настройками языка.
Далее пишем команды, которые сгенерируют локализацию и создаём locale.conf с нужными настройками языка.


<ref>locale-gen
<blockquote>locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf</ref>
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 и видим список регионов, после городов.
Строка 153: Строка 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
<blockquote>pacman -S networkmanager
systemctl enable NetworkManager</ref>  
<br>systemctl enable NetworkManager</blockquote>


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


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


<ref>passwd</ref>
<blockquote>passwd</blockquote>
 
Вводим пароль 2 раза.


GRUB — это загрузчик, который нужен, чтоб запускать нашу установленную систему (в режиме EFI). Далее будет куча команд, которые нужно выполнить.
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:


И проверяем, работает ли swap:
<blockquote>free -m</blockquote>


<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
Установим пароль.
passwd username</ref>


username замените на то имя, что хотите вы)
<br>passwd aprelteam</blockquote>
 
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>


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


Окружение
=== Окружение ===


Вначале покажу как поставить довольно простое — XFCE
'''KDE Plasma'''


<ref>pacman -S xfce4 lightdm lightdm-gtk-greeter
<blockquote>pacman -S xorg plasma plasma-wayland-session kde-applications console</blockquote>
echo "exec startxfce4" > ~/.xinitrc
systemctl enable lightdm</ref>


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


<ref>echo "exec i3"  > ~/.xinitrc
Включим драйверы отображения и перезагрузим нашу систему. Поэтому следуйте приведенной ниже последовательности кода один за другим.
sudo pacman -S i3</ref>
 
<blockquote>systemctl enable sddm
<br>reboot</blockquote>
 
Для запуска вашего окружения используйте
 
<blockquote>startx</blockquote>


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


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


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