Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

Linux / DevOps

Как смотреть логи в Linux: tail -n 100 -f для отслеживания ошибок в реальном времени

Обновлено: 27.08.2026 · Официальная документация ↗

Почему нельзя открывать большие логи редактором nano или cat

Файлы системных журналов (например, access.log, error.log веб-сервера или журналы приложений) могут весить десятки гигабайт. Если начинающий администратор попытается открыть такой гигантский файл стандартным текстовым редактором nano или вывести его целиком командой cat, оперативная память сервера мгновенно переполнится, а сессия намертво зависнет. Утилита tail (Хвост) читает только самый конец файла прямо с диска за миллисекунды.

Главные параметры утилиты tail

ФлагЧто делаетПример использования
-n 100Выводит ровно последние 100 строк файлаtail -n 100 /var/log/syslog
-f (Follow)Живой поток: выводит новые строки на экран по мере их появленияtail -f /var/log/nginx/error.log
-FСледит за файлом, даже если он был пересоздан (ротирован)tail -F /var/log/app.log

Практические примеры отслеживания логов через tail

Сценарий 1: Просмотр последних 100 строк лог-файла

Посмотрим последние 100 записей системного журнала:

tail -n 100 /var/log/syslog
 или на RedHat/CentOS:
sudo tail -n 100 /var/log/messages

Сценарий 2: Живой мониторинг запросов к сайту в реальном времени (-f)

Запустите непрерывный просмотр входящего веб-трафика:

sudo tail -f /var/log/nginx/access.log

Теперь перейдите на свой сайт в браузере и обновите страницу — в окне терминала мгновенно появится новая строка с вашим IP-адресом и кодом ответа (200 OK).

Для выхода из режима слежения нажмите сочетание клавиш: Ctrl + C.

Сценарий 3: Комбинация флагов (100 строк + живой поток)

Вывести последние 100 строк и сразу продолжить показывать новые входящие ошибки:

sudo tail -n 100 -f /var/log/nginx/error.log

Сценарий 4: Одновременное слежение за несколькими файлами логов

Утилита tail умеет мониторить сразу несколько файлов в одном окне консоли:

sudo tail -f /var/log/nginx/access.log /var/log/nginx/error.log

Сценарий 5: Фильтрация живого потока через grep

Показываем только строки с ошибками уровня Fatal или 500 в реальном времени:

sudo tail -f /var/log/nginx/error.log | grep --line-buffered -i "error"

Типовые ошибки администраторов

  • Обычный -f вместо -F при активной ротации логов: Если служба logrotate сожмет текущий лог в полночь, tail -f перестанет выводить новые события. Флаг с заглавной буквой -F автоматически переоткрывает вновь созданный файл.
  • Забытый флаг --line-buffered при связке tail + grep: Если не указать этот флаг у grep, операционная система будет буферизировать вывод пачками, и вы увидите ошибки с опозданием в несколько минут.
Трудно анализировать логи распределенной инфраструктуры из десятков серверов?
ITSTM развернет современную систему централизованного сбора логов Grafana Loki + Promtail или VictoriaLogs с удобным поиском и алертами в Telegram.
💡 Практика специалистов: Для быстрого анализа аварий используйте связку 'tail -n 5000 access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 10'. Эта быстрая однострочная команда за секунду покажет топ-10 IP-адресов, которые прямо сейчас создают максимальную нагрузку или производят DoS-атаку на ваш веб-сервер.

Частые вопросы (FAQ)

Как посмотреть НАЧАЛО файла вместо его конца?

Используйте парную утилиту head: head -n 50 file.log выведет первые 50 строк файла.

Как перемещаться по огромному лог-файлу со стрелками и поиском?

Используйте постраничный просмотрщик less: less /var/log/syslog. Внутри less можно искать слова по нажатию '/' и включить живой поток клавишей Shift + F.

Как прочитать сжатые архивные логи вида access.log.2.gz?

Используйте утилиту zcat или zless: zcat /var/log/nginx/access.log.2.gz | tail -n 100.

Как посмотреть системные логи служб systemd без указания путей к файлам?

Используйте системный журнал journalctl с аналогичным флагом -f: sudo journalctl -u nginx.service -n 100 -f.

Полезные материалы
Рекомендуем