Перечислите ключевые команды Linux для администрирования системы

Ответ

Для администрирования Linux-систем используется набор мощных утилит. Вот основные из них, сгруппированные по задачам:

Управление процессами

  • ps aux — Показать все запущенные процессы в системе.
  • top / htop — Интерактивный мониторинг процессов и системных ресурсов в реальном времени (htop более наглядный).
  • kill <PID> — Отправить сигнал процессу для его завершения (например, kill -9 <PID> для принудительного завершения).
  • systemctl — Основная команда для управления сервисами (демонами) в системах с systemd (например, sudo systemctl restart nginx).

Работа с файловой системой и правами

  • df -h — Показать использование дискового пространства в человекочитаемом формате.
  • du -sh <path> — Показать суммарный размер указанного файла или директории.
  • chmod — Изменить права доступа к файлу/директории (например, chmod 755 script.sh).
  • chown — Изменить владельца и/или группу файла/директории (например, sudo chown www-data:www-data /var/www/html).

Мониторинг и сеть

  • journalctl — Просмотр системных логов, управляемых systemd (например, journalctl -u nginx.service -f для отслеживания логов Nginx).
  • ss -tuln / netstat -tuln — Показать все слушающие сетевые порты.
  • iptables / ufw — Утилиты для настройки межсетевого экрана (firewall).

Управление пакетами

  • apt / apt-get (Debian/Ubuntu) — Установка, обновление и удаление пакетов (например, sudo apt update && sudo apt upgrade).
  • yum / dnf (CentOS/Fedora) — Аналогичные менеджеры пакетов для RPM-based дистрибутивов.

Практический пример: перезапуск веб-сервера

Типичная задача администратора — проверить статус сервиса и перезапустить его в случае сбоя.

# 1. Проверить текущий статус сервиса Nginx
sudo systemctl status nginx

# 2. Если сервис неактивен, перезапустить его
sudo systemctl restart nginx

# 3. Убедиться, что он запустился успешно
sudo systemctl is-active nginx