Топ-10 команд для админа Ubuntu 24.04, без которых не обойтись

Топ-10 команд для админа Ubuntu 24.04, без которых не обойтись

Знание ключевых команд — основа эффективного администрирования сервера. Мы собрали топ-10 команд Ubuntu 24.04, без которых не обойтись в повседневной работе: от мониторинга ресурсов и анализа логов до управления пакетами, сетевыми соединениями и правами доступа.

Введение

Ubuntu 24.04 LTS вышла больше года назад и уже активно используется на серверах. В этой версии осталось большинство привычных команд, но есть и изменения. Мы собрали топ-10 команд для администратора Ubuntu 24.04, которые пригодятся в повседневной работе и помогут быстро решать типичные задачи.

Аренда VPS/VDS от 219 руб/месяц

Преимущества VPS в AdminVPS:

✓ Бесплатное администрирование

✓ Только быстрые NVMe-диски

✓ Защита от DDoS-атак

✓ Быстрая техподдержка

Аренда VPS/VDS виртуального сервера от AdminVPS — это прозрачная и честная услуга с доступной ценой

Команды top / htop

Чтобы контролировать загрузку сервера и его поведение в реальном времени, чаще всего используют команды top или htop. Обе утилиты показывают активные процессы, загрузку CPU, использование памяти, swap, аптайм и другую системную информацию.

Команда top есть в Ubuntu по умолчанию. Она отображает информацию в текстовом режиме и позволяет управлять процессами с клавиатуры. Полезные клавиши:

  • P — сортировка по CPU;
  • M — сортировка по памяти;
  • k — завершение процесса (по PID);
  • u — фильтр по имени пользователя;
  • h — справка.

Например, чтобы завершить процесс с PID 1234, нажмите k, затем введите 1234.

Утилита htop — это более удобная и визуально наглядная альтернатива. Она отсутствует в системе по умолчанию и устанавливается отдельно:

sudo apt update
sudo apt install htop

Основные преимущества htop:

  • управление стрелками и функциональными клавишами;
  • возможность выбирать несколько процессов;
  • цветовая подсветка загрузки;
  • поиск (F3) и фильтрация (F4) по имени процесса;
  • завершение процесса (F9) и изменение приоритета (F7, F8).

Обе утилиты читают данные из /proc и раз в несколько секунд обновляют отображение. Это позволяет отслеживать ситуацию в реальном времени без установки дополнительных агентов.

Команда journalctl

В Ubuntu 24.04, как и в предшествующих версиях, системные логи управляются через systemd-journald, а основной командой для их просмотра является journalctl. Эта утилита позволяет фильтровать, искать и анализировать события в системе, в том числе ошибки запуска служб, сбои процессов, обращения к сети и многое другое.

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

journalctl -xe

Флаг -x добавляет пояснения к записям, а -e перемещает курсор в конец журнала — туда, где находятся последние события. Это удобно при диагностике ошибок после перезагрузки или сбоя службы.

Команда также поддерживает фильтрацию по времени:

journalctl --since "2025-06-01 12:00" --until "2025-06-01 13:00"

Если указать только --since "1 hour ago" — будут показаны логи за последний час. Это помогает сузить диапазон при поиске проблемы.

Чтобы посмотреть сообщения, относящиеся к конкретной службе (юниту systemd), например nginx:

journalctl --unit=nginx

Флаг --unit принимает точное имя юнита, такое же, как у systemctl status.

Поиск по ключевым словам:

journalctl | grep "Out of memory"

Или:

journalctl -g "Out of memory"

Также можно ограничить вывод определённым уровнем логирования:

journalctl -p err

Это отфильтрует только сообщения уровня ошибки (err), игнорируя обычные информационные события.

Команда ss

Команда ss используется для диагностики сетевых соединений и открытых портов. В отличие от устаревшего netstat, она работает быстрее, так как берёт данные напрямую из ядра, без промежуточных вызовов. Кроме того, в новых версиях Ubuntu пакет net-tools, содержащий netstat, больше не устанавливается по умолчанию, а ss входит в состав утилиты iproute2, которая предустановлена.

