Установка Debian 12 и Ubuntu 22.04 через debootstrap

Инструкция по установке Debian 12 и Ubuntu 22.04, создание Live USB, используя утилиту debootstrap

Также видеоинструкция установки Ubuntu через IMG файл и создание USB флешки

Установка необходимых программ

Установите программы на хост систему

apt-get update
apt-get install -y debootstrap openbios-ppc openbios-sparc openhackware \
  qemu qemu-kvm ovmf grub-efi-amd64-bin grub-efi-ia32-bin grub-pc-bin

Создайте папку, куда будет установлена система

sudo su -l
mkdir -p /media/debian/root
mkdir -p /media/debian/root/etc/apt

Подготовка среды через debootstrap для Debian

Если вы хотите установить Debian

1) Настройте зеркало используя сайт https://www.debian.org/mirror/list

2) Сделайте debootstrap

export DEBIAN_MIRROR="http://cdn-fastly.deb.debian.org"
export DEBIAN_VERSION="bookworm"

cd /media/debian
debootstrap --arch amd64 $DEBIAN_VERSION root $DEBIAN_MIRROR/debian

3) Настройте sources.list

cat > /media/debian/root/etc/apt/sources.list << EOF
deb $DEBIAN_MIRROR/debian/ $DEBIAN_VERSION main contrib non-free non-free-firmware
deb-src $DEBIAN_MIRROR/debian/ $DEBIAN_VERSION main contrib non-free non-free-firmware

deb $DEBIAN_MIRROR/debian/ $DEBIAN_VERSION-updates main contrib non-free non-free-firmware
deb-src $DEBIAN_MIRROR/debian/ $DEBIAN_VERSION-updates main contrib non-free non-free-firmware

deb https://security.debian.org/debian-security/ $DEBIAN_VERSION-security main contrib non-free non-free-firmware
deb-src https://security.debian.org/debian-security/ $DEBIAN_VERSION-security main contrib non-free non-free-firmware

deb $DEBIAN_MIRROR/debian/ $DEBIAN_VERSION-backports main contrib non-free non-free-firmware
deb-src $DEBIAN_MIRROR/debian/ $DEBIAN_VERSION-backports main contrib non-free non-free-firmware

EOF

Подготовка среды через debootstrap для Ubuntu

Если вы хотите установить Ubuntu, вместо Debian, то выполните следующие комманды:

1) Настройте зеркало используя сайт https://launchpad.net/ubuntu/+archivemirrors

2) Сделайте debootstrap

export DEBIAN_MIRROR="http://en.archive.ubuntu.com"
export DEBIAN_VERSION="jammy"

cd /media/debian
debootstrap --arch amd64 $DEBIAN_VERSION root $DEBIAN_MIRROR/ubuntu

3) Настройте sources.list

cat > /media/debian/root/etc/apt/sources.list << EOF
deb $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION main universe restricted multiverse
deb-src $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION main universe restricted multiverse

deb $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION-updates main universe restricted multiverse
deb-src $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION-updates main universe restricted multiverse

deb $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION-security main universe restricted multiverse
deb-src $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION-security main universe restricted multiverse

deb $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION-backports main universe restricted multiverse
deb-src $DEBIAN_MIRROR/ubuntu/ $DEBIAN_VERSION-backports main universe restricted multiverse
EOF

Начальные настройки

Скопируйте resolv.conf

yes | cp /etc/resolv.conf /media/debian/root/etc/resolv.conf

Смонтируйте необходимые папки: 

mount -t proc proc /media/debian/root/proc
mount -t sysfs sys /media/debian/root/sys
mount -o bind /dev /media/debian/root/dev
mount -t devpts none /media/debian/root/dev/pts

Установите локаль:

cat > /media/debian/root/etc/profile.d/0.locale.sh << EOF
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"
export LANG
export LANGUAGE
EOF

cat > /media/debian/root/etc/profile.d/0.editor.sh << EOF
export EDITOR=nano
EOF

echo "en_US.UTF-8 UTF-8" >> /media/debian/root/etc/locale.gen
echo "ru_RU.UTF-8 UTF-8" >> /media/debian/root/etc/locale.gen

Установка ПО

Сделайте chroot:

