hyperion/10-linux/90-stories/arch-installing.md
2025-12-28 19:00:03 +03:00

134 lines
No EOL
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# cfdisk...
512M, EFI
остальное - Linux Filesystem
```bash
mkfs.fat -F 32 /dev/vda1
mkfs.ext4 /dev/vda2
mount /dev/vda2 /mnt
mkdir -p /mnt/boot
mount /dev/vda1 /mnt/boot
# проверяем монтирование
findmnt /mnt
findmnt /mnt/boot
# устанавливаем
pacstrap -K /mnt base linux linux-firmware sudo openssh
# если упало с ошибкой
mkdir -p /mnt/etc echo 'KEYMAP=us' > /mnt/etc/vconsole.conf
arch-chroot /mnt
mkinitcpio -P
exit
```
```bash
mount | grep '/mnt'
```
## Установка базовой системы
Дальше делаем базовую установку в `/mnt` через `pacstrap`, потом генерируем `fstab` и переходим в установленную систему через `arch-chroot` — это прям “хребет” официального Installation guide.[1]
Команды:
```bash
pacstrap -K /mnt base linux linux-firmware sudo openssh
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
```
## Настройка в chroot (минимум)
Внутри `arch-chroot` сделай базовые вещи: timezone/clock, locale, hostname, пароль root и (желательно) обычного пользователя — это следует общему порядку из Installation guide.[1]
Команды-шаблон:
```bash
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
hwclock --systohc
# locale
sed -i 's/^#\(en_US.UTF-8\)/\1/' /etc/locale.gen
locale-gen
printf "LANG=en_US.UTF-8\n" > /etc/locale.conf
# hostname + hosts
echo "archvm" > /etc/hostname
cat > /etc/hosts <<'EOF'
127.0.0.1 localhost
::1 localhost
127.0.1.1 archvm.localdomain archvm
EOF
passwd
useradd -m -G wheel -s /bin/bash rori
passwd rori
EDITOR=vi visudo # раскомментируй строку про %wheel ALL=(ALL:ALL) ALL
```
## Загрузчик + сеть + SSH + ребут
Раз у тебя UEFI и ESP смонтирован в `/boot`, можно ставить systemd-boot через `bootctl install`, а затем добавить загрузочную entry в `/boot/loader/entries/` — это ровно то, что описывает ArchWiki по systemd-boot. Чтобы после первого ребута продолжить работать по SSH, поставленный `openssh` нужно включить как сервис `sshd.service` на автозапуск.[3][4][5]
Команды (всё ещё внутри chroot):
```bash
bootctl install
ROOT_PARTUUID="$(blkid -s PARTUUID -o value /dev/vda2)"
cat > /boot/loader/entries/arch.conf <<EOF
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=PARTUUID=${ROOT_PARTUUID} rw
EOF
# Чтобы сеть поднялась после перезагрузки (самый простой вариант)
pacman -S --noconfirm networkmanager
systemctl enable NetworkManager
# SSH после ребута
systemctl enable sshd
```
Выход и перезагрузка:
```bash
exit
umount -R /mnt
reboot
```
[1](https://wiki.archlinux.org/title/Installation_guide)
[2](https://wiki.archlinux.org/title/EFI_system_partition)
[3](https://wiki.archlinux.org/title/OpenSSH)
[4](https://wiki.archlinux.org/title/Systemd-boot)
[5](https://wiki.archlinux.org/title/Systemd-boot_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9))
[6](https://wiki.archlinux.org/title/Install_Arch_Linux_from_existing_Linux)
[7](https://wiki.archlinux.org/title/Installation_guide_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9))
[8](https://gist.github.com/mjkstra/96ce7a5689d753e7a6bdd92cdc169bae)
[9](https://linuxconfig.org/arch-linux-installation-easy-step-by-step-guide)
[10](https://www.tsunderechen.io/2020/05/archlinux-systemd-boot-installation/)
[11](https://dropvps.com/blog/arch-linux-enable-ssh-server/)
[12](https://habr.com/ru/articles/805671/)
[13](https://www.youtube.com/watch?v=FFXRFTrZ2Lk)
[14](https://gist.github.com/miguelmota/575af40ddb7f86b858a86a673cec3999)
[15](https://wiki.archlinux.org/title/Install_Arch_Linux_from_existing_Linux_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9))
[16](https://fhackts.wordpress.com/2016/09/09/installing-archlinux-the-efisystemd-boot-way/)
[17](https://bruhtus.github.io/posts/arch-installation-guide/)
[18](https://wiki.archlinux.org/title/OpenSSH_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9))
[19](https://www.youtube.com/watch?v=rUEnS1zj1DM)
[20](https://www.atlantic.net/dedicated-server-hosting/how-to-secure-ssh-server-on-arch-linux/)
[21](https://ru.scribd.com/document/601730020/Installation-guide-ArchWiki-Part-4)
# docker autostart
```
sudo systemctl enable --now docker.service
```
# base-devel
```
sudo pacman -S --needed base-devel
```