Чаще всего команда выглядит так: 

sudo ss -tulpn

Рассмотрим, что означают флаги:

  • -t — показывает TCP-соединения;
  • -u — UDP-соединения;
  • -l — отображает только прослушиваемые сокеты (listening);
  • -p — показывает PID и имя процесса, который использует порт (требует root-доступа);
  • -n — отключает попытки обратного DNS и разрешения имён сервисов (ускоряет вывод и делает его чище).

Эта команда позволяет быстро увидеть службы, слушающие порты, поэтому она полезна после установки нового сервиса — например, nginx, PostgreSQL или sshd — чтобы убедиться, что нужный порт открыт, а служба действительно работает и слушает его.

Если ss показывает, что порт закрыт, это может быть связано с настройками файрвола, сбоем службы или ошибкой в конфигурации. В этом случае проведите диагностику через systemctl, ufw или проанализируйте логи с помощью journalctl.

Команда systemctl

Команда systemctl — инструмент для управления службами (юнитами) в системах на базе systemd, включая Ubuntu 24.04. Она позволяет запускать, останавливать, перезапускать сервисы, настраивать автозагрузку и получать информацию о статусе любого юнита.

Базовые команды:

  • sudo systemctl start <служба> — запустить;
  • sudo systemctl stop <служба> — остановить;
  • sudo systemctl restart <служба> — перезапустить;
  • sudo systemctl enable <служба> — включить автозапуск при загрузке;
  • sudo systemctl disable <служба> — отключить автозапуск;
  • systemctl status <служба> — показать текущее состояние и последние строки лога.

Если сервис работает некорректно, команда status покажет код выхода, сообщения об ошибках и последние события.

Иногда нужно найти активный юнит по ключевому слову. Для этого удобно использовать:

systemctl list-units --type=service | grep <ключ>

Если юнит не отображается в списке активных, его можно поискать в каталоге unit-файлов:

systemctl list-unit-files | grep <ключ>

systemctl также позволяет перезагружать systemd (без перезагрузки ядра), что полезно после изменения конфигурации или установки новых unit-файлов:

sudo systemctl daemon-reload   # перезагрузка файлов конфигурации systemd
sudo systemctl daemon-reexec   # перезапуск демона systemd

При сбоях сервисов связка systemctl + journalctl даёт быстрый доступ к информации, необходимой для устранения проблем. Например, при ошибке запуска можно получить статус юнита, увидеть последние записи в логах, проверить права на конфигурационные файлы и попытаться перезапустить службу вручную.

UFW

Утилита UFW (Uncomplicated Firewall) — это упрощённый интерфейс для настройки брандмауэра на базе nftables. Он предустановлен в Ubuntu и предназначен для тех случаев, когда нужен базовый контроль доступа к портам без погружения в сложный синтаксис сетевых фильтров. Для большинства задач — например, открыть порт для SSH или закрыть доступ к базе данных из внешней сети — ufw подходит идеально.

Команда, чтобы включить брандмауэр:

sudo ufw enable

Перед этим обязательно разрешите нужные подключения — в первую очередь SSH, чтобы не потерять доступ к серверу:

sudo ufw allow ssh

Аналогично можно разрешать или запрещать порты по номерам:

  • sudo ufw allow 80 — разрешить HTTP;
  • sudo ufw allow 443/tcp — разрешить HTTPS;
  • sudo ufw deny 3306 — запретить доступ извне к порту, который использует MySQL.

Если нужно разрешить доступ с определённого IP:

sudo ufw allow from 192.168.1.100 to any port 22

Проверить текущие правила можно так:

sudo ufw status verbose

Для сброса всех настроек:

sudo ufw reset

Отключение брандмауэра:

sudo ufw disable

Пакетный менеджер apt

