Установка Arch Linux: различия между версиями
Материал из Aprel Wiki
Дополнительные действия
APRELKUN (обсуждение | вклад) |
APRELKUN (обсуждение | вклад) Нет описания правки Метки: с мобильного устройства из мобильной версии через расширенный мобильный режим |
||
| (не показано 55 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
Приветствую, товарищи! | |||
Ну что, приступим же к ручной установке? Или воспользуемся [[archinstall]] (быстрее, легче, понятнее)? | Ну что, приступим же к ручной установке? Или воспользуемся [[archinstall]] (быстрее, легче, понятнее)? | ||
Если в статье есть недостоверная информация, то обязательно посетите | Если в статье есть недостоверная информация, то обязательно посетите наш чат в 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 | station wlan0 scan | ||
station wlan0 get-networks | |||
station wlan0 connect SSID</blockquote> | |||
Вводим пароль от сети Wi-Fi, всё готово. | |||
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ажно! | Bажно! Если во время использования команды '''lsblk''' и '''fdisk -l''' вы увидели что sda является не тем диском, что нужен вам, то вы дописываете в конец название другого диска, например '''sdb''', у меня это был '''nvme0n1'''. | ||
Используя стрелочки создаём | Используя стрелочки создаём 4 раздела на диске (можно создать 2, boot и корень - '''/''' (это быстрее и проще). | ||
<blockquote>/dev/sda1 # | <blockquote>/dev/sda1 # примерно 1 GB под BOOT \\ UEFI. Здесь будет загрузчик.</blockquote> | ||
/dev/sda2 # | |||
/dev/sda3 # всё оставшееся место | Наводим на выделенное место (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 снова. Если всё норм, | Для проверки используем lsblk снова. Если всё норм, то /dev/sda будет содержать в себе 4 раздела. | ||
Трудный этап завершён. | |||
Форматируем тот раздел, который мы выделили под | === Форматирование разделов === | ||
Форматируем тот раздел, который мы выделили под загрузчик. | |||
<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</ | mount /dev/sda3 /mnt/home</blockquote> | ||
Итак, давайте включим наш раздел подкачки с приведенным ниже кодом. | |||
<blockquote>swapon /dev/sda4</blockquote> | |||
И снова lsblk для проверки. | |||
Очередной успех, товарищ! | |||
== Установка == | == Установка == | ||
Переходим к установке, придётся много чего загрузить. Устанавливаем все основные пакеты, а также nano, чтоб редактировать файлы системы. Если вдруг вы знакомы с vim можете загрузить и его (дописать в конец). | |||
<blockquote>pacstrap -i /mnt base linux linux-firmware sudo nano</blockquote> | <blockquote>pacstrap -i /mnt base linux linux-firmware sudo nano</blockquote> | ||
Или по желанию: | |||
<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. | ||
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> | ||
Находим там # | Находим там #ru_RU.UTF-8 и стираем решётку '''#''', с английским языком так же: #en_US.UTF-8. | ||
<br>Можно использовать Ctrl + W для поиска языка в файле. | |||
Чтобы всё сохранить Ctrl + O, затем Enter и Ctrl + X | Чтобы всё сохранить '''Ctrl + O''', затем '''Enter''' и '''Ctrl + X'''. | ||
Далее пишем команды, которые сгенерируют | Далее пишем команды, которые сгенерируют локализацию и создаём 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 команды. Одна ставит время для системы, а другая его показывает. | |||
<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 | ||
< | <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 — | Вводим пароль 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> | ||
После перезагрузки | После перезагрузки входим в 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: | |||
<blockquote>free -m</blockquote> | <blockquote>free -m</blockquote> | ||
== Добавление пользователя== | |||
<blockquote>useradd -m -g users -G wheel -s /bin/bash aprelteam | |||
Установим пароль. | |||
< | <br>passwd aprelteam</blockquote> | ||
passwd | |||
aprelteam замените на то имя, что хотите вы) | |||
Также нужно дать ему права суперюзера: | Также нужно дать ему права суперюзера: | ||
| Строка 231: | Строка 302: | ||
<blockquote>EDITOR=nano visudo</blockquote> | <blockquote>EDITOR=nano visudo</blockquote> | ||
Ищем и убираем #: | |||
# %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: | ||
Вам будет предложен выбор, выбирайте исходя из своей графики. | Вам будет предложен выбор, выбирайте исходя из своей графики. | ||
Окружение | === Окружение === | ||
'''KDE Plasma''' | |||
<blockquote>pacman -S | <blockquote>pacman -S xorg plasma plasma-wayland-session kde-applications console</blockquote> | ||
kde-applications по желанию. | |||
Включим драйверы отображения и перезагрузим нашу систему. Поэтому следуйте приведенной ниже последовательности кода один за другим. | |||
<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]] | |||