chroot /media/debian/root

Установите базовое ПО:

apt-get update
apt-get install -y locales apt-utils aptitude apt-rdepends
aptitude upgrade -y
apt-get install -y bash-completion bsdmainutils psmisc uuid-runtime \
  htop mc nano curl pv dnsutils sudo man-db anacron iotop preload git cmake \
  g++ openssh-client wget unrar unar zip unzip p7zip-full rar inxi attr libnotify-bin \
  traceroute bridge-utils mtools xfsprogs network-manager rsync dnsmasq python3-pynput \
  network-manager-gnome iptables-persistent net-tools dnsutils linux-base dbus \
  grub-efi grub-efi-amd64-bin grub-efi-ia32-bin grub-pc-bin openntpd python3-pip \
  libnss-nis libnss-nisplus whois

Установите Openbox и LXQT:

apt-get install -y flatpak lxqt xorg xterm xxkb xkbind gxkb openbox \
  sddm sddm-theme-maldives gnome-disk-utility smbclient compton \
  breeze breeze-gtk-theme kde-cli-tools kde-spectacle obconf-qt \
  scrot software-properties-gtk kcalc konsole dolphin dconf-editor \
  gnome-screensaver fonts-noto-core fonts-dejavu fonts-freefont-ttf \
  font-manager kitty kcolorchooser vlc ark

Установка браузера:

flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.mozilla.firefox

Установка Google Chrome

Добавьте ключ

apt-key adv --keyserver keyserver.ubuntu.com  --recv 4EB27DB2A3B88B8B
apt-key export 4EB27DB2A3B88B8B | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/google-chrome.gpg

Добавьте репозиторий Google Chrome

cat > /etc/apt/sources.list.d/google-chrome.list << EOF
deb [arch=amd64] https://dl.google.com/linux/chrome/deb/ stable main
EOF

Установите браузер

apt-get update
apt-get install -y google-chrome-stable 

Установка ядра и драйверов для Debian

Ядро

apt-get install -y linux-image-generic dkms linux-headers-amd64

Драйвера

apt-get install -y firmware-misc-nonfree

Драйвера Realtek:

apt-get install -y firmware-realtek

Драйвера Nvidia (лучше их устанавливать когда уже загрузитесь с флешки):

apt-get install -y --install-recommends nvidia-driver
echo "options nvidia-drm modeset=1" > /etc/modprobe.d/nvidia-drm-nomodeset.conf

Возможно потребуется установить:

apt-get install linux-modules-nvidia-525-generic linux-modules-nvidia-525-generic-hwe-22.04

Установка ядра для Ubuntu

Ядро

apt-get install -y linux-generic linux-generic-hwe-22.04 linux-tools-generic-hwe-22.04 linux-firmware dkms

Удаление лишних программ

Удалите пакет ifupdown и resolvconf

apt-get purge apparmor ifupdown resolvconf connman cmst geoclue-2.0 modemmanager xfwm4 xfwm4-theme-breeze obconf xscreensaver gnome-keyring gnome-power-manager gnome-session-bin smplayer
apt autoremove

Очистите кэш

apt-get clean all

Настройка часового пояса

Вместо Asia/Almaty укажите свой часовой пояс

timedatectl set-timezone Asia/Almaty

cat > /etc/profile.d/0.datetime.sh << EOF
TZ='Asia/Almaty'
export TZ
EOF

Обновление времени

cp /etc/openntpd/ntpd.conf /etc/openntpd/ntpd.orig.conf
echo "servers pool.ntp.org" > /etc/openntpd/ntpd.conf

Настройка клавиатуры

Сконфигурируйте раскладку клавиатуры на переключение через Alt+Shift

nano /etc/default/keyboard

# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="us,ru"
XKBVARIANT=""
XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"

BACKSPACE="guess"

Настройка приветствия

Откройте файл

nano /etc/profile.d/0.welcome.sh

Вставьте текст 

if [[ `whoami` = "root" ]]; then
    HILIT="\e[0;91m"
else
    HILIT="\e[0;94m"
fi

HOSTNAME=`hostname`
PS1="\[${HILIT}\][\u@${HOSTNAME} \W]\\$ \[\e[0m\]"
export PS1

Создание пользователя