Пакетный менеджер apt — один из основных инструментов для установки, обновления и удаления программ в Ubuntu 24.04. Он работает поверх более низкоуровневых утилит (dpkg, apt-cache и других) и предоставляет удобный синтаксис для повседневной работы. Через apt устанавливаются не только пользовательские приложения, но и системные компоненты, включая ядро, службы и библиотеки.

Перед установкой всегда обновляйте список доступных пакетов:

sudo apt update

Эта команда не устанавливает пакеты или обновления, а лишь загружает свежие метаданные — без этого невозможно получить актуальные версии программ.

Чтобы обновить установленные пакеты до последних доступных версий:

sudo apt upgrade

Команда для полного обновления:

sudo apt full-upgrade

В отличие от upgrade, она может удалять устаревшие зависимости, если это необходимо для обновления. Использовать её стоит с осторожностью, особенно на продакшен-серверах.

Установка новых пакетов:

sudo apt install <имя_пакета>

Если нужно установить нескольких пакетов за раз, просто перечислите их через пробел.

Удаление неиспользуемых зависимостей:

sudo apt autoremove

Эта команда полезна после удаления программ, чтобы система не хранила лишние библиотеки и вспомогательные утилиты.

Поиск пакетов:

apt search <ключевое_слово>

Информация о конкретном пакете:

apt show <имя_пакета>

Эта команда покажет описание, размер, зависимости, источник и другую информацию.

Для безопасного обновления ПО на сервере важно:

  • делать резервные копии конфигураций и данных;
  • проверять, какие именно пакеты будут обновлены (apt list --upgradable);
  • обновлять только критически важные компоненты и только при необходимости (особенно на системах с высокой нагрузкой);
  • использовать терминальные мультиплексоры (screen или tmux), чтобы не потерять сессию при обрыве SSH-соединения;
  • после обновления перезапускать только нужные сервисы или перезагружать систему вручную, а не автоматически.

Утилита rsync

rsync — это инструмент для копирования и синхронизации файлов и каталогов. Он копирует только изменённые файлы или части файлов, экономя трафик и ускоряя процесс. rsync особенно полезен при регулярном резервном копировании, синхронизации каталогов между серверами и развёртывании конфигураций.

Простое резервное копирование внутри локальной системы:

rsync -a /источник/ /backup/целевой_каталог/

Флаг -a (archive) включает рекурсивное копирование, сохранение прав, времени, символических ссылок и других метаданных — это оптимальный режим для переноса конфигураций и данных.

Если нужно передавать файлы по сети, rsync может использовать SSH:

rsync -az /источник/ user@remote_host:/директория_назначения/

Здесь:

  • -a — архивный режим (как выше);
  • -z — сжатие передаваемых данных (полезно на медленных каналах);
  • user@remote_host: — указание удалённого хоста через SSH.

Для зеркалирования каталога с удалением файлов, отсутствующих в источнике:

rsync -az --delete /источник/ /директория_назначения/

Флаг --delete удаляет на целевой стороне всё, чего нет на стороне источника. Это удобно для резервного копирования и поддержания идентичного состояния данных.

Например, копирование сайта с одного сервера на другой без остановки работы:

rsync -az /var/www/ user@remote_host:/var/www/

Создание локальной резервной копии конфигурации:

rsync -a /etc/ /backup/etc/

Быстрая синхронизация каталогов с минимальной передачей данных:

rsync -az --delete /media/data/ /mnt/backup/data/

Почему rsync, а не scp или cp, также предназначенные для копирования:

  • scp копирует всё подряд и не поддерживает синхронизацию, в то время как rsync копирует только изменённые файлы, поддерживает проверку целостности, удаление лишних файлов и более гибкую настройку;
  • cp не работает по сети и не умеет сравнивать содержимое, не поддерживает сжатие и удаление устаревших файлов на целевой стороне.

Команды chmod и chown

Следующие команды из нашего топ-10 — chmod и chown. Они нужны для управления правами доступа в Ubuntu: позволяют задавать, кому разрешено читать, изменять или исполнять файлы и директории, а также указывать владельцев.

