Ubuntu Setup
Учетные данные/доступ
Настройка SSH доступа
sudo apt install ssh -y
sudo rm /etc/ssh/sshd_config.d/50-cloud-init.conf # Для облачных образов
sudo vim /etc/ssh/sshd_config
TCPKeepAlive yes
ClientAliveInterval 60
ClientAliveCountMax 360
PermitRootLogin prohibit-password # Отключить root доступ по SSH
PasswordAuthentication yes # При необходимости включить парольную аутентификацию
PubkeyAuthentication yes # Рекомендуется для безопасности
sudo systemctl restart ssh # В Ubuntu 24.04 используется ssh (не sshd)
Создание пользователя с правами sudo
sudo useradd -m -s /bin/bash <user>
sudo usermod -aG sudo,adm,systemd-journal <user>
sudo passwd <user>
Удаление пользователя полное
sudo pkill -u <user> # Вместо killall (не всегда установлен)
sudo userdel -r <user>
sudo visudo # Удалить строку с <user> если добавляли через visudo
Настройка Сети
Важно: В Ubuntu 24.04 используется Netplan с новым синтаксисом (версия 2)
Режим DHCP
sudo vim /etc/netplan/01-netcfg.yaml
# DHCP
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: true
dhcp4-overrides:
use-dns: true
use-domains: true
dhcp6: false # Отключить IPv6 если не используется
Режим Static IP
sudo vim /etc/netplan/01-netcfg.yaml
# Static IP
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: false
addresses:
- 192.168.1.10/24
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 1.1.1.1]
search: [local] # Опционально
Перезапуск сети
sudo netplan apply
sudo systemctl restart systemd-networkd # Для применения изменений
Отключение сетевого протокола ipv6
Способ 1 (Рекомендуемый для Ubuntu 24.04)
sudo vim /etc/sysctl.conf
# В конце файла добавить:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
sudo sysctl -p
sudo sysctl --system # Применить все настройки
Способ 2 (Через GRUB)
sudo vim /etc/default/grub
# Найти строку:
GRUB_CMDLINE_LINUX=""
# Заменить на:
GRUB_CMDLINE_LINUX="ipv6.disable=1"
sudo update-grub
sudo reboot
Тюнинг системы
Изменение имени сервера
sudo hostnamectl set-hostname name # Современный способ
sudo vim /etc/hosts
127.0.0.1 localhost name
::1 localhost name # IPv6 запись
Изменить Приветствие при входе пользователя
sudo chmod -x /etc/update-motd.d/10-help-text
sudo vim /etc/update-motd.d/10-help-text
# Комментировать все лишние строки или очистить файл
Тюнинг Приглашения prompt в консоли
echo "PS1='\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]$ '" >> ~/.bashrc
source ~/.bashrc # Применить без выхода
Ограничение размера LOGs системы (до 100mb)
sudo sed -i 's/#SystemMaxUse=/SystemMaxUse=100M/g' /etc/systemd/journald.conf
sudo systemctl restart systemd-journald
sudo journalctl --rotate # Принудительная ротация журналов
Добавление переключения языка по Alt+Shift (для GNOME)
sudo apt install gnome-tweaks -y
gsettings set org.gnome.desktop.input-sources xkb-options "['grp:alt_shift_toggle']"
Установка часового пояса (Москва)
sudo timedatectl list-timezones | grep Moscow # Проверить доступные
sudo timedatectl set-timezone Europe/Moscow
sudo localectl set-locale LC_TIME="ru_RU.UTF-8" # Для русской локали времени
sudo locale-gen ru_RU.UTF-8
Смена раскладки (Ubuntu 24.04 Gnome)
sudo apt install gnome-tweak-tool -y
# Альтернативный способ через настройки:
gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Super>space']"
gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "['<Shift><Super>space']"
Ярлык на рабочий стол
# Создание .desktop файла
vim ~/Desktop/myapp.desktop
[Desktop Entry]
Version=1.0
Name=MyApp
Comment=My Application
Exec=/path/to/script.sh
Icon=/path/to/icon.png
Terminal=false
Type=Application
Categories=Utility;
chmod +x ~/Desktop/myapp.desktop
https://wikilinux.ru/all_articles/sozdanie-yarlykov-dlya-sh-skriptov
https://specifications.freedesktop.org/desktop-entry-spec/latest/recognized-keys.html
Обновление системы, алиасы
Установка доп. пакетов
sudo apt update
sudo apt install -y vim tree net-tools mlocate curl wget htop
Добавление Алиасов Обновления итд.
tee -a ~/.bashrc << 'EOF'
# ------------------------------------------------------------------------------
# Prompt console
# ------------------------------------------------------------------------------
PS1='\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]$ '
# ------------------------------------------------------------------------------
# Bind Aliases
# ------------------------------------------------------------------------------
alias upd='sudo apt update -y && \
sudo apt upgrade -y && \
sudo apt full-upgrade -y && \ # В Ubuntu 24.04 предпочтительнее full-upgrade
sudo apt autoremove -y && \
sudo apt autoclean -y && \
sudo updatedb && \
sudo apt --fix-broken install' # Проверка зависимостей
alias clean='sudo apt autoremove -y && sudo apt autoclean -y'
alias install='sudo apt install'
alias search='apt search'
alias show='apt show'
alias hclean='cat /dev/null > ~/.bash_history && history -c'
alias doc='docker ps --all --format "table {{.ID}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"'
alias ports='sudo netstat -tulpn | grep LISTEN' # Просмотр открытых портов
# ------------------------------------------------------------------------------
EOF
source ~/.bashrc # Применить изменения
Создание скрипта обновления
sudo tee ~/update.apt.sh << 'EOF'
#!/bin/bash
set -e # Остановка при ошибке
echo "=== Starting system update ==="
sudo apt update
sudo apt upgrade -y
sudo apt full-upgrade -y # Вместо dist-upgrade
sudo apt autoremove -y
sudo apt autoclean -y
sudo apt --fix-broken install
sudo updatedb
echo "=== System update completed successfully ==="
EOF
sudo chmod +x ~/update.apt.sh
sudo ~/update.apt.sh
Дополнительные полезные настройки для Ubuntu 24.04
# Включение автоматических обновлений безопасности
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades
# Настройка временной зоны для журналов
sudo timedatectl set-local-rtc 0 # UTC для оборудования
# Оптимизация SWAP
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p