Install Debian Linux - andyceo/documentation GitHub Wiki
Актуальная версия: debian-12.1.0-amd64-netinst.iso (SHA-256: 9f181ae12b25840a508786b1756c6352a0e58484998669288c4eec2ab16b8559
)
-
Скачать установочный образ и записать его на флешку:
cp debian-12.1.0-amd64-netinst.iso /dev/sdX
-
Загрузиться с флешки и выбрать пункт меню Advanced Options/Expert Install
-
Попадаем в Debian installer main menu. Идем по нему сверху вниз, меню может обновится после выбора некоторых пунктов, например, оно обновится при выборе Load installer components
-
Перейти к установке
- Choose Language: Устанавливаем свой язык, место (location), локаль, таймзону
- Load installer components
- Detect network hardware
- Configure network - здесь выбираем hostname. Domain name: lan
- Set up users and passwords: Allow login as root? - NO - ввести пользователя и пароль
- Set up clock (таймзона здесь)
- Detect disks
-
Partition Disks. Сделать разметку через меню, но пока не устанавливать!
-
Выйти в busybox:
alt+ctrl+F2
и продолжить разметку следующими командами -
Отмонтировать
/target
и/target/boot/efi/
:umount /target/ /target/boot/efi/
-
Пересоздать btrfs: mkfs.btrfs /dev/mapper/vg-debacteria-system-root
-
Примонтировать файловую систему в
/mnt
:mount /dev/sda2 /mnt
-
Создать субвольюмы:
btrfs su cr /mnt/@ btrfs su cr /mnt/@home btrfs su cr /mnt/@var btrfs su cr /mnt/@opt btrfs su cr /mnt/@tmp btrfs su cr /mnt/@.snapshots
-
Примонтировать файловую систему обратно в
/target
:umount /mnt mount -o commit=120,compress-force=zstd:15,space_cache=v2,subvol=@ /dev/mapper/<NAME> /target
-
Создать папки для будушего монтирования субвольюмов:
mkdir /target/home var opt .snapshots
-
Примонтировать некорневые субвольюмы:
mount -o commit=120,compress-force=zstd:15,space_cache=v2,subvol=@home /dev/mapper/<NAME> /target/home ...
-
ctrl+alt+F1
чтобы возвратиться в меню установщика. Больше не выбирать пункт Partition Disks, иначе установщик создаст и примонтирует свой субвольюм@rootfs
в качестве корневой системы! -
Hit "install our base system" generic kernel, Kernel to install:
linux-image-amd64
-
Configure the package manager:
- mirror...
- non-free firmware: yes
- non-free software: yes
- enable source repositories: no
- services to use: security, release, backports
-
Select install software: no automatic updates, only standard system utilities
-
Participate in package usage survey: no
-
Choose software to install: only SSH and standard system utilities
-
Install the Grub boot loader: GRUB installation to the EFI removable… : No Update NVRAM: Yes (если происходит ошибка и пишет что grub dummy не может быть установлен, то нужно руками подмонтировать
efivars
и установить grub:grub-install --target=x86_64-efi --efi-directory=efi
. Иногда система может загрузиться по UEFI, но не предоставить переменные в/sys/firmware/efi/efivars/
) os-prober: yes -
Fix
/etc/fstab
:mount >> /etc/fstab
и затем поправить его:nano /etc/fstab
-
Reboot
-
На этом установка завершена, и можно начать обустраивать систему под свои нужды.
sudo apt install htop mc git neofetch btrfs-compsize attr
После этого утилиты показывают:
-
htop
: 16 tasks 1 thr 87 kthr 1 running -
neofetch
: 458 (dpkg) installed -
df -hT
: 782 Mb used (root filesystem) - memory used: 93 Mb
См. страницу Gnome
-
Установка базовых пакетов для Python:
sudo apt install python-is-python3 python3.11-venv
-
Установка pipx для нормальной современной установки полезных приложений Python (вместо
pip
):sudo apt install pipx
. Прописать директорию с бинарниками от pipx вPATH
:pipx ensurepath
-
Установа Ansible и sshpass для работы с удаленными хостами:
sudo apt install ansible sshpass
-
Настройка сети в единообразном стиле (пакет ifupdown, Network Manager, systemd. см. https://www.debian.org/doc/manuals/debian-reference/ch05.en.html)
-
Установка и настройка SSH: создать ключ, скопировать публичный ключ к репозиториям и на другие машины
-
Установка и настройка Gnome:
sudo tasksel
и выбрать Gnome. Настроить как написано здесь: Gnome -
Установка Remmina:
sudo apt install remmina
. Запускать ее в Wayland при работе с несколькими мониторами надо так:GDK_BACKEND=x11 remmina # возможно, нужно добавить GDK_SCALE=1, см. https://gitlab.com/Remmina/Remmina/-/issues/2686#note_1959773913
Тогда Remmina корректно работает с несколькими мониторами и выбирает только один, если ей указать идентификатор монитора в настройках соединения.
Также можно добавить ярлык, в котором указать необходимую переменную окружения. Для этого нужно изменить строчку
Exec=remmina -i
наExec=env GDK_BACKEND=x11 remmina -i
. -
Установка ddterm (quake-style terminal):
- Сначала скачать подходящий архив zip
- Затем установить его:
gnome-extensions install -f /path/to/[email protected]
- Перезапустить Gnome Shell (выйти и зайти обратно пользователем)
- Включить расширение: gnome-extensions enable [email protected]
-
Установка Nextcloud Desktop Client:
sudo apt install nextcloud-desktop
-
Установка
flatpak
и полезных программ, которые он предоставляет