Создайте пользователя ubuntu

echo "%wheel ALL=(ALL:ALL) NOPASSWD: ALL" >> /etc/sudoers
useradd -m --shell /bin/bash user
usermod -a -G sudo user
groupadd -r wheel
usermod -a -G wheel user
chmod 700 /home/user
chown -R user:user /home/user

Установите пароль для root

passwd

Установите пароль для пользователя user

passwd user

Настройка home directory

Скачайте готовый конфиг с сайта

cd /home/user
git clone https://github.com/bayrell-os/lxqt_home
cp -rfT lxqt_home/src $HOME
rm -rf lxqt_home
chown -R user:user /home/user

Настройка SDDM

SDDM - это менеджер входа в систему, где вы вводите логин и пароль от аккаунта

Настройте sddm в качестве display manager по умолчанию:

echo "/usr/bin/sddm" > /etc/X11/default-display-manager 
sddm --example-config > /etc/sddm.conf

Укажите в /etc/sddm.conf тему maldives:

sed -i 's|Session=.*|Session=openbox.dektop|g' /etc/sddm.conf
sed -i 's|Current=.*|Current=maldives|g' /etc/sddm.conf
sed -i 's|CursorTheme=.*|CursorTheme=breeze_cursors|g' /etc/sddm.conf

Если вы хотите сделать автоматический вход для пользователя use то укажите:

sed -i 's|User=.*|User=user|g' /etc/sddm.conf

Укажите иконки по умолчанию:

update-alternatives --set x-cursor-theme /etc/X11/cursors/breeze_cursors.theme

Настройка NetworkManager

Измените настройки /etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile
dns=none

[ifupdown]
managed=false

[device]
wifi.scan-rand-mac-address=no

Создайте файл /usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf

[keyfile]
unmanaged-devices=*,except:type:ethernet,except:type:wifi,except:type:gsm,except:type:cdma,interface-name:lxc*,interface-name:docker*,interface-name:virtual*,interface-name:veth*

Отключите сервисы systemd и avahi

systemctl disable systemd-networkd.socket
systemctl disable systemd-networkd.service
systemctl disable systemd-resolved.service
systemctl disable avahi-daemon.service
systemctl disable avahi-daemon.socket

Поменяйте файл /etc/resolv.conf

rm -f /etc/resolv.conf
echo "nameserver 127.0.0.1" > /etc/resolv.conf

Создайте файл /etc/dnsmasq.conf

port=53
#listen-address=0.0.0.0
no-dhcp-interface=
bind-interfaces
expand-hosts
local-ttl=1
no-negcache

# Динамические настройки DNS
resolv-file=/run/NetworkManager/resolv.conf

# Настройки DNS по умолчанию
#resolv-file=/etc/resolv.dnsmasq

conf-dir=/etc/dnsmasq.d
cache-size=150
max-cache-ttl=600
min-cache-ttl=60

# Одновременный запрос ко всем DNS серверам
# all-servers

# Запрещаем резолвить домены без точки (нужно для Docker Swarm)
domain-needed

# Для отладки
#log-queries

Раскоментируйте строку в файле /etc/default/dnsmasq

IGNORE_RESOLVCONF=yes

Выключите резолвер из внешней сети интернет. Создайте файл /etc/dnsmasq.d/disable-external-network

bind-interfaces
except-interface=eth*
except-interface=enp*
except-interface=wlan*
except-interface=wlp*

Создайте файл /etc/NetworkManager/dispatcher.d/99-dnsmasq

#!/bin/bash

if [[ "$2" = "up" || "$2" = "down" ]]; then
    kill -9 `cat /var/run/dnsmasq/dnsmasq.pid`
    systemctl start dnsmasq
fi

Установка hostname

Укажите название хоста

echo "liveusb" > /etc/hostname

Добавьте локальный IP адрес

echo "127.0.0.1 liveusb" >> /etc/hosts

Установите BFQ

BFQ это диспетчер I/O. Это улучшенная версия, которая позволяет ускорить работу с системой. Подробнее про BFQ

Откройте файл

nano /etc/default/grub

В параметр GRUB_CMDLINE_LINUX_DEFAULT нужно добавить строчку scsi_mod.use_blk_mq=1 а также убрать слово quiet

