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

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

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


== Загрузка образа ==
== Загрузка образа ==
Строка 42: Строка 44:
<blockquote>ping archlinux.org</blockquote>
<blockquote>ping archlinux.org</blockquote>


Если вы используете Wi-Fi на своём ПК, то используйте команды:
Если вы используете Wi-Fi на своём ПК, то используйте команды (обычно имя wlan0, если у вас другое, то указываем своё):


<blockquote>iwctl
<blockquote>iwctl
Строка 48: Строка 50:
device list
device list


station device scan
station wlan0 scan
 
station wlan0 get-networks
 
station wlan0 connect SSID</blockquote>


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


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


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


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


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


== Разделы диска ==
== Разделы диска ==
Строка 71: Строка 80:


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


Время размечать наш диск. Используем команду cfdisk для этого и выбираем gpt формат :
Время размечать наш диск. Используем команду cfdisk для этого и выбираем gpt формат :
Строка 76: Строка 87:
<blockquote>cfdisk /dev/sda</blockquote>
<blockquote>cfdisk /dev/sda</blockquote>


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


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


<blockquote>/dev/sda1 # размером 1G места под UEFI
<blockquote>/dev/sda1 # примерно 1 GB под BOOT \\ UEFI. Здесь будет загрузчик.</blockquote>
/dev/sda2 # размером примерно 10-15 GB под root
 
/dev/sda3 # всё оставшееся место под директорию home</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>
 
