Какие основные команды администратора в Linux вы знаете?

«Какие основные команды администратора в Linux вы знаете?» — вопрос из категории Linux, который задают на 24% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Вот ключевые команды для администрирования Linux-систем, сгруппированные по назначению:

Управление файлами и директориями

  • ls — список содержимого директории (ls -la для детального просмотра).
  • cd — смена текущей директории.
  • pwd — вывод полного пути текущей директории.
  • mkdir / rmdir — создание/удаление директорий.
  • cp, mv, rm — копирование, перемещение/переименование, удаление файлов (rm -rf для рекурсивного принудительного удаления).

Права доступа и владение

  • chmod — изменение прав доступа (например, chmod 755 script.sh или chmod +x script.sh).
  • chown — изменение владельца и группы файла (chown user:group file).

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

  • ps — просмотр процессов (ps aux для детального списка).
  • top / htop — интерактивный мониторинг процессов и ресурсов.
  • kill / pkill — отправка сигналов процессам для завершения (kill -9 PID для принудительного завершения).
  • systemctl — управление службами и юнитами systemd (systemctl start|stop|restart|status nginx).
  • journalctl — просмотр журналов systemd (journalctl -u nginx --since "1 hour ago").

Мониторинг ресурсов

  • df — информация о свободном месте на дисках (df -h для удобного чтения).
  • du — оценка использования дискового пространства файлами/директориями (du -sh /var/log).
  • free — информация об использовании оперативной памяти (free -h).
  • iostat / iotop — мониторинг статистики ввода/вывода дисков.
  • nethogs / iftop — мониторинг сетевого трафика по процессам/интерфейсам.

Сетевые утилиты

  • ss / netstat — информация о сетевых соединениях, сокетах, статистике.
  • ping / traceroute — проверка доступности и маршрута до хоста.
  • dig / nslookup — DNS-запросы.
  • ssh — безопасное удаленное подключение.
  • scp / rsync — копирование файлов по SSH.

Поиск и анализ

  • grep — поиск текста по шаблону в файлах (grep -r "error" /var/log).
  • find — поиск файлов и директорий по различным критериям (find / -type f -name "*.log" -mtime +7).
  • tail / head — вывод начала или конца файла (tail -f /var/log/syslog для слежения в реальном времени).