Menu
Debian - Обслуживание

Debian - Обслуживание

Обслуживание Debian 

  • обновление
  • Репозитории дистрибутивов
  • Проблемы при обновлении
  • Решения других проблем

Debian обновление

0. Сделать BackUp!

1. Предварительное обновление - в пределах текущей версии

apt update
apt dist-upgrade -y
reboot
lsb_release -a

2. Смена версии

Для перехода 9->10

sed -i 's/stretch/buster/g' /etc/apt/sources.list
sed -i 's/stretch/buster/g' /etc/apt/sources.list.d/*.list

Или заменить в /etc/apt/sources.list все stretch на buster

Для перехода 10->11 

Заменить в /etc/apt/sources.list все buster на bullseye

В security - buster/updates на bullseye-security

Для перехода 11->12

Заменить в /etc/apt/sources.list все bullseye на bookworm

bullseye-updates на bookworm-updates

ullseye-security на bookworm-security

Также добавлены non-free репозитории

3. Обновление до версии

Если возникнет вопрос о перезапуске служб - Согласиться

Если возникнет вопрос о версиях конфиг-файлов - N - оставить существующие

apt-get update -y
apt upgrade --without-new-pkgs -y
apt-get full-upgrade -y
reboot
lsb_release -a
apt --purge autoremove

Репозитории дистрибутивов

https://www.geekersdigest.com/apt-etc-apt-sources-list-for-every-debian-release/

Debian 7 (Wheezy)

Archived:

deb http://archive.debian.org/debian/ wheezy main contrib non-free
deb http://archive.debian.org/debian-security wheezy/updates main contrib non-free

Debian 8 (Jessie)

Original:
deb http://deb.debian.org/debian/ jessie main contrib non-free
deb http://ftp.debian.org/debian/ jessie-updates main contrib
deb http://security.debian.org/ jessie/updates main contrib non-free

Archived:
deb http://archive.debian.org/debian/ jessie main contrib non-free
deb http://archive.debian.org/debian-security jessie/updates main contrib non-free

Debian  (Stretch)

Original:
deb http://deb.debian.org/debian/ stretch main contrib non-free
deb http://deb.debian.org/debian/ stretch-updates main contrib non-free
deb http://security.debian.org/ stretch/updates main contrib non-free

Archived (announced on March 27th 2023):
deb http://archive.debian.org/debian/ stretch main contrib non-free
deb http://archive.debian.org/debian/ stretch-proposed-updates main contrib non-free
deb http://archive.debian.org/debian-security stretch/updates main contrib non-free

Debian 10 (Buster)

Original:
deb http://deb.debian.org/debian/ buster main non-free contrib
deb http://deb.debian.org/debian/ buster-updates main non-free contrib
deb http://security.debian.org/ buster/updates main non-free contrib

Archived (announced in March 2024): deb http://archive.debian.org/debian/ buster main non-free contrib deb http://archive.debian.org/debian/ buster-updates main non-free contrib deb http://archive.debian.org/debian/ buster-proposed-updates main non-free contrib deb http://security.debian.org/ buster/updates main non-free contrib

Debian 11 (Bullseye)

Careful: Syntax change (debian-security)!

Original:
deb http://deb.debian.org/debian bullseye main contrib non-free
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb http://security.debian.org/debian-security bullseye-security main contrib non-free

Debian 12 (Bookworm)

Note: Newly added non-free-firmware area added by default

Original:
deb http://deb.debian.org/debian bookworm main contrib non-free-firmware non-free
deb http://deb.debian.org/debian bookworm-updates main contrib non-free-firmware non-free
deb http://security.debian.org/debian-security bookworm-security main contrib non-free-firmware non-free

Проблемы при обновлении

Не запускается - Не грузит grub. В rescue mode.

Восстановление Grub

1.1 Через Live

- Запустить live дистрибутив с флжшки или CD

В терминале выполнить

sudo fdisk -l

Найти linux раздел (предположить, что она была корнем /

sudo mount /dev/sda1 /mnt
ls /mnt

Должен быть каталог /boot

Установить grub  на нее

grub-install --root-directory=/mnt/ /dev/sda
reboot

Нет поддержки SMB.1 

Установить и добавить ключ версии -o vers=2.0 или даже -o vers=1.0

apt -y install smbclient cifs-utils
mount -t cifs //<server_ip>/<share> /mnt/<mountpoint> -o vers=2.0

Не работают веб-сервисы

- Переписать модули PHP для apache2 или fpm соккеты для nginx

- начиная с deb19 apache не работает с /tmp

Нужно оставить старую версию пакета - не обновлять его

Бывает нужно, когда новая работает не стабильно или старая собрана с трудом

sudo apt-mark hold <package>
apt-mark showhold

Решения других проблем 

Ошибка (обычно при установке пакетов) В PATH суперпользователя обычно должны присутствовать /usr/local/sbin, /usr/sbin и /sbin

Прописать  в /root/.bashrc строку:

export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Файловый менеджер Thunar не видит win(smb) шары и сеть

sudo apt install gvfs-backends smbclient

Установка сертификата минцифры на Lin

Проверка

curl -I https://securepayments.sberbank.ru/

Установка

wget https://gu-st.ru/content/lending/russian_trusted_sub_ca_pem.crt
wget https://gu-st.ru/content/lending/russian_trusted_root_ca_pem.crt
cp *.crt /usr/local/share/ca-certificates/
update-ca-certificates

Запуск i386 приложений на x64

apt-get install libc6-i386

Восстановление ROOT пароля

1. Перезапуск с нажатым левым shift
2. Выбрать Recovery Mode
3. В Recovery Menu выбрать root
4. Перемонтировать FS: mount -o remount,rw /
5. passwd .....

 Система в read/only

sudo su
[type password]
mount -o remount, rw /

проблема с rtl8821ce WiFi

rtl8821ce :  sudo apt install git dkms build-essential
git clone https://github.com/tomaspinho/rtl8821ce.git
cd rtl8821ce
sudo ./dkms-install.sh

Linux Problem: detected hardware unit hang interfaces : сетевые карты intel

ethtool -K enp0s25 gso off gro off tso off
ethtool -K enp0s25 tx off rx off
pcie_aspm=off
update-grub

SSH ошибка Unable to negotiate with host: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

 Добавить ключ     ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 user@host
или ssh -c aes256-cbc -oKexAlgorithms=+diffie-hellman-group1-sha1 user@host

 Ошибка GPG: .... Следующие подписи не могут быть проверены, так как недоступен открытый ключ

Ошибка GPG: https://pkg.jenkins.io/debian-stable binary/ Release: Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY 5BA31D57EF5975CA

 {PUB_KEY} = 85A3D26506C4AE2A 
$ gpg --keyserver keyserver.ubuntu.com  --recv-key 5BA31D57EF5975CA
$ gpg -a --export 5BA31D57EF5975CA | apt-key add -

Или при помощи расширенных параметров apt-key:

$ apt-key adv --recv-key --keyserver keyserver.ubuntu.com {PUB_KEY}
$ apt-key adv --recv-key --keyserver keyserver.ubuntu.com 5BA31D57EF5975CA

, где key серверы могут быть например keyserver.ubuntu.com ha.pool.sks-keyservers.net 

Согласование старых и новых протоколов SSH

Ошибки типа "no hostkey alg" и "userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]"

# Добавить в /etc/ssh/sshd_config:
HostKeyAlgorithms +ssh-rsa,ssh-dss
PubkeyAcceptedAlgorithms +ssh-rsa

Удобства и howto

заменить имя 

$ hostnamectl set-hostname server1
$ vi /etc/hosts
server1

Сделать старые (стандартные) имена сетевых устройств linux:

sudo nano /etc/default/grub

Найти  “GRUB_CMDLINE_LINUX”  вставить ”net.ifnames=0 biosdevname=0“.

sudo grub-mkconfig -o /boot/grub/grub.cfg

Справка по SCREEN

Начать сессию
screen
Выйти из сессии
CTRL+a CTRL+d
Вернуться к сессии
streen -x (-r)

Отправка e-mail из командной строки 

echo "Сообщение" | mmail -a "Content-Type: text/plain; charset=UTF-8" -s "Сабжект" test@test.tt

dd - копирование дисков

# dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync status=progress

Копирпование MBR

# dd if=/dev/sda of=/dev/sdb bs=512 count=1

Посмотреть процесс в старых версиях

# sudo kill -USR1 $(pgrep ^dd$)

Показать количество соединений в linux 

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

Перенос Debian на другое железо

- установить аналогичную версию на новом месте

 - на старом создать архив

tar -czvf old_server.tar.gz /bin/ /boot/ /etc/ /home/ /lib/ /opt/ /root/ /sbin/ /tmp/ /usr/ /var/ /srv/

- из live дистрибутива прибить вышеперечисленные папки и распаковать

Прописать сеть в /etc/network/interfaces

auto eth0
allow-hotplug eth0 #iface eth0 inet dhcp
iface eth0 inet static
     address 172.16.11.22
     netmask 255.255.255.0
     gateway 172.16.11.1
     dns-nameservers 8.8.8.8
     dns-search domain.ru

auto wlp2s0
iface wlp2s0 inet dhcp
  wpa-ssid MYSSID
  wpa-psk 87654321

Удалить network manager:

apt remove network-manager

HOTSPOT запуск точки доступа

nmcli d wifi hotspot ifname <wifi_iface> ssid <ssid> password <password>
nmcli r wifi off

Монтирование дискового раздела по UUID

blkid /dev/sdb1
/dev/sdb1: UUID="7c12436f-7cd2-4243-a0f1-bbe286ec8882" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="ad27fe6b-01"

/etc/fstab:

UUID=7c12436f-7cd2-4243-a0f1-bbe286ec8882 /mnt/data      ext4    defaults    0    2

xRDP - установка с редиректом звука

https://c-nergy.be/blog/?p=17734

sudo apt install build-essential dpkg-dev libpulse-dev git autoconf libtool xrdp
cd ~
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git
cd pulseaudio-module-xrdp
scripts/install_pulseaudio_sources_apt_wrapper.sh
если закончилось этой строкой, то всё ок
- All done. Configure PA xrdp module with PULSE_DIR=/home/<%user%>/pulseaudio.src
./bootstrap && ./configure PULSE_DIR=~/pulseaudio.src
make
sudo make install

Для проверки запустить

ls $(pkg-config --variable=modlibexecdir libpulse) | grep xrdp

При проблемах смены рпскладки из сессии xRDP

setxkbmap -option 'grp:alt_shift_toggle,grp:switch,grp_led:scroll,compose:menu' -layout 'us,ru'

VirtualBOX - пример установки в Debian 11 версии 7.0.12

$ wget https://download.virtualbox.org/virtualbox/7.0.12/virtualbox-7.0_7.0.12-159484~Debian~bullseye_amd64.deb
$ wget https://download.virtualbox.org/virtualbox/7.0.12/Oracle_VM_VirtualBox_Extension_Pack-7.0.12.vbox-extpack
$ sudo apt update
$ sudo apt install linux-headers-$(uname -r) dkms -y
$ sudo dpkg -i virtualbox-7.0_7.0.12-159484~Debian~bullseye_amd64.deb
$ sudo usermod -aG vboxusers $USER
$ newgrp vboxusers
$ sudo vboxmanage extpack install Oracle_VM_VirtualBox_Extension_Pack-7.0.12.vbox-extpack

Где SYSLOG в debian 12 ?

а всё.. теперь journalctl 

$ journalctl -b - вывод записей с момента последней загрузки
$ journalctl -S "2024-09-10 12:00" -U "2024-09-10 12:10" - вывод записей за определенный период времени
$ journalctl -u ssh - вывод записей, принятых от определенной службы
$ journalctl -k - вывод сообщений ядра
$ journalctl -p err - вывод сообщений с определенным приоритетом, в данном случае будут выведены ошибки и более высокие приоритеты(crit, alert, emerg)
$journalctl -f - вывод сообщений в реальном времени

но если всё же очень надо, то 

$ sudo apt install rsyslog
$ systemctl status rsyslog

Показать количство процессов по убыванию

 ps ax | awk '{print $5}' | sort | uniq -c | sort -n -r | head -10 

Lisolog / 2023