debian:install

Debian configure

Ця інструкція написана для Debian 12.10

Не буду розписувати як встановлювати Debian, скажу тільки те, що я використовую розмітку диска під LVM, все в одному розділі.

При встановленні пакетів відзначаємо тільки:

  • SSH Server
  • Standart system utilities

після перезавантаження вже у встановлену OS, даємо права рута своєму користувачеві

apt install sudo
/sbin/usermod -aG sudo ваш користувач

якщо не хочемо повторно вводити свій пароль при виконанні sudo змінимо налаштування для групи 'sudo':

sudo sed -i 's/^%sudo\s\+ALL=(ALL:ALL)\s\+ALL/%sudo\tALL=(ALL:ALL) NOPASSWD:ALL/' /etc/sudoers

Покращимо навігацію та зберігання історії введених команд

cat <<EOT >> ~/.bashrc
eval "$(dircolors -b)"                # Підтримка кольорів у терміналі
export LS_OPTIONS='--color=auto'
alias ls='ls $LS_OPTIONS'
alias ll='ls $LS_OPTIONS -l'
alias l='ls $LS_OPTIONS -lA'
alias df='df -h -x tmpfs'
alias du='du -sh'
 
# ===== [ІСТОРІЯ КОМАНД] =====
# Увімкнути розширення історії лише в інтерактивному режимі
if [[ $- == *i* ]]; then
#    shopt -s histappend 2>/dev/null   # Додає до історії, а не перезаписує
#    shopt -s cmdhist 2>/dev/null      # Команди в одному рядку записуються повністю
    shopt -s lithist 2>/dev/null      # Зберігає багаторядкові команди з перенесенням
fi
export PROMPT_COMMAND="history -a; history -n" # Зберігає історію в реальному часі (після кожної команди)
export HISTSIZE=10000 # Кількість команд у сесії
export HISTFILESIZE=20000 # Кількість команд у файлі
export HISTCONTROL=ignoreboth:erasedups # Ігнорує дублікати та команди з пробілом; знищує дублікати з історії
export HISTIGNORE='ls:ps:history*:cd ..:clear:EOT:EOL:EOF' # Не зберігати певні команди в історії
# ===== [АВТОДОПОВНЕННЯ] =====
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
elif [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
fi
EOT
source ~/.bashrc

Створюємо файл ~/.inputrc:

cat <<EOT >> ~/.inputrc
# Respect default shortcuts.
\$include /etc/inputrc
## arrow up
"\e[A":history-search-backward
## arrow down
"\e[B":history-search-forward
EOT
bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward'

Після встановлення системи та налаштування мережі, підключаємось по SSH

Налаштування будемо проводити під користувачем root

sudo -s
вводимо пароль, якщо потрібно

оновимо репозиторій

apt -yq update -yq && apt -yq upgrade && apt full-upgrade && sync

Потім я встановлюю стандартний набір софту

apt -yq install linux-headers-$(uname -r) gcc make gnupg net-tools wget curl mc htop nano
apt -yq install libperl-dev cpanminus subversion git
apt -yq autoremove

Можемо зразу змінити текстовий редактор за замовчуванням командою

select-editor

вона покаже такий вивід:

Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/mcedit
  3. /usr/bin/vim.tiny
 
Choose 1-3 [1]:

Я обираю nano

Якщо система на віртуалці під KVM\QEMU, то установимо QEMU-агент для зв'язку з гіпервізором

apt install qemu-guest-agent
 
systemctl enable qemu-guest-agent
systemctl start qemu-guest-agent
systemctl status qemu-guest-agent
cat <<EOT > /etc/cron.daily/cleanup-clientmqueue
#!/bin/sh
find /var/spool/clientmqueue/ -type f -delete
EOT
chmod +x /etc/cron.daily/cleanup-clientmqueue

За потреби, особливо після клонування віртуалок, на новій вм бажано оновити сертифікати і ідентифікатор машини

rm -v /etc/ssh/ssh_host_*
dpkg-reconfigure openssh-server

cat /var/lib/dbus/machine-id /etc/machine-id
rm /etc/machine-id /var/lib/dbus/machine-id && dbus-uuidgen --ensure && systemd-machine-id-setup
cat /var/lib/dbus/machine-id /etc/machine-id
hostnamectl set-hostname nod2.examle.org
nano /etc/hosts

В разі не використання IPv6 їх краще вимкнути

cat <<EOT > /etc/sysctl.d/no_ipv6.conf
# Disabling the IPv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
EOT
sysctl -f
update-initramfs -u

Перевіримо

sysctl net.ipv6.conf.all.disable_ipv6

/swapfile https://linuxize.com/post/how-to-add-swap-space-on-debian-10/

 11 sudo swapoff -a
 13 sudo su
     lvdisplay
 14 lvremove /dev/mapper/debian-vg-swap_1
 15 sudo fallocate -l 8G /swapfile
 16 sudo chmod 600/swapfile
 17 sudo mkswap /swapfile
 18 sudo swapon /swapfile
 19 sudo nano /etc/fstab
 20 /swapfile swap swap defaults 0 0
 21 echo 'RESUME=none' > /etc/initramfs-tools/conf.d/resume
 22 lvresize -l +100%FREE /dev/mapper/debian--vg-root
 22 resize2fs /dev/mapper/debian-vg-root
 23 update-initramfs -u
 24 update-grub
 25 reboot
 26 sudo su

if completly remove swap - comment line in /etc/fstab.conf

in /etc/initramfs-tools/conf.d/resume set

# RESUME=UUID=<whatever UUID>
RESUME=none
sudo update-initramfs -uk all
Цей сайт використовує кукі. Перебуваючи тут, ви погоджуєтеся з їх зберіганням на вашому комп'ютері. Також ви підтверджуєте, що прочитали і зрозуміли нашу Політику конфіденційності. Якщо ви не згодні - покиньте сайт.Більше інформації про куки