Debian configure
Встановлення системи
Ця інструкція написана для Debian 10.3
Не буду розписувати як встановлювати Debian, скажу тільки те, що я використовую розмітку диска під LVM, все в одному розділі.
При встановленні пакетів відзначаємо тільки:
- SSH Server
- Standart system utilities
після перезавантаження вже у встановлену вісь, даємо права рута своєму користувачеві
/sbin/usermod -aG sudo ваш користувач
Встановлення необхідних програм
Після встановлення системи та налаштування мережі, підключаємось по SSH
Налаштування будемо проводити під користувачем root
su
пароль рута
оновимо репозиторій
apt-get update -yq && apt-get upgrade -yq && sync
Потім я встановлюю стандартний набір софту
apt-get install linux-headers-$(uname -r) libperl-dev gcc make gnupg net-tools sudo wget curl mc htop nano cpanminus subversion git -yq apt autoremove
Якщо система на віртуалці під KVM\QEMU, то установимо QEMU-агент для зв'язку з гіпервізором
apt install qemu-guest-agent systemctl enable qemu-guest-agent systemctl start qemu-guest-agent systemctl status qemu-guest-agent
Hystory key search
Створіть файл ~/.inputrc і додайте ці рядки:
# Respect default shortcuts. $include /etc/inputrc ## arrow up "\e[A":history-search-backward ## arrow down "\e[B":history-search-forward
зміни вступають в дію з насупним входом в систему
nano /etc/profile.d/setup_readline.sh
bind '"\e[A": history-search-backward' bind '"\e[B": history-search-forward' #export HISTCONTROL=ignoredups export HISTCONTROL=erasedups
Disabling the IPv6
nano /etc/sysctl.conf
add next
# Disabling the IPv6 net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1
execute
sudo sysctl -p sudo update-initramfs -u
check
sudo sysctl net.ipv6.conf.all.disable_ipv6
swapfile
/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 '' > /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
rc.local
Створимо файл сервісу:
sudo nano /etc/systemd/system/rc-local.service
З таким вмістом:
[Unit] Description=/etc/rc.local ConditionPathExists=/etc/rc.local [Service] Type=forking ExecStart=/etc/rc.local start TimeoutSec=0 StandardOutput=tty RemainAfterExit=yes SysVStartPriority=99 [Install] WantedBy=multi-user.target
Створимо сам rc.local:
sudo nano /etc/rc.local
#!/bin/sh -e # #rc.local # # Цей script executed на кінці шкірного multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. exit 0
Додамо права на виконання:
sudo chmod +x /etc/rc.local
Додамо сервіс в автозапуск:
sudo systemctl enable rc-local
Запускаємо сервіс:
sudo systemctl start rc-local
Дивимося стан сервісу:
sudo systemctl status rc-local
Renew ssh certs
rm -v /etc/ssh/ssh_host_* dpkg-reconfigure openssh-server
Change hostname
hostnamectl set-hostname nod2.examle.org nano /etc/hosts
Очищення
tee /etc/cron.daily/cleanup-clientmqueue<<EOF #!/bin/sh find /var/spool/clientmqueue/ -type f -delete EOF chmod +x /etc/cron.daily/cleanup-clientmqueue