debian:install

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версій Попередня ревізія
Наступна ревізія
Попередня ревізія
debian:install [2024/12/06 21:14] – [Hystory key search] Methoddebian:install [2025/05/01 08:32] (поточний) – [Встановлення необхідних програм] Method
Рядок 1: Рядок 1:
 +{{indexmenu_n>1}}
 ====== Debian configure ====== ====== Debian configure ======
  
 ===== Встановлення системи ===== ===== Встановлення системи =====
-Ця інструкція написана для Debian 10.3+Ця інструкція написана для Debian 12.10
  
 Не буду розписувати як встановлювати Debian, скажу тільки те, що я використовую розмітку диска під LVM, все в одному розділі. Не буду розписувати як встановлювати Debian, скажу тільки те, що я використовую розмітку диска під LVM, все в одному розділі.
Рядок 10: Рядок 11:
   * Standart system utilities   * Standart system utilities
  
-після перезавантаження вже у встановлену вісь, даємо права рута своєму користувачеві+після перезавантаження вже у встановлену OS, даємо права рута своєму користувачеві
 <code bash> <code bash>
 +apt install sudo
 /sbin/usermod -aG sudo ваш користувач /sbin/usermod -aG sudo ваш користувач
 </code> </code>
 +якщо не хочемо повторно вводити свій пароль при виконанні ''sudo'' змінимо налаштування для групи 'sudo':  
 +  sudo sed -i 's/^%sudo\s\+ALL=(ALL:ALL)\s\+ALL/%sudo\tALL=(ALL:ALL) NOPASSWD:ALL/' /etc/sudoers
 ===== Встановлення необхідних програм ====== ===== Встановлення необхідних програм ======
  
Рядок 21: Рядок 24:
 Налаштування будемо проводити під користувачем root Налаштування будемо проводити під користувачем root
 <code bash> <code bash>
-su +sudo -s 
-пароль рута+вводимо пароль, якщо потрібно
 </code> </code>
  
 оновимо репозиторій оновимо репозиторій
 <code bash> <code bash>
-apt-get update -yq && apt-get upgrade -yq && sync+apt -yq update -yq && apt -yq upgrade && apt full-upgrade && sync 
 </code> </code>
  
 Потім я встановлюю стандартний набір софту Потім я встановлюю стандартний набір софту
 <code bash> <code bash>
-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 -yq install linux-headers-$(uname -r) gcc make gnupg net-tools wget curl mc htop nano 
-apt autoremove+apt -yq install libperl-dev cpanminus subversion git 
 +apt -yq autoremove
 </code> </code>
 +
 +Можемо зразу змінити текстовий редактор за замовчуванням командою
 +  select-editor
 +вона покаже такий вивід:
 +<code bash>
 +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]:
 +</code>
 +Я обираю ''nano''
  
 Якщо система на віртуалці під KVM\QEMU, то установимо QEMU-агент для зв'язку з гіпервізором Якщо система на віртуалці під KVM\QEMU, то установимо QEMU-агент для зв'язку з гіпервізором
Рядок 47: Рядок 65:
 ===== Hystory key search ===== ===== Hystory key search =====
  
-Створіть файл ~/.inputrc і додайте ці рядки:+Створюємо файл ~/.inputrc:
 <code bash> <code bash>
 +cat <<EOT >> ~/.inputrc
 # Respect default shortcuts. # Respect default shortcuts.
-$include /etc/inputrc +\$include /etc/inputrc
 ## arrow up ## arrow up
 "\e[A":history-search-backward "\e[A":history-search-backward
 ## arrow down ## arrow down
 "\e[B":history-search-forward "\e[B":history-search-forward
 +EOT
 </code> </code>
-зміни вступають в дію з насупним входом в систему 
- 
- 
-nano /etc/profile.d/setup_readline.sh 
  
 +зміни вступають в дію з насупним входом в систему або з виконанням:
   bind '"\e[A": history-search-backward'   bind '"\e[A": history-search-backward'
   bind '"\e[B": history-search-forward'   bind '"\e[B": history-search-forward'
