Данная статья посвящена тому, как сделать из Debian нормальную систему.

Настройка системы

Включаем перезагрузку с помощью команды reboot

С «завода» в данном поделии безумного шизика не работают команды reboot и shutdown. Их заменили команды systemctl reboot и systemctl poweroff, что является не просто сомнительным, а крайне идиотским решением, т.к короткие и лаконичные команды превращаются в подобие powershell. Чтобы исправить эту ситуацию (от рута) необходимо в конец файла /root/.bashrc добавить строчку

export PATH=$PATH:/usr/sbin

После этого делаем релог и радуемся жизни.

Установка iptables на Debian 11/12

Т.к данный дистрибутив создавался гомосеками под полной и одновременно голубой луной, то установить iptables, да так чтобы оно работало можно только по средствам крайне извращенных анальных утех. Чтобы вам не щекотать себе очко, объясню, как это делается.

  1. Удаляем nftables
    apt remove --purge nftables
  2. Чисто на всякий случай зачищаем все, что могло бы (но не осталось)
    apt purge nftables
  3. Устанавливаем iptables
    apt install -y iptables iptables-persistent
  4. Добавляем службу в автозагрузку и запускаем ее
    systemctl enable --now netfilter-persistent.service
  5. Для проверки запущена ли служба можно выполнить как systemctl status iptables так и systemctl status netfilter (все же в угоду краткости команд)

Теперь можно использовать iptables в Debian 12.

Bash вместо sh

Охуительным сюрпризом стал тот факт, что для всех, создаваемых вновь, пользователей вместо стандартного bash идет кусок параши пригодный только для контейнеров и других узких задач sh. Вот уж и правда, какого черта использовать в 2023 году нормальный шел?! Да кому он сдался, давайте зафигачим калечный sh. Идеи своей гениальностью затмевающая даже совершенно ШИКАРНУЮ идею с командами выключения и перезагрузки. Пришлось потратить какое-от время на изыскания, что именно происходит, т.к я не сразу понял какого черта, но когда cat /etc/passwd выдал мне в конце строки моего пользователя /bin/sh, я несколько офигел, чтобы не сказать круче. Ну что же, простой способ сменить shell для текущего пользователя - дописать ba перед sh, но ведь так не пойдет и в дальнейшем создавая пользователей с помощью того же ансибла, я НЕ хочу греть себе голову со сменой шелла. Значит нам нужно пойти и почитать справочку

man useradd

В результате чего мы узнаем, что для исправления этой ереси необходимо ввести следующую команду:

useradd -D -s /bin/bash

Работа автодополнения в systemctl

Чтобы облегчить использование systemctl и обеспечить автодополнение при вводе имен служб с помощью клавиши Tab, вам необходимо убедиться, что ваш терминал поддерживает данную функцию. Обычно это работает автоматически, но если у вас возникли проблемы, попробуйте следующие шаги:

Убедитесь, что bash-completion установлен

Для автодополнения команд в bash используется пакет bash-completion. Убедитесь, что он установлен на вашей системе.

Для Debian/Ubuntu:

sudo apt update
sudo apt install bash-completion

Для CentOS/RHEL:

sudo yum install bash-completion

Включите bash-completion

Если bash-completion установлен, убедитесь, что в вашем файле ~/.bashrc есть строки, которые подключают его. Откройте его в редакторе:

nano ~/.bashrc

Добавьте или раскомментируйте следующие строки:

# Enable bash completion
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

Сохраните изменения и выйдите.

Перезагрузите ваш терминал

После изменения конфигурации перезапустите терминал или загрузите измененный файл конфигурации:

source ~/.bashrc

Показать все доступные службы

Теперь попробуйте ввести команду systemctl и нажмите Tab два раза для вывода всех доступных служб:

systemctl <Tab><Tab>

Проверка

Попробуйте начать вводить имя службы и использовать Tab для автодополнения. Например:

systemctl status <часть_имени_сервиса><Tab>
main/linux/debian.txt · Последнее изменение: 2024/10/28 08:54 — davlanas
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0