134 lines
No EOL
4.7 KiB
Markdown
134 lines
No EOL
4.7 KiB
Markdown
# 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
|
||
``` |