Наводим на выделенное место (от 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>
<blockquote>mkfs.fat -F32 /dev/sda1</blockquote>


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


<blockquote>mkfs.ext4 /dev/sda2</blockquote>
<blockquote>mkfs.ext4 /dev/sda2</blockquote>


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


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


Монтируем root и создаём папку home:
Монтируем root и создаём папку home:
Строка 106: Строка 142:
<blockquote>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>
<blockquote>pacstrap -i /mnt base linux linux-firmware sudo nano</blockquote>


Вам предложат что установить выбирайте all и далее yes. Если будут трудности, то можно просто выполнить команду дважды выбирая вначале один пакет, а затем второй.
Или по желанию:
<blockquote>pacstrap -i /mnt base linux linux-firmware sudo nano vi</blockquote>


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


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


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


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


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


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


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


<blockquote>nano /etc/locale.gen</blockquote>
<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 с нужными настройками языка.


<blockquote>locale-gen
<blockquote>locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf</blockquote>
echo "LANG=en_US.UTF-8" > /etc/locale.conf
echo "LANG=ru_RU.UTF-8" > /etc/locale.conf</blockquote>


Настраиваем временную зону
=== Настройка временной зоны ===


<blockquote>ln -sf /usr/share/zoneinfo/</blockquote>
<blockquote>ln -sf /usr/share/zoneinfo/</blockquote>
Строка 153: Строка 202:
В моём случае было так:
В моём случае было так:


<blockquote>ln -sf /usr/share/zoneinfo/Europe/Minsk /etc/localtime</blockquote>
<blockquote>ln -sf /usr/share/zoneinfo/Europe/Minsk /etc/localtime
<br>timedatectl set-ntp true</blockquote>
 
Ну что, товарищ, идём дальше?


Задаём время
=== Задаём время ===


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


<blockquote>hwclock --systohc --utc
<blockquote>hwclock --systohc --utc
date</blockquote>
<br>date</blockquote>


Имя хоста и адрес
=== Имя хоста и адрес ===


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


<blockquote>echo archlinux > /etc/hostname</blockquote>
<blockquote>echo archlinux > /etc/hostname</blockquote>
Строка 170: Строка 222:
Далее идём в файл localhosts и записываем ip. Если у вас ip статический, используйте свой.
Далее идём в файл localhosts и записываем ip. Если у вас ip статический, используйте свой.


nano /etc/hosts
<blockquote>nano /etc/hosts
<blockquote>127.0.1.1 localhost.localdomain archlinux</blockquote>
<br>127.0.1.1 localhost.localdomain archlinux</blockquote>
 
Чтобы всё сохранить '''Ctrl + O''', затем '''Enter''' и '''Ctrl + X'''.


Сетевой менеджер
=== Сетевой менеджер ===


Качаем и включаем.
Загружаем и включаем.


<blockquote>pacman -S networkmanager
<blockquote>pacman -S networkmanager
systemctl enable NetworkManager</blockquote>
<br>systemctl enable NetworkManager</blockquote>


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


Для начала сменим пароль root пользователя :
Для начала сменим пароль root пользователя :
Строка 186: Строка 240:
<blockquote>passwd</blockquote>
<blockquote>passwd</blockquote>


GRUB — это загрузчик, который нужен, чтоб запускать нашу установленную систему (в режиме EFI). Далее будет куча команд, которые нужно выполнить.
Вводим пароль 2 раза.
 
GRUB — загрузчик, который нужен, чтобы запускать нашу установленную систему (в режиме EFI).


<blockquote>pacman -S grub efibootmgr
<blockquote>pacman -S grub efibootmgr
mkdir /boot/efi
<br>mkdir /boot/efi</blockquote>
mount /dev/sda1 /boot/efi
 
lsblk # для проверки всё ли норм смонтировано  
Вводим lsblk # Для проверки (всё ли нормально смонтировано и нужного названия раздела для загрузчика).
 
<blockquote>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</blockquote>
Альтернатива:
<blockquote>pacman -S grub
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg</blockquote>
grub-mkconfig -o /boot/grub/grub.cfg</blockquote>


Перезагрузка
=== Перезагрузка ===


Чтобы без потерь перезагрузить нашу систему используем эти команды:
Чтобы без потерь перезагрузить нашу систему используем эти команды:
Строка 203: Строка 273:
reboot</blockquote>
reboot</blockquote>


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


<blockquote>fallocate -l 3G /swapfile</blockquote>
<blockquote>fallocate -l 3G /swapfile</blockquote>
Строка 216: Строка 284:
echo '/swapfile none swap sw 0 0' >> /etc/fstab</blockquote>
echo '/swapfile none swap sw 0 0' >> /etc/fstab</blockquote>


И проверяем, работает ли swap:
Проверяем, работает ли swap:


<blockquote>free -m</blockquote>
<blockquote>free -m</blockquote>


Добавим пользователя и окружение
== Добавление пользователя==
 
<blockquote>useradd -m -g users -G wheel -s /bin/bash aprelteam
 
Установим пароль.


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


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


Также нужно дать ему права суперюзера:
Также нужно дать ему права суперюзера:
Строка 231: Строка 302:
<blockquote>EDITOR=nano visudo</blockquote>
<blockquote>EDITOR=nano visudo</blockquote>


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


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


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


<blockquote>pacman -S pulseaudio pulseaudio-alsa xorg xorg-xinit xorg-server</blockquote>
<blockquote>pacman -S pulseaudio pulseaudio-alsa xorg xorg-xinit xorg-server</blockquote>
Строка 241: Строка 314:
Вам будет предложен выбор, выбирайте исходя из своей графики.
Вам будет предложен выбор, выбирайте исходя из своей графики.


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


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


<blockquote>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</blockquote>


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


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


Если вы решите поменять своё окружение, то нужно будет менять запись в файле xinitrc.
<blockquote>systemctl enable sddm
<br>reboot</blockquote>


Для запуска вашего окружения используйте
Для запуска вашего окружения используйте


<blockquote>startx</blockquote>
<blockquote>startx</blockquote>
Если вы решите поменять своё окружение, то нужно будет менять запись в файле xinitrc.
Если у вас уже до этого был дисплейный менеджер, то его нужно отключить. Но этого можно и не делать, если вы не будете использовать GDM. Рассмотрим данную операцию на примере SDDM:
<blockquote>systemctl disable sddm
<br>systemctl enable gdm
<br>sudo systemctl start gdm
<br>reboot</blockquote>
[[Категория:Linux]]