Пример:

GRUB_CMDLINE_LINUX_DEFAULT="acpi_backlight=none scsi_mod.use_blk_mq=1"

acpi_backlight - это яркость экрана. Возможные значения:

  • video
  • vendor
  • none

Если яркость экрана не будет меняться, то попробуйте изменить эти параметры, или убрать acpi_backlight=none

Добавить BFQ

echo 'bfq' >> /etc/initramfs-tools/modules
echo 'ACTION=="add|change", KERNEL=="sd*[!0-9]|sr*", ATTR{queue/scheduler}="bfq"' >> /etc/udev/rules.d/60-scheduler.rules

Настройка GRUB

Откройте файл с настройками grub

nano /etc/default/grub

Следует установить строки

GRUB_DEFAULT=0
#GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=5
GRUB_DISABLE_OS_PROBER=true
GRUB_DISTRIBUTOR="Live USB Debian"
#GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="acpi_backlight=none scsi_mod.use_blk_mq=1"
GRUB_CMDLINE_LINUX=""

Настройка iptables

Iptables нужно ставить всегда обязательно. Это фаерволл, который защищает систему он внешних атак. Откройте редактор файла /etc/iptables/rules.v4

nano /etc/iptables/rules.v4

Вставьте следующее содержимое:

*filter
:INPUT ACCEPT [19:913]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [39:3584]
:ALLOW-INPUT - [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT

# Разрешаем входящие соединения ssh
#-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

# Разрешить http
#-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT

# Перейти к цепочке ALLOW-INPUT
-A INPUT -j ALLOW-INPUT

# Запрещаем остальные входящие соединения
-A INPUT -j REJECT
-A FORWARD -j REJECT

-A ALLOW-INPUT -j RETURN

COMMIT

Скопируйте rules.v4 в rules.v6

cp /etc/iptables/rules.v4 /etc/iptables/rules.v6

Настройка udisks2

 udisks2 отвечает за подключение флешек и разных устройств. Рекомендуется добавить параметр sync для более корректной работы с USB устройствами

Откройте файл

nano /etc/udisks2/mount_options.conf

Вставьте содержимое

[defaults]
vfat_defaults=uid=$UID,gid=$GID,shortname=mixed,utf8=1,showexec,flush,sync
ntfs_defaults=uid=$UID,gid=$GID,windows_names,sync,relatime

Установка gnome screensaver

Выполните команду

cat > /etc/xdg/autostart/lxqt-gnome-screensaver.desktop << EOF
[Desktop Entry]
Comment=Screensaver
Exec=gnome-screensaver
GenericName=GNOME Screensaver
Name=GNOME Screensaver
OnlyShowIn=LXQt;
TryExec=gnome-screensaver
Type=Application
EOF

Установка picom

Выполните команду

cat > /etc/xdg/autostart/lxqt-picom.desktop << EOF
[Desktop Entry]
Comment=A X compositor
Exec=picom --backend glx --vsync
GenericName=X compositor
Name=Picom (X Compositor)
OnlyShowIn=LXQt;
TryExec=compton
Type=Application
EOF

Настройка монитора

Выполните команду

cat > /etc/xdg/autostart/lxqt-monitor.desktop << EOF
[Desktop Entry]
Comment=Monitor Settings
Exec=sh -c \\'sleep 60 && xset dpms 200 200 200 && xset -dpms && xset s off\\'
GenericName=Monitor Always ON
Name=Monitor Always ON
OnlyShowIn=LXQt;
Type=Application
EOF

Настройка pulseaudio

Создайте файл

nano /etc/pulse/default.pa.d/pulse-socket.pa

Пропишите строчку

load-module module-native-protocol-unix auth-anonymous=1 socket=/tmp/pulse-socket

Настройка Flatpak

Чтобы курсор во Flatpak приложениях был одинаковым, выполните:

flatpak override --user --filesystem=$HOME/.icons/:ro
flatpak override --user --filesystem=/usr/share/icons/:ro
flatpak override --user --filesystem=xdg-config/gtk-3.0:ro
flatpak override --user --env GTK_USE_PORTAL=1

Установка дополнительных скриптов

Скачайте скрипты

cd /opt
git clone https://github.com/bayrell-os/desktop_scripts

Добавьте правила в sudoers

echo "user ALL = NOPASSWD: /opt/scripts/brightness.sh" >> /etc/sudoers

Установка libssl 1.1

cd /src
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Проверьте md5 сумму. Она должна быть равна 1cd1b6ba2a30a42580c01e92a6278281

$ md5sum -b *
1cd1b6ba2a30a42580c01e92a6278281 *libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Установите libssl

dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Отключение автообновлений

Откройте файл /etc/apt/apt.conf.d/20auto-upgrades и установите значение "0" для Unattended-Upgrade

APT::Periodic::Unattended-Upgrade "0";

Отключите автозапуск

systemctl stop unattended-upgrades
systemctl disable unattended-upgrades

Прочие настройки

Установите лимиты на размер journalctl и время ожидания запуска сервисов

echo "SystemMaxUse=128M" >> /etc/systemd/journald.conf
echo "DefaultTimeoutStartSec=60" >> /etc/systemd/system.conf
echo "DefaultTimeoutStopSec=30" >> /etc/systemd/system.conf

Завершение настроек

Выйдите из chroot

exit

Отмонтируйте папки

umount /media/debian/root/proc
umount /media/debian/root/sys
umount /media/debian/root/dev/pts
umount /media/debian/root/dev

Удалите содержимое папки dev

rm -rf /media/debian/root/dev/*

Установка завершена!

Форматирование флешки

Дальше идет инструкция переноса данных на флешку

Узнайте на каком устройстве смонтирована флешка командой

fdisk -l

Обычно это /dev/sdb, но у вас оно может быть другим.

В данной инструкции будет применяться /dev/sdb, вы должны будете указать свое устройство

Выполните команду создания GPT разметки для img файла

parted /dev/sdb mklabel gpt

Запустите программу управления дисками

cfdisk /dev/sdb

Создайте primary раздел на весь диск

  Size Type
1 100M EFI System
2 All space Linux root (x86-64)

 Выведите на экран результат

fdisk -lu /dev/sdb

Должно вывести

Disk /dev/sdb: 29,7 GiB, 31914983424 bytes, 62333952 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: D6857A30-CA82-4F07-8189-928A5DF74020

Device      Start      End  Sectors  Size Type
/dev/sdb1    2048   206847   204800  100M EFI System
/dev/sdb2  206848 62333918 62127071 29,6G Linux root (x86-64)

Создайте файловую систему

mkfs.vfat -F32 /dev/sdb1
mkfs.ext4 -L live_usb /dev/sdb2

Проверьте файловую систему

fsck -fv /dev/sdb1
fsck -fv /dev/sdb2

 Проверьте правильно ли создали разметку

parted /dev/sdb print

У меня выдало следующее:

Model: Mass Storage Device (scsi)
Disk /dev/sdb: 31,9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  106MB   105MB   fat32              boot, esp
 2      106MB   31,9GB  31,8GB  ext4

Перенос файлов на флешку

Смонтируйте флешку

mount /dev/sdb2 /mnt

mkdir -p /mnt/boot/efi
mkdir -p /mnt/{proc,sys,dev,tmp}
mkdir -p /mnt/dev/pts

mount /dev/sdb1 /mnt/boot/efi
mount -t proc proc /mnt/proc
mount -t sysfs sys /mnt/sys
mount -o bind /dev /mnt/dev
mount -t devpts none /mnt/dev/pts

Затем сделайте rsync

rsync -aSsuh --info=progress2 --numeric-ids --bwlimit=10240 --delete \
  --exclude 'boot/efi' --exclude 'dev' --exclude 'proc' --exclude 'sys' --exclude 'tmp' \
  /media/debian/root/ /mnt/

Выполните синхронизацию

sync -f && fstrim -av

Cконфигурируйте fstab

Выполните комманду:

blkid

Она выдаст UUID дисков. Примерно следующее:

/dev/sdb1: UUID="EBEC-F6A2" TYPE="vfat" PARTUUID="252be12a-395c-d648-baa9-abba0ed42877"
/dev/sdb2: LABEL="live_usb" UUID="16337269-4de0-4503-a2ee-e7dbd896866c" TYPE="ext4" PARTUUID="d32191ba-09f2-e842-b3b8-1ff747359a85"

Откройте файл fstab для редактирования.

nano /mnt/etc/fstab

ID дисков нужно прописать в fstab.

Обратите внимание. У вас может отличаться UUID. Прописывайте свои UUID, которые выдала вам программа blkid

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=16337269-4de0-4503-a2ee-e7dbd896866c   /               ext4    errors=remount-ro  0  1
UUID=EBEC-F6A2                              /boot/efi       vfat    umask=0077         0  1

Установка загрузчика GRUB

Сделайте chroot

chroot /mnt

 Установите загрузчик

Обратите внимание, на какой диск устанавливаете загрузчик. Обычно это /dev/sdb, но может быть другой диск

grub-install --target=x86_64-efi --bootloader-id=liveusb \
  --boot-directory=/boot --removable --recheck \
  --no-floppy /dev/sdb

update-initramfs -u
update-grub

Выйдите из chroot

exit

Отмонтируйте папки

umount /mnt/proc
umount /mnt/sys
umount /mnt/dev/pts
umount /mnt/dev
umount /mnt/boot/efi
umount /mnt

Выполните синхронизацию

sync -f

Загрузочная флешка готова!

Проверка через QEMU

 Запустите qemu с параметрами

qemu-system-x86_64 -m 2G -cpu host -enable-kvm \
  -bios /usr/share/ovmf/OVMF.fd \
  -netdev user,id=net0 -device virtio-net-pci,netdev=net0 \
  -drive format=raw,media=disk,file=/dev/sdb

Загрузитесь в Qemu и запустите рабочее окружение. Вы можете настроить его по своему усмотрению, настроить обои, темы, шрифты, раскладку клавиатуры и т.п. У меня, например, при загрузке не правильно отображался рабочий стол. Это можно исправить в настройках LXQT.

Исправление ошибок

Данные действия нужно выполнять, если входе инструкции у вас возникли определенные ошибки

1) Если выходит ошибка:

W: Cannot check Release signature; keyring file not available /usr/share/keyrings/debian-archive-keyring.gpg

выполните для Ubuntu:

apt-get install debian-keyring debian-archive-keyring

выполните для Debian:

apt-get install ubuntu-archive-keyring

2) Если выходит ошибка

W: Cannot check Release signature; keyring file not available /usr/share/keyrings/ubuntu-archive-keyring.gpg

Выполните

apt-get install debian-keyring debian-archive-keyring
cp /usr/share/keyrings/debian-archive-keyring.gpg /usr/share/keyrings/ubuntu-archive-keyring.gpg
gpg --list-keys
gpg --no-default-keyring --keyring /usr/share/keyrings/ubuntu-archive-keyring.gpg --keyserver keyserver.ubuntu.com --recv 871920D1991BC93C

3) Если выходит ошибка

Release signed by unknown key (key id F8D2585B8783D481)

начит нужно установить ключ в /usr/share/keyrings/debian-archive-keyring.gpg

Выполните команду:

gpg --no-default-keyring --keyring /usr/share/keyrings/debian-archive-keyring.gpg --keyserver keyserver.ubuntu.com --recv F8D2585B8783D481

Если не работает, то эту:

wget "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x4d64fec119c2029067d6e791f8d2585b8783d481" -O "debian-bookworm.gpg"
gpg --no-default-keyring --keyring /usr/share/keyrings/debian-archive-keyring.gpg --import debian-bookworm.gpg

Посмотреть список установленных ключей:

gpg --no-default-keyring --keyring /usr/share/keyrings/debian-archive-keyring.gpg --list-keys

4) Если выходит ошибка:

E: No such script: /usr/share/debootstrap/scripts/bookworm

то создайте симлинк:

cd /usr/share/debootstrap/scripts
ln -s sid bookworm

Убрать автомонтирование устройств для udisk

Эту опцию можно пропустить

Создайте файл

nano /etc/udev/rules.d/99-udisk.rules

С содержимым

SUBSYSTEM=="block", ENV{ACTION}=="add", ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{UDISKS_IGNORE}="1", ENV{UDISKS_PRESENTATION_HIDE}="1"

Полезное

  1. udev rules file that automatically mount usb devices