-  export HISTCONTROL=ignoreboth:erasedups 
  
 +<code bash>
 +cat <<EOT >> ~/.bashrc
 +# Зберігає історію команд в реальному часі
 +export PROMPT_COMMAND="history -a; history -n"
 +# Кількість команд в поточній сесії
 +export HISTSIZE=10000
 +# Кількість команд в файлі історії
 +export HISTFILESIZE=20000
 +# Кількість команд в файлі історії
 +export HISTCONTROL=ignoreboth:erasedups
 +# Ігнорує перелік вказаних команд
 +export HISTIGNORE='ls:ps:history*'
 +# Додає нові записи до історії, а не перезаписує
 +shopt -s histappend
 +EOT
 +source ~/.bashrc
 +</code>
 +
 +===== Очищення локальної пошти =====
 +
 +<code bash>
 +cat <<EOT > /etc/cron.daily/cleanup-clientmqueue
 +#!/bin/sh
 +find /var/spool/clientmqueue/ -type f -delete
 +EOT
 +chmod +x /etc/cron.daily/cleanup-clientmqueue
 +</code>
 +
 +===== Renew ssh certs =====
 +
 +За потреби, особливо після клонування віртуалок, на новій вм бажано оновити сертифікати
 +
 +  rm -v /etc/ssh/ssh_host_*
 +  dpkg-reconfigure openssh-server
 +
 +
 +===== Change hostname =====
 +
 +  hostnamectl set-hostname nod2.examle.org
 +  nano /etc/hosts
  
 ===== Disabling the IPv6 ===== ===== Disabling the IPv6 =====
  
 +В разі не використання IPv6 їх краще вимкнути
  
-  nano /etc/sysctl.conf +<code bash> 
-add next +cat <<EOT > /etc/sysctl.d/no_ipv6.conf 
-  # Disabling the IPv6 +# Disabling the IPv6 
-  net.ipv6.conf.all.disable_ipv6 = 1 +net.ipv6.conf.all.disable_ipv6 = 1 
-  net.ipv6.conf.default.disable_ipv6 = 1 +net.ipv6.conf.default.disable_ipv6 = 1 
-  net.ipv6.conf.lo.disable_ipv6 = 1 +net.ipv6.conf.lo.disable_ipv6 = 1 
- +EOT 
-execute +sysctl -f 
-  sudo sysctl -p +update-initramfs -u 
-  sudo update-initramfs -u+</code>
  
-check +Перевіримо 
-  sudo sysctl net.ipv6.conf.all.disable_ipv6+  sysctl net.ipv6.conf.all.disable_ipv6
  
 ===== swapfile ===== ===== swapfile =====
Рядок 100: Рядок 156:
    19 sudo nano /etc/fstab    19 sudo nano /etc/fstab
    20 /swapfile swap swap defaults 0 0    20 /swapfile swap swap defaults 0 0
-   21 echo '' > /etc/initramfs-tools/conf.d/resume+   21 echo 'RESUME=none' > /etc/initramfs-tools/conf.d/resume
    22 lvresize -l +100%FREE /dev/mapper/debian--vg-root    22 lvresize -l +100%FREE /dev/mapper/debian--vg-root
    22 resize2fs /dev/mapper/debian-vg-root    22 resize2fs /dev/mapper/debian-vg-root
Рядок 115: Рядок 171:
  
   sudo update-initramfs -uk all   sudo update-initramfs -uk all
-====== rc.local ====== 
-Створимо файл сервісу: 
-  sudo nano /etc/systemd/system/rc-local.service 
- 
-З таким вмістом: 
-<code> 
-[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 
-</code> 
- 
-Створимо сам rc.local: 
-  sudo nano /etc/rc.local 
- 
-<code|> 
-#!/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 
-</code> 
-Додамо права на виконання: 
-  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 
- 
-===== Очищення ===== 
- 
-<code bash> 
-tee /etc/cron.daily/cleanup-clientmqueue<<EOF 
-#!/bin/sh 
-find /var/spool/clientmqueue/ -type f -delete 
-EOF 
-chmod +x /etc/cron.daily/cleanup-clientmqueue 
-</code> 
  
 ===== Інше ===== ===== Інше =====
- 
- 
  
 [[https://www.aitishnik.ru/razmetka-diskov-v-debian-s-pomoschiu-lvm.html]] [[https://www.aitishnik.ru/razmetka-diskov-v-debian-s-pomoschiu-lvm.html]]