chmod управляет разрешениями. Пример:

chmod 600 ~/.ssh/authorized_keys

Здесь 600 означает, что владелец может читать и записывать, а группа и остальные пользователи не имеют доступа.

Числовая запись прав (например, 600, 755 и т. д.) состоит из трёх цифр:

  • первая — права владельца;
  • вторая — группы;
  • третья — остальных пользователей, не входящих в группу владельца.

Каждая из этих цифр — это сумма чисел, соответствующих чтению (4), записи (2) и выполнению (1).

Примеры:

  • 600 — только владелец может читать и писать (6=4+2);
  • 644 — владелец может читать и писать, остальные — только читать;
  • 755 — владелец может всё (7=4+2+1), остальные могут только читать и выполнять (5=4+1, часто используется для скриптов и директорий);
  • 700 — полный доступ только владельцу.

chown задаёт владельца и группу:

chown -R <пользователь>:<группа> <директория>

Например, команда для назначения владельца и группы каталогу сайта:

chown -R www-data:www-data /var/www

Проверить текущие права можно с помощью ls -l:

ls -l ~/.ssh/authorized_keys

Команды df -h и du -sh

Команды df и du используются для контроля за дисковым пространством, но решают разные задачи. df показывает использование места по файловым системам (разделам), а du — по каталогам и отдельным файлам.

df -h — это быстрый способ узнать, сколько свободного и занятого места на каждом смонтированном разделе. Флаг -h включает удобный для человека формат (human-readable), отображая размеры в мегабайтах и гигабайтах. Если вы видите, что корневой раздел (/) почти заполнен — значит нужно искать, что занимает место. Для этого и используют du. Например, чтобы узнать, размер конкретного каталога:

du -sh /var/log

Если нужно посмотреть, какие подкаталоги занимают больше всего:

du -h /var/log | sort -h | tail

Команда покажет 10 самых тяжёлых папок или файлов в /var/log.

Чтобы найти, что именно занимает диск на сервере, часто начинают с корня:

sudo du -h / --max-depth=1 | sort -h

Это помогает оценить, какие верхнеуровневые каталоги занимают больше всего места, и выбрать, с чего начать дальнейшую проверку.

Утилиты tar и gzip

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

Для создания сжатого архива применяют команду:

tar -czf backup.tar.gz /etc/nginx

Разберём её:

  • -c — создать архив (create);
  • -z — использовать gzip для сжатия (можно заменить на -j для bzip2 или -J для xz);
  • -f — указать имя выходного файла (file);
  • backup.tar.gz — имя архива;
  • /etc/nginx — каталог, который архивируется.

Архив можно сохранить локально или передать на другой сервер.

Для распаковки архива используется:

tar -xvf backup.tar.gz

Флаги:

  • -x — извлечь файлы (extract),
  • -v — подробный вывод (verbose), 
  • -f — указание файла архива.

Если нужно распаковать в определённый каталог:

tar -xvf backup.tar.gz -C /tmp/restore

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

tar -czf etc-backup-$(date +%F).tar.gz /etc

Архив будет содержать дату в имени, например:

etc-backup-2025-06-01.tar.gz

Это облегчает хранение и автоматизацию.

Для архивации нескольких директорий перечислите их через пробел:

tar -czf config.tar.gz /etc/nginx /etc/php /etc/ssh

Проверка содержимого архива без распаковки:

tar -tf backup.tar.gz

Заключение

Знание базовых команд — залог уверенного и эффективного администрирования Ubuntu 24.04. Эти утилиты помогают быстро диагностировать проблемы, управлять службами, работать с сетью и данными. Освоив их, вы сможете поддерживать стабильную работу сервера и оперативно реагировать на любые сбои.

Читайте в блоге:

Loading spinner
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

VPN на VPS-сервере

Узнайте, как создать собственный VPN на VPS-сервере для защиты ваших конфиденциальных данных!

Что будем искать? Например,VPS-сервер

Мы в социальных сетях