[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/linux/automate-tasks-with-cron":3,"mdc-lswys4-key":480,"mdc--4z5x76-key":490,"mdc-f5tvrq-key":515,"mdc--uenhs5-key":523,"mdc-lzc234-key":540,"mdc--ijy58y-key":564,"mdc-wm9r9a-key":581,"related-/guides/linux/manage-systemd-timers,/guides/linux/redirect-output-to-file,/guides/linux/check-system-logs":603},{"id":4,"title":5,"appliesTo":6,"author":11,"body":12,"canonical":419,"code":419,"createdAt":420,"description":421,"difficulty":422,"draft":423,"estimatedTime":424,"extension":425,"faq":426,"howToSteps":439,"howToTotalTime":449,"image":419,"keywords":450,"locale":459,"meta":460,"navigation":461,"path":462,"platform":463,"related":464,"section":468,"seo":469,"severity":419,"stem":470,"summary":471,"tags":472,"twitterCreator":419,"twitterSite":419,"type":478,"updatedAt":420,"__hash__":479},"content_ru/guides/linux/automate-tasks-with-cron.md","Автоматизируйте задачи в Linux с помощью cron: полное руководство",[7,8,9,10],"Ubuntu 22.04 LTS и выше","Debian 11+","CentOS Stream 9","Fedora 38+","FixPedia Team",{"type":13,"value":14,"toc":408},"minimark",[15,20,24,28,57,61,64,85,97,100,104,107,115,118,138,141,145,148,151,181,184,188,191,222,225,245,249,252,257,273,278,300,303,307,310,318,343,348,360,363,367,404],[16,17,19],"h2",{"id":18},"введение-зачем-это-нужно","Введение / Зачем это нужно",[21,22,23],"p",{},"Cron — это встроенный планировщик задач в Linux, который позволяет автоматически запускать команды или скрипты в нужное время. Это полезно для резервного копирования, ротации логов, обновления данных и других рутинных операций, которые должны выполняться без вашего участия. После выполнения этого гайда вы сможете настраивать расписания, управлять заданиями и проверять их выполнение.",[16,25,27],{"id":26},"требования-подготовка","Требования / Подготовка",[29,30,31,35,43,54],"ul",{},[32,33,34],"li",{},"Система на базе Linux (Ubuntu 22.04+, Debian 11+, CentOS Stream 9 или Fedora 38+).",[32,36,37,38,42],{},"Пользователь с правами на выполнение ",[39,40,41],"code",{},"crontab"," (обычный пользователь или root).",[32,44,45,46,49,50,53],{},"Установленный пакет cron (в большинстве дистрибутивов он предустановлен; при необходимости выполните ",[39,47,48],{},"sudo apt install cron"," или ",[39,51,52],{},"sudo dnf install cronie",").",[32,55,56],{},"Базовое понимание командной строки и абсолютных путей.",[16,58,60],{"id":59},"шаг-1-открыть-планировщик-для-редактирования","Шаг 1: Открыть планировщик для редактирования",[21,62,63],{},"Запустите команду:",[65,66,71],"pre",{"className":67,"code":68,"language":69,"meta":70,"style":70},"language-bash shiki shiki-themes github-light github-dark","crontab -e\n","bash","",[39,72,73],{"__ignoreMap":70},[74,75,78,81],"span",{"class":76,"line":77},"line",1,[74,79,41],{"class":80},"sScJk",[74,82,84],{"class":83},"sj4cs"," -e\n",[29,86,87,90],{},[32,88,89],{},"Для текущего пользователя это откроет его личное расписание.",[32,91,92,93,96],{},"Для root используйте ",[39,94,95],{},"sudo crontab -e",", чтобы управлять системными заданиями.",[21,98,99],{},"При первом запуске система может предложить выбрать редактор. Выберите тот, который вам удобен (например, nano).",[16,101,103],{"id":102},"шаг-2-понять-формат-строки-задания","Шаг 2: Понять формат строки задания",[21,105,106],{},"Каждая строка в crontab состоит из пяти полей времени и команды:",[65,108,113],{"className":109,"code":111,"language":112,"meta":70},[110],"language-text","* * * * * команда\n│ │ │ │ │\n│ │ │ │ └─── день недели (0–7, где 0 и 7 — воскресенье)\n│ │ │ └───── месяц (1–12)\n│ │ └─────── день месяца (1–31)\n│ └───────── час (0–23)\n└─────────── минута (0–59)\n","text",[39,114,111],{"__ignoreMap":70},[21,116,117],{},"Примеры:",[29,119,120,126,132],{},[32,121,122,123],{},"Каждую минуту: ",[39,124,125],{},"* * * * * /path/to/script.sh",[32,127,128,129],{},"Каждый день в 03:30: ",[39,130,131],{},"30 3 * * * /path/to/script.sh",[32,133,134,135],{},"Каждый понедельник в 08:00: ",[39,136,137],{},"0 8 * * 1 /path/to/script.sh",[139,140],"in-article-ad",{},[16,142,144],{"id":143},"шаг-3-добавить-переменные-окружения-при-необходимости","Шаг 3: Добавить переменные окружения при необходимости",[21,146,147],{},"В crontab можно задать переменные перед списком заданий. Это полезно, если скрипт зависит от конкретного PATH или локали.",[21,149,150],{},"Пример:",[65,152,154],{"className":67,"code":153,"language":69,"meta":70,"style":70},"PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\nLANG=en_US.UTF-8\n",[39,155,156,170],{"__ignoreMap":70},[74,157,158,162,166],{"class":76,"line":77},[74,159,161],{"class":160},"sVt8B","PATH",[74,163,165],{"class":164},"szBVR","=",[74,167,169],{"class":168},"sZZnC","/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\n",[74,171,173,176,178],{"class":76,"line":172},2,[74,174,175],{"class":160},"LANG",[74,177,165],{"class":164},[74,179,180],{"class":168},"en_US.UTF-8\n",[21,182,183],{},"Добавьте такие строки в начале файла, если ваши задания не находят команды или требуют определённой локали.",[16,185,187],{"id":186},"шаг-4-использовать-абсолютные-пути-в-командах","Шаг 4: Использовать абсолютные пути в командах",[21,189,190],{},"Cron запускает задания с минимальным окружением. Всегда указывайте полный путь к скриптам и исполняемым файлам. Например:",[65,192,194],{"className":67,"code":193,"language":69,"meta":70,"style":70},"* * * * * /home/user/scripts/backup.sh >> /var/log/backup.log 2>&1\n",[39,195,196],{"__ignoreMap":70},[74,197,198,201,204,206,208,210,213,216,219],{"class":76,"line":77},[74,199,200],{"class":164},"*",[74,202,203],{"class":164}," *",[74,205,203],{"class":164},[74,207,203],{"class":164},[74,209,203],{"class":164},[74,211,212],{"class":160}," /home/user/scripts/backup.sh ",[74,214,215],{"class":164},">>",[74,217,218],{"class":160}," /var/log/backup.log ",[74,220,221],{"class":164},"2>&1\n",[21,223,224],{},"Здесь:",[29,226,227,233,239],{},[32,228,229,232],{},[39,230,231],{},"/home/user/scripts/backup.sh"," — абсолютный путь к скрипту.",[32,234,235,238],{},[39,236,237],{},">> /var/log/backup.log"," — добавление стандартного вывода в лог.",[32,240,241,244],{},[39,242,243],{},"2>&1"," — перенаправление ошибок в тот же файл.",[16,246,248],{"id":247},"шаг-5-сохранить-и-проверить-статус-cron","Шаг 5: Сохранить и проверить статус cron",[21,250,251],{},"После сохранения изменений проверьте, что cron обработал задание:",[29,253,254],{},[32,255,256],{},"В Ubuntu/Debian:",[65,258,260],{"className":67,"code":259,"language":69,"meta":70,"style":70},"grep CRON /var/log/syslog\n",[39,261,262],{"__ignoreMap":70},[74,263,264,267,270],{"class":76,"line":77},[74,265,266],{"class":80},"grep",[74,268,269],{"class":168}," CRON",[74,271,272],{"class":168}," /var/log/syslog\n",[29,274,275],{},[32,276,277],{},"В системах с systemd (CentOS/Fedora):",[65,279,281],{"className":67,"code":280,"language":69,"meta":70,"style":70},"journalctl -u crond --since \"1 minute ago\"\n",[39,282,283],{"__ignoreMap":70},[74,284,285,288,291,294,297],{"class":76,"line":77},[74,286,287],{"class":80},"journalctl",[74,289,290],{"class":83}," -u",[74,292,293],{"class":168}," crond",[74,295,296],{"class":83}," --since",[74,298,299],{"class":168}," \"1 minute ago\"\n",[21,301,302],{},"Вы должны увидеть строки, подтверждающие загрузку или выполнение задания.",[16,304,306],{"id":305},"проверка-результата","Проверка результата",[21,308,309],{},"Чтобы убедиться, что задание работает:",[29,311,312,315],{},[32,313,314],{},"Дождитесь времени выполнения по расписанию и проверьте целевой файл или лог.",[32,316,317],{},"Временно добавьте простое задание для теста, например:",[65,319,321],{"className":67,"code":320,"language":69,"meta":70,"style":70},"* * * * * /bin/date >> /tmp/cron-test.log\n",[39,322,323],{"__ignoreMap":70},[74,324,325,327,329,331,333,335,338,340],{"class":76,"line":77},[74,326,200],{"class":164},[74,328,203],{"class":164},[74,330,203],{"class":164},[74,332,203],{"class":164},[74,334,203],{"class":164},[74,336,337],{"class":160}," /bin/date ",[74,339,215],{"class":164},[74,341,342],{"class":160}," /tmp/cron-test.log\n",[29,344,345],{},[32,346,347],{},"Подождите минуту и выполните:",[65,349,351],{"className":67,"code":350,"language":69,"meta":70,"style":70},"cat /tmp/cron-test.log\n",[39,352,353],{"__ignoreMap":70},[74,354,355,358],{"class":76,"line":77},[74,356,357],{"class":80},"cat",[74,359,342],{"class":168},[21,361,362],{},"Если время обновляется — cron работает корректно.",[16,364,366],{"id":365},"возможные-проблемы","Возможные проблемы",[29,368,369,379,389,398],{},[32,370,371,375,376,378],{},[372,373,374],"strong",{},"Команда не найдена",". Укажите абсолютный путь и, при необходимости, настрой ",[39,377,161],{}," в начале crontab.",[32,380,381,384,385,388],{},[372,382,383],{},"Нет прав на выполнение",". Убедитесь, что скрипт имеет бит выполнения: ",[39,386,387],{},"chmod +x /path/to/script.sh",".",[32,390,391,394,395,388],{},[372,392,393],{},"Ошибки в окружении",". Добавьте экспорт переменных или запускайте скрипт через оболочку явно: ",[39,396,397],{},"/bin/bash /path/to/script.sh",[32,399,400,403],{},[372,401,402],{},"Логи не пишутся",". Проверьте права на запись в файл лога и наличие свободного места на диске.",[405,406,407],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}",{"title":70,"searchDepth":172,"depth":172,"links":409},[410,411,412,413,414,415,416,417,418],{"id":18,"depth":172,"text":19},{"id":26,"depth":172,"text":27},{"id":59,"depth":172,"text":60},{"id":102,"depth":172,"text":103},{"id":143,"depth":172,"text":144},{"id":186,"depth":172,"text":187},{"id":247,"depth":172,"text":248},{"id":305,"depth":172,"text":306},{"id":365,"depth":172,"text":366},null,"2026-04-28 19:10:45","Пошаговая инструкция по настройке и управлению cron в Linux. Настройте расписание, проверте логи и автоматизируйте рутину за 15–20 минут.","medium",false,"15-20 мин","md",[427,430,433,436],{"question":428,"answer":429},"Почему cron не запускает задачу, хотя она указана в crontab?","Проверьте пути к скриптам, права на выполнение и переменные окружения. Для cron важны абсолютные пути и PATH по умолчанию.",{"question":431,"answer":432},"Как посмотреть, выполнялись ли задания cron?","Используйте `grep CRON /var/log/syslog` в Ubuntu/Debian или `journalctl -u crond` в systemd-системах для проверки логов.",{"question":434,"answer":435},"В чём разница между crontab и systemd-таймерами?","crontab проще и подходит для периодических скриптов, а таймеры systemd гибче: зависят от юнитов, умеют запуск по событиям и сохраняют логи в journal.",{"question":437,"answer":438},"Можно ли перенаправить вывод задания cron в файл?","Да. Добавьте в строку задания перенаправление: `>/var/log/myscript.log 2>&1`, чтобы фиксировать стандартный вывод и ошибки.",[440,443,446],{"name":441,"text":442},"Открыть crontab для редактирования","Запустите `crontab -e` для текущего пользователя или `sudo crontab -e` для root, чтобы открыть редактор расписания.",{"name":444,"text":445},"Добавить задание с правильным синтаксисом","Укажите расписание и команду: `* * * * * /path/to/command`. Используйте абсолютные пути и, при необходимости, определите PATH в начале файла.",{"name":447,"text":448},"Сохранить и проверить ошибки","После сохранения проверьте `grep CRON /var/log/syslog` или `journalctl -u crond`, чтобы убедиться, что cron обработал задание без ошибок.","PT20M",[451,452,453,454,455,456,457,458],"cron linux настройка","планировщик задач linux","crontab примеры","автоматизация задач linux","как настроить cron","расписание задач linux","cron каждую минуту","cron логи ubuntu","ru_RU",{},true,"/guides/linux/automate-tasks-with-cron","linux",[465,466,467],"/guides/linux/manage-systemd-timers","/guides/linux/redirect-output-to-file","/guides/linux/check-system-logs","Гайды Linux",{"title":5,"description":421},"guides/linux/automate-tasks-with-cron","Краткое руководство по планированию и запуску задач в Linux через cron. Вы научитесь создавать расписания, управлять заданиями и проверять выполнение без ручного вмешательства.",[463,473,41,474,69,475,476,477],"cron","automation","планировщик","ubuntu","cli","guide","D2yhLvqH27fXV5WqT0WSqvPNf4R26DTyJy0NkXNgomM",{"data":481,"body":482},{},{"type":483,"children":484},"root",[485],{"type":486,"tag":21,"props":487,"children":488},"element",{},[489],{"type":112,"value":429},{"data":491,"body":492},{},{"type":483,"children":493},[494],{"type":486,"tag":21,"props":495,"children":496},{},[497,499,505,507,513],{"type":112,"value":498},"Используйте ",{"type":486,"tag":39,"props":500,"children":502},{"className":501},[],[503],{"type":112,"value":504},"grep CRON /var/log/syslog",{"type":112,"value":506}," в Ubuntu/Debian или ",{"type":486,"tag":39,"props":508,"children":510},{"className":509},[],[511],{"type":112,"value":512},"journalctl -u crond",{"type":112,"value":514}," в systemd-системах для проверки логов.",{"data":516,"body":517},{},{"type":483,"children":518},[519],{"type":486,"tag":21,"props":520,"children":521},{},[522],{"type":112,"value":435},{"data":524,"body":525},{},{"type":483,"children":526},[527],{"type":486,"tag":21,"props":528,"children":529},{},[530,532,538],{"type":112,"value":531},"Да. Добавьте в строку задания перенаправление: ",{"type":486,"tag":39,"props":533,"children":535},{"className":534},[],[536],{"type":112,"value":537},">/var/log/myscript.log 2>&1",{"type":112,"value":539},", чтобы фиксировать стандартный вывод и ошибки.",{"data":541,"body":542},{},{"type":483,"children":543},[544],{"type":486,"tag":21,"props":545,"children":546},{},[547,549,555,557,562],{"type":112,"value":548},"Запустите ",{"type":486,"tag":39,"props":550,"children":552},{"className":551},[],[553],{"type":112,"value":554},"crontab -e",{"type":112,"value":556}," для текущего пользователя или ",{"type":486,"tag":39,"props":558,"children":560},{"className":559},[],[561],{"type":112,"value":95},{"type":112,"value":563}," для root, чтобы открыть редактор расписания.",{"data":565,"body":566},{},{"type":483,"children":567},[568],{"type":486,"tag":21,"props":569,"children":570},{},[571,573,579],{"type":112,"value":572},"Укажите расписание и команду: ",{"type":486,"tag":39,"props":574,"children":576},{"className":575},[],[577],{"type":112,"value":578},"* * * * * /path/to/command",{"type":112,"value":580},". Используйте абсолютные пути и, при необходимости, определите PATH в начале файла.",{"data":582,"body":583},{},{"type":483,"children":584},[585],{"type":486,"tag":21,"props":586,"children":587},{},[588,590,595,596,601],{"type":112,"value":589},"После сохранения проверьте ",{"type":486,"tag":39,"props":591,"children":593},{"className":592},[],[594],{"type":112,"value":504},{"type":112,"value":49},{"type":486,"tag":39,"props":597,"children":599},{"className":598},[],[600],{"type":112,"value":512},{"type":112,"value":602},", чтобы убедиться, что cron обработал задание без ошибок.",[604],{"id":605,"title":606,"appliesTo":607,"author":11,"body":610,"canonical":419,"code":419,"createdAt":1909,"description":1910,"difficulty":422,"draft":423,"estimatedTime":1911,"extension":425,"faq":1912,"howToSteps":1925,"howToTotalTime":1944,"image":419,"keywords":1945,"locale":459,"meta":1955,"navigation":461,"path":467,"platform":463,"related":1956,"section":468,"seo":1960,"severity":419,"stem":1961,"summary":1962,"tags":1963,"twitterCreator":419,"twitterSite":419,"type":478,"updatedAt":1909,"__hash__":1968},"content_ru/guides/linux/check-system-logs.md","Проверка системных логов в Linux: полное руководство по journalctl и syslog",[608,609],"Linux с systemd (Ubuntu 20.04+, Debian 11+, CentOS 8+, Fedora)","Любой дистрибутив с syslog (rsyslog, syslog-ng)",{"type":13,"value":611,"toc":1858},[612,614,617,622,641,643,646,689,693,698,703,715,732,736,770,774,822,826,856,860,887,921,925,956,960,1004,1008,1013,1017,1053,1057,1104,1108,1121,1139,1143,1150,1154,1180,1184,1243,1247,1264,1268,1285,1289,1295,1298,1393,1397,1441,1445,1448,1452,1471,1475,1498,1502,1518,1522,1529,1551,1555,1559,1599,1607,1613,1619,1623,1630,1636,1638,1641,1663,1673,1675,1681,1697,1701,1727,1734,1752,1756,1770,1774,1793,1795,1799,1852,1855],[16,613,19],{"id":18},[21,615,616],{},"Системные логи в Linux — это главный источник информации о работе операционной системы, служб и приложений. При возникновении ошибок (сбой службы, проблемы с сетью, аппаратные сбои) первым делом нужно обратиться к логам. Это руководство поможет вам освоить основные инструменты для просмотра, фильтрации и анализа логов, что значительно ускорит диагностику проблем.",[21,618,619],{},[372,620,621],{},"Что вы получите:",[29,623,624,629,635,638],{},[32,625,626,627,388],{},"Умение быстро находить логи systemd с помощью ",[39,628,287],{},[32,630,631,632,388],{},"Навык работы с текстовыми логами в ",[39,633,634],{},"/var/log/",[32,636,637],{},"Понимание различий между журналом systemd и классическим syslog.",[32,639,640],{},"Способность фильтровать логи по времени, сервису, уровню важности.",[16,642,27],{"id":26},[21,644,645],{},"Перед началом убедитесь, что:",[647,648,649,652,664,677],"ol",{},[32,650,651],{},"У вас есть доступ к терминалу Linux (локально или через SSH).",[32,653,654,655,658,659,661,662,53],{},"Для чтения системных логов обычно требуются права ",[372,656,657],{},"sudo"," (особенно для ",[39,660,287],{}," и файлов в ",[39,663,634],{},[32,665,666,667,670,671,674,675,388],{},"Ваша система использует ",[372,668,669],{},"systemd"," (проверьте командой ",[39,672,673],{},"systemctl","). Если systemd нет, работайте только с текстовыми логами в ",[39,676,634],{},[32,678,679,680,682,683,682,686,388],{},"Базовые навыки работы с командной строкой: навигация, использование ",[39,681,266],{},", ",[39,684,685],{},"less",[39,687,688],{},"tail",[16,690,692],{"id":691},"шаг-1-основы-работы-с-journalctl-systemd-журнал","Шаг 1: Основы работы с journalctl (systemd-журнал)",[21,694,695,696,388],{},"Большинство современных дистрибутивов (Ubuntu, Fedora, CentOS 8+) используют systemd-journald для сбора логов. Этот журнал хранится в бинарном формате и доступен через утилиту ",[39,697,287],{},[699,700,702],"h3",{"id":701},"просмотр-всех-логов","Просмотр всех логов",[65,704,706],{"className":67,"code":705,"language":69,"meta":70,"style":70},"sudo journalctl\n",[39,707,708],{"__ignoreMap":70},[74,709,710,712],{"class":76,"line":77},[74,711,657],{"class":80},[74,713,714],{"class":168}," journalctl\n",[21,716,717,718,721,722,725,726,682,728,731],{},"Эта команда выведет ",[372,719,720],{},"все"," записи журнала с начала загрузки. Используйте стрелки для прокрутки, ",[39,723,724],{},"/"," для поиска внутри ",[39,727,685],{},[39,729,730],{},"q"," для выхода.",[699,733,735],{"id":734},"просмотр-последних-записей","Просмотр последних записей",[65,737,739],{"className":67,"code":738,"language":69,"meta":70,"style":70},"sudo journalctl -n 50  # последние 50 строк\nsudo journalctl -f     # следить за логом в реальном времени (как tail -f)\n",[39,740,741,758],{"__ignoreMap":70},[74,742,743,745,748,751,754],{"class":76,"line":77},[74,744,657],{"class":80},[74,746,747],{"class":168}," journalctl",[74,749,750],{"class":83}," -n",[74,752,753],{"class":83}," 50",[74,755,757],{"class":756},"sJ8bj","  # последние 50 строк\n",[74,759,760,762,764,767],{"class":76,"line":172},[74,761,657],{"class":80},[74,763,747],{"class":168},[74,765,766],{"class":83}," -f",[74,768,769],{"class":756},"     # следить за логом в реальном времени (как tail -f)\n",[699,771,773],{"id":772},"фильтрация-по-времени","Фильтрация по времени",[65,775,777],{"className":67,"code":776,"language":69,"meta":70,"style":70},"sudo journalctl --since \"2026-02-16 09:00:00\" --until \"2026-02-16 10:00:00\"\nsudo journalctl --since 1h   # за последний час\nsudo journalctl --since today\n",[39,778,779,796,810],{"__ignoreMap":70},[74,780,781,783,785,787,790,793],{"class":76,"line":77},[74,782,657],{"class":80},[74,784,747],{"class":168},[74,786,296],{"class":83},[74,788,789],{"class":168}," \"2026-02-16 09:00:00\"",[74,791,792],{"class":83}," --until",[74,794,795],{"class":168}," \"2026-02-16 10:00:00\"\n",[74,797,798,800,802,804,807],{"class":76,"line":172},[74,799,657],{"class":80},[74,801,747],{"class":168},[74,803,296],{"class":83},[74,805,806],{"class":168}," 1h",[74,808,809],{"class":756},"   # за последний час\n",[74,811,813,815,817,819],{"class":76,"line":812},3,[74,814,657],{"class":80},[74,816,747],{"class":168},[74,818,296],{"class":83},[74,820,821],{"class":168}," today\n",[699,823,825],{"id":824},"фильтрация-по-сервису","Фильтрация по сервису",[65,827,829],{"className":67,"code":828,"language":69,"meta":70,"style":70},"sudo journalctl -u sshd.service   # логи службы SSH\nsudo journalctl -u nginx.service\n",[39,830,831,845],{"__ignoreMap":70},[74,832,833,835,837,839,842],{"class":76,"line":77},[74,834,657],{"class":80},[74,836,747],{"class":168},[74,838,290],{"class":83},[74,840,841],{"class":168}," sshd.service",[74,843,844],{"class":756},"   # логи службы SSH\n",[74,846,847,849,851,853],{"class":76,"line":172},[74,848,657],{"class":80},[74,850,747],{"class":168},[74,852,290],{"class":83},[74,854,855],{"class":168}," nginx.service\n",[699,857,859],{"id":858},"фильтрация-по-уровню-важности-приоритету","Фильтрация по уровню важности (приоритету)",[21,861,862,863,682,866,682,869,682,872,682,875,682,878,682,881,682,884,388],{},"Уровни: ",[39,864,865],{},"emerg",[39,867,868],{},"alert",[39,870,871],{},"crit",[39,873,874],{},"err",[39,876,877],{},"warning",[39,879,880],{},"notice",[39,882,883],{},"info",[39,885,886],{},"debug",[65,888,890],{"className":67,"code":889,"language":69,"meta":70,"style":70},"sudo journalctl -p err   # только ошибки\nsudo journalctl -p warning..err  # от warning до err включительно\n",[39,891,892,907],{"__ignoreMap":70},[74,893,894,896,898,901,904],{"class":76,"line":77},[74,895,657],{"class":80},[74,897,747],{"class":168},[74,899,900],{"class":83}," -p",[74,902,903],{"class":168}," err",[74,905,906],{"class":756},"   # только ошибки\n",[74,908,909,911,913,915,918],{"class":76,"line":172},[74,910,657],{"class":80},[74,912,747],{"class":168},[74,914,900],{"class":83},[74,916,917],{"class":168}," warning..err",[74,919,920],{"class":756},"  # от warning до err включительно\n",[699,922,924],{"id":923},"просмотр-логов-за-текущую-загрузку","Просмотр логов за текущую загрузку",[65,926,928],{"className":67,"code":927,"language":69,"meta":70,"style":70},"sudo journalctl -b       # текущая загрузка\nsudo journalctl -b -1    # предыдущая загрузка\n",[39,929,930,942],{"__ignoreMap":70},[74,931,932,934,936,939],{"class":76,"line":77},[74,933,657],{"class":80},[74,935,747],{"class":168},[74,937,938],{"class":83}," -b",[74,940,941],{"class":756},"       # текущая загрузка\n",[74,943,944,946,948,950,953],{"class":76,"line":172},[74,945,657],{"class":80},[74,947,747],{"class":168},[74,949,938],{"class":83},[74,951,952],{"class":83}," -1",[74,954,955],{"class":756},"    # предыдущая загрузка\n",[699,957,959],{"id":958},"поиск-по-тексту","Поиск по тексту",[65,961,963],{"className":67,"code":962,"language":69,"meta":70,"style":70},"sudo journalctl | grep -i \"failed\"  # поиск слова \"failed\" (без учета регистра)\nsudo journalctl | grep -i \"error\\|fail\"  # несколько паттернов\n",[39,964,965,986],{"__ignoreMap":70},[74,966,967,969,971,974,977,980,983],{"class":76,"line":77},[74,968,657],{"class":80},[74,970,747],{"class":168},[74,972,973],{"class":164}," |",[74,975,976],{"class":80}," grep",[74,978,979],{"class":83}," -i",[74,981,982],{"class":168}," \"failed\"",[74,984,985],{"class":756},"  # поиск слова \"failed\" (без учета регистра)\n",[74,987,988,990,992,994,996,998,1001],{"class":76,"line":172},[74,989,657],{"class":80},[74,991,747],{"class":168},[74,993,973],{"class":164},[74,995,976],{"class":80},[74,997,979],{"class":83},[74,999,1000],{"class":168}," \"error\\|fail\"",[74,1002,1003],{"class":756},"  # несколько паттернов\n",[16,1005,1007],{"id":1006},"шаг-2-работа-с-классическими-текстовыми-логами-varlog","Шаг 2: Работа с классическими текстовыми логами (/var/log)",[21,1009,1010,1011,388],{},"Если ваша система не использует systemd или вам нужны логи конкретных приложений, смотрите файлы в ",[39,1012,634],{},[699,1014,1016],{"id":1015},"основные-файлы-логов","Основные файлы логов",[29,1018,1019,1025,1031,1037,1047],{},[32,1020,1021,1024],{},[39,1022,1023],{},"/var/log/syslog"," (Debian/Ubuntu) — общий системный лог.",[32,1026,1027,1030],{},[39,1028,1029],{},"/var/log/messages"," (RHEL/CentOS/Fedora) — аналогично syslog.",[32,1032,1033,1036],{},[39,1034,1035],{},"/var/log/kern.log"," — логи ядра.",[32,1038,1039,1042,1043,1046],{},[39,1040,1041],{},"/var/log/auth.log"," (Debian) / ",[39,1044,1045],{},"/var/log/secure"," (RHEL) — аутентификация, SSH, sudo.",[32,1048,1049,1052],{},[39,1050,1051],{},"/var/log/dmesg"," — вывод dmesg при последней загрузке.",[699,1054,1056],{"id":1055},"просмотр-и-мониторинг","Просмотр и мониторинг",[65,1058,1060],{"className":67,"code":1059,"language":69,"meta":70,"style":70},"sudo tail -f /var/log/syslog   # следить за обновлениями\nsudo less /var/log/auth.log    # просмотреть с навигацией\nsudo grep \"sshd\" /var/log/auth.log  # найти упоминания sshd\n",[39,1061,1062,1077,1090],{"__ignoreMap":70},[74,1063,1064,1066,1069,1071,1074],{"class":76,"line":77},[74,1065,657],{"class":80},[74,1067,1068],{"class":168}," tail",[74,1070,766],{"class":83},[74,1072,1073],{"class":168}," /var/log/syslog",[74,1075,1076],{"class":756},"   # следить за обновлениями\n",[74,1078,1079,1081,1084,1087],{"class":76,"line":172},[74,1080,657],{"class":80},[74,1082,1083],{"class":168}," less",[74,1085,1086],{"class":168}," /var/log/auth.log",[74,1088,1089],{"class":756},"    # просмотреть с навигацией\n",[74,1091,1092,1094,1096,1099,1101],{"class":76,"line":812},[74,1093,657],{"class":80},[74,1095,976],{"class":168},[74,1097,1098],{"class":168}," \"sshd\"",[74,1100,1086],{"class":168},[74,1102,1103],{"class":756},"  # найти упоминания sshd\n",[699,1105,1107],{"id":1106},"ротация-логов","Ротация логов",[21,1109,1110,1111,1113,1114,682,1117,1120],{},"Файлы в ",[39,1112,634],{}," часто сжимаются и ротируются (например, ",[39,1115,1116],{},"syslog.1",[39,1118,1119],{},"syslog.2.gz","). Для просмотра сжатых файлов:",[65,1122,1124],{"className":67,"code":1123,"language":69,"meta":70,"style":70},"zcat /var/log/syslog.2.gz | less\n",[39,1125,1126],{"__ignoreMap":70},[74,1127,1128,1131,1134,1136],{"class":76,"line":77},[74,1129,1130],{"class":80},"zcat",[74,1132,1133],{"class":168}," /var/log/syslog.2.gz",[74,1135,973],{"class":164},[74,1137,1138],{"class":80}," less\n",[16,1140,1142],{"id":1141},"шаг-3-использование-dmesg-для-логов-ядра","Шаг 3: Использование dmesg для логов ядра",[21,1144,1145,1146,1149],{},"Команда ",[39,1147,1148],{},"dmesg"," показывает кольцевой буфер ядра Linux. Полезна для диагностики аппаратных проблем, ошибок драйверов, загрузки.",[699,1151,1153],{"id":1152},"просмотр-буфера-ядра","Просмотр буфера ядра",[65,1155,1157],{"className":67,"code":1156,"language":69,"meta":70,"style":70},"sudo dmesg\nsudo dmesg | less  # с пагинацией\n",[39,1158,1159,1166],{"__ignoreMap":70},[74,1160,1161,1163],{"class":76,"line":77},[74,1162,657],{"class":80},[74,1164,1165],{"class":168}," dmesg\n",[74,1167,1168,1170,1173,1175,1177],{"class":76,"line":172},[74,1169,657],{"class":80},[74,1171,1172],{"class":168}," dmesg",[74,1174,973],{"class":164},[74,1176,1083],{"class":80},[74,1178,1179],{"class":756},"  # с пагинацией\n",[699,1181,1183],{"id":1182},"фильтрация-по-подсистеме","Фильтрация по подсистеме",[65,1185,1187],{"className":67,"code":1186,"language":69,"meta":70,"style":70},"sudo dmesg | grep -i usb      # USB-устройства\nsudo dmesg | grep -i eth      # сетевые интерфейсы\nsudo dmesg | grep -i error    # ошибки ядра\n",[39,1188,1189,1207,1225],{"__ignoreMap":70},[74,1190,1191,1193,1195,1197,1199,1201,1204],{"class":76,"line":77},[74,1192,657],{"class":80},[74,1194,1172],{"class":168},[74,1196,973],{"class":164},[74,1198,976],{"class":80},[74,1200,979],{"class":83},[74,1202,1203],{"class":168}," usb",[74,1205,1206],{"class":756},"      # USB-устройства\n",[74,1208,1209,1211,1213,1215,1217,1219,1222],{"class":76,"line":172},[74,1210,657],{"class":80},[74,1212,1172],{"class":168},[74,1214,973],{"class":164},[74,1216,976],{"class":80},[74,1218,979],{"class":83},[74,1220,1221],{"class":168}," eth",[74,1223,1224],{"class":756},"      # сетевые интерфейсы\n",[74,1226,1227,1229,1231,1233,1235,1237,1240],{"class":76,"line":812},[74,1228,657],{"class":80},[74,1230,1172],{"class":168},[74,1232,973],{"class":164},[74,1234,976],{"class":80},[74,1236,979],{"class":83},[74,1238,1239],{"class":168}," error",[74,1241,1242],{"class":756},"    # ошибки ядра\n",[699,1244,1246],{"id":1245},"мониторинг-в-реальном-времени","Мониторинг в реальном времени",[65,1248,1250],{"className":67,"code":1249,"language":69,"meta":70,"style":70},"sudo dmesg -w  # следить за новыми сообщениями ядра\n",[39,1251,1252],{"__ignoreMap":70},[74,1253,1254,1256,1258,1261],{"class":76,"line":77},[74,1255,657],{"class":80},[74,1257,1172],{"class":168},[74,1259,1260],{"class":83}," -w",[74,1262,1263],{"class":756},"  # следить за новыми сообщениями ядра\n",[699,1265,1267],{"id":1266},"сохранить-вывод-в-файл","Сохранить вывод в файл",[65,1269,1271],{"className":67,"code":1270,"language":69,"meta":70,"style":70},"sudo dmesg > dmesg_output.txt\n",[39,1272,1273],{"__ignoreMap":70},[74,1274,1275,1277,1279,1282],{"class":76,"line":77},[74,1276,657],{"class":80},[74,1278,1172],{"class":168},[74,1280,1281],{"class":164}," >",[74,1283,1284],{"class":168}," dmesg_output.txt\n",[16,1286,1288],{"id":1287},"шаг-4-логи-конкретных-приложений-и-служб","Шаг 4: Логи конкретных приложений и служб",[21,1290,1291,1292,1294],{},"Многие сервисы пишут логи в собственные файлы в ",[39,1293,634],{},". Обычно это каталог с именем сервиса.",[699,1296,117],{"id":1297},"примеры",[29,1299,1300,1328,1360],{},[32,1301,1302,1305,1306,682,1309,1312],{},[372,1303,1304],{},"Nginx/Apache",": ",[39,1307,1308],{},"/var/log/nginx/access.log",[39,1310,1311],{},"/var/log/nginx/error.log",[65,1313,1315],{"className":67,"code":1314,"language":69,"meta":70,"style":70},"sudo tail -f /var/log/nginx/error.log\n",[39,1316,1317],{"__ignoreMap":70},[74,1318,1319,1321,1323,1325],{"class":76,"line":77},[74,1320,657],{"class":80},[74,1322,1068],{"class":168},[74,1324,766],{"class":83},[74,1326,1327],{"class":168}," /var/log/nginx/error.log\n",[32,1329,1330,1305,1333,1336],{},[372,1331,1332],{},"MySQL/MariaDB",[39,1334,1335],{},"/var/log/mysql/error.log",[65,1337,1339],{"className":67,"code":1338,"language":69,"meta":70,"style":70},"sudo cat /var/log/mysql/error.log | grep -i \"error\"\n",[39,1340,1341],{"__ignoreMap":70},[74,1342,1343,1345,1348,1351,1353,1355,1357],{"class":76,"line":77},[74,1344,657],{"class":80},[74,1346,1347],{"class":168}," cat",[74,1349,1350],{"class":168}," /var/log/mysql/error.log",[74,1352,973],{"class":164},[74,1354,976],{"class":80},[74,1356,979],{"class":83},[74,1358,1359],{"class":168}," \"error\"\n",[32,1361,1362,1305,1365,49,1368,1371],{},[372,1363,1364],{},"Docker",[39,1366,1367],{},"/var/log/docker.log",[39,1369,1370],{},"docker logs \u003Ccontainer_id>",[65,1372,1374],{"className":67,"code":1373,"language":69,"meta":70,"style":70},"docker logs --tail 100 контейнер_имена\n",[39,1375,1376],{"__ignoreMap":70},[74,1377,1378,1381,1384,1387,1390],{"class":76,"line":77},[74,1379,1380],{"class":80},"docker",[74,1382,1383],{"class":168}," logs",[74,1385,1386],{"class":83}," --tail",[74,1388,1389],{"class":83}," 100",[74,1391,1392],{"class":168}," контейнер_имена\n",[699,1394,1396],{"id":1395},"поиск-логов-неизвестного-сервиса","Поиск логов неизвестного сервиса",[65,1398,1400],{"className":67,"code":1399,"language":69,"meta":70,"style":70},"ls -la /var/log/  # посмотреть структуру\nsudo find /var/log -name \"*\u003Cимя_сервиса>*\" -type f  # найти файлы по шаблону\n",[39,1401,1402,1416],{"__ignoreMap":70},[74,1403,1404,1407,1410,1413],{"class":76,"line":77},[74,1405,1406],{"class":80},"ls",[74,1408,1409],{"class":83}," -la",[74,1411,1412],{"class":168}," /var/log/",[74,1414,1415],{"class":756},"  # посмотреть структуру\n",[74,1417,1418,1420,1423,1426,1429,1432,1435,1438],{"class":76,"line":172},[74,1419,657],{"class":80},[74,1421,1422],{"class":168}," find",[74,1424,1425],{"class":168}," /var/log",[74,1427,1428],{"class":83}," -name",[74,1430,1431],{"class":168}," \"*\u003Cимя_сервиса>*\"",[74,1433,1434],{"class":83}," -type",[74,1436,1437],{"class":168}," f",[74,1439,1440],{"class":756},"  # найти файлы по шаблону\n",[16,1442,1444],{"id":1443},"шаг-5-расширенные-техники-фильтрации-и-поиска","Шаг 5: Расширенные техники фильтрации и поиска",[21,1446,1447],{},"Комбинируйте инструменты для точного поиска.",[699,1449,1451],{"id":1450},"поиск-по-дате-в-текстовых-логах","Поиск по дате в текстовых логах",[65,1453,1455],{"className":67,"code":1454,"language":69,"meta":70,"style":70},"sudo grep \"Feb 16\" /var/log/syslog  # искать по дате (формат зависит от локали)\n",[39,1456,1457],{"__ignoreMap":70},[74,1458,1459,1461,1463,1466,1468],{"class":76,"line":77},[74,1460,657],{"class":80},[74,1462,976],{"class":168},[74,1464,1465],{"class":168}," \"Feb 16\"",[74,1467,1073],{"class":168},[74,1469,1470],{"class":756},"  # искать по дате (формат зависит от локали)\n",[699,1472,1474],{"id":1473},"использование-journalctl-с-grep","Использование journalctl с grep",[65,1476,1478],{"className":67,"code":1477,"language":69,"meta":70,"style":70},"sudo journalctl | grep -i \"failed to start\"  # найти конкретную фразу\n",[39,1479,1480],{"__ignoreMap":70},[74,1481,1482,1484,1486,1488,1490,1492,1495],{"class":76,"line":77},[74,1483,657],{"class":80},[74,1485,747],{"class":168},[74,1487,973],{"class":164},[74,1489,976],{"class":80},[74,1491,979],{"class":83},[74,1493,1494],{"class":168}," \"failed to start\"",[74,1496,1497],{"class":756},"  # найти конкретную фразу\n",[699,1499,1501],{"id":1500},"экспорт-журнала-systemd-в-текстовый-файл","Экспорт журнала systemd в текстовый файл",[65,1503,1505],{"className":67,"code":1504,"language":69,"meta":70,"style":70},"sudo journalctl > full_journal.txt\n",[39,1506,1507],{"__ignoreMap":70},[74,1508,1509,1511,1513,1515],{"class":76,"line":77},[74,1510,657],{"class":80},[74,1512,747],{"class":168},[74,1514,1281],{"class":164},[74,1516,1517],{"class":168}," full_journal.txt\n",[699,1519,1521],{"id":1520},"просмотр-логов-с-цветовым-выделением","Просмотр логов с цветовым выделением",[21,1523,1524,1525,1528],{},"Установите ",[39,1526,1527],{},"ccze"," или используйте:",[65,1530,1532],{"className":67,"code":1531,"language":69,"meta":70,"style":70},"sudo journalctl --no-pager | ccze -A\n",[39,1533,1534],{"__ignoreMap":70},[74,1535,1536,1538,1540,1543,1545,1548],{"class":76,"line":77},[74,1537,657],{"class":80},[74,1539,747],{"class":168},[74,1541,1542],{"class":83}," --no-pager",[74,1544,973],{"class":164},[74,1546,1547],{"class":80}," ccze",[74,1549,1550],{"class":83}," -A\n",[16,1552,1554],{"id":1553},"шаг-6-настройка-ротации-и-очистки-логов","Шаг 6: Настройка ротации и очистки логов",[699,1556,1558],{"id":1557},"очистка-старого-журнала-systemd","Очистка старого журнала systemd",[65,1560,1562],{"className":67,"code":1561,"language":69,"meta":70,"style":70},"# Оставить записи только за последние 2 дня\nsudo journalctl --vacuum-time=2d\n\n# Ограничить размер журнала 500 МБ\nsudo journalctl --vacuum-size=500M\n",[39,1563,1564,1569,1578,1583,1589],{"__ignoreMap":70},[74,1565,1566],{"class":76,"line":77},[74,1567,1568],{"class":756},"# Оставить записи только за последние 2 дня\n",[74,1570,1571,1573,1575],{"class":76,"line":172},[74,1572,657],{"class":80},[74,1574,747],{"class":168},[74,1576,1577],{"class":83}," --vacuum-time=2d\n",[74,1579,1580],{"class":76,"line":812},[74,1581,1582],{"emptyLinePlaceholder":461},"\n",[74,1584,1586],{"class":76,"line":1585},4,[74,1587,1588],{"class":756},"# Ограничить размер журнала 500 МБ\n",[74,1590,1592,1594,1596],{"class":76,"line":1591},5,[74,1593,657],{"class":80},[74,1595,747],{"class":168},[74,1597,1598],{"class":83}," --vacuum-size=500M\n",[699,1600,1602,1603,1606],{"id":1601},"настройка-journald-конфиг-etcsystemdjournaldconf","Настройка journald (конфиг ",[39,1604,1605],{},"/etc/systemd/journald.conf",")",[65,1608,1611],{"className":1609,"code":1610,"language":112},[110],"[Journal]\nSystemMaxUse=500M    # максимальный размер журнала\nMaxRetentionSec=1week  # хранить не дольше недели\n",[39,1612,1610],{"__ignoreMap":70},[21,1614,1615,1616,388],{},"После изменений перезапустите: ",[39,1617,1618],{},"sudo systemctl restart systemd-journald",[699,1620,1622],{"id":1621},"настройка-logrotate-для-текстовых-логов","Настройка logrotate для текстовых логов",[21,1624,1625,1626,1629],{},"Конфиги в ",[39,1627,1628],{},"/etc/logrotate.d/",". Пример для nginx:",[65,1631,1634],{"className":1632,"code":1633,"language":112},[110],"/var/log/nginx/*.log {\n    daily\n    rotate 7\n    compress\n    delaycompress\n    missingok\n    notifempty\n    create 640 www-data adm\n    sharedscripts\n    postrotate\n        [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`\n    endscript\n}\n",[39,1635,1633],{"__ignoreMap":70},[16,1637,306],{"id":305},[21,1639,1640],{},"После выполнения шагов вы должны:",[647,1642,1643,1649,1657,1660],{},[32,1644,1645,1646,388],{},"Увидеть последние записи журнала systemd через ",[39,1647,1648],{},"journalctl -xe",[32,1650,1651,1652,49,1655,53],{},"Найти логи конкретного сервиса (например, ",[39,1653,1654],{},"journalctl -u sshd",[39,1656,1041],{},[32,1658,1659],{},"Отфильтровать логи по времени или уровню ошибки.",[32,1661,1662],{},"При необходимости очистить старые записи, чтобы освободить место.",[21,1664,1665,1668,1669,1672],{},[372,1666,1667],{},"Пример проверки:"," Выполните ",[39,1670,1671],{},"sudo journalctl -p err --since \"1 hour ago\"",". Если команда возвращает записи (или пустой вывод, если ошибок нет) — инструмент работает.",[16,1674,366],{"id":365},[699,1676,1678,1679],{"id":1677},"failed-to-connect-to-bus-no-such-file-or-directory-при-journalctl","❌ \"Failed to connect to bus: No such file or directory\" при ",[39,1680,287],{},[21,1682,1683,1686,1687,1690,1691,1694,1695,388],{},[372,1684,1685],{},"Причина:"," systemd-journald не запущен или вы не в системе с systemd (например, в контейнере).\n",[372,1688,1689],{},"Решение:"," Проверьте ",[39,1692,1693],{},"systemctl status systemd-journald",". В контейнерах используйте текстовые логи в ",[39,1696,634],{},[699,1698,1700],{"id":1699},"permission-denied-при-чтении-логов","❌ \"Permission denied\" при чтении логов",[21,1702,1703,1705,1706,1708,1709,1711,1712,1715,1716,1719,1720,1723,1726],{},[372,1704,1685],{}," Недостаточно прав.\n",[372,1707,1689],{}," Добавьте ",[39,1710,657],{}," или добавьте пользователя в группу ",[39,1713,1714],{},"adm"," (Debian/Ubuntu) или ",[39,1717,1718],{},"systemd-journal"," (RHEL):",[1721,1722],"br",{},[39,1724,1725],{},"sudo usermod -aG adm $USER"," (требуется перелогин).",[699,1728,1730,1731,1733],{"id":1729},"логи-varlogsyslog-пустые-или-отсутствуют","❌ Логи ",[39,1732,1023],{}," пустые или отсутствуют",[21,1735,1736,1738,1739,1741,1742,1745,1746,1748,1749,388],{},[372,1737,1685],{}," Возможно, используется systemd-journald без прямого вывода в файл, или syslog-демон не настроен.\n",[372,1740,1689],{}," Проверьте, работает ли ",[39,1743,1744],{},"systemd-journald",". Для сохранения логов в файл настройте ",[39,1747,1744],{}," или установите ",[39,1750,1751],{},"rsyslog",[699,1753,1755],{"id":1754},"журнал-systemd-слишком-большой","❌ Журнал systemd слишком большой",[21,1757,1758,1760,1761,1763,1764,1766,1767,388],{},[372,1759,1685],{}," По умолчанию journald может занимать много места.\n",[372,1762,1689],{}," Настройте ограничения в ",[39,1765,1605],{}," (см. Шаг 6) и выполните ",[39,1768,1769],{},"sudo journalctl --vacuum-size=200M",[699,1771,1773],{"id":1772},"не-могу-найти-логи-конкретного-приложения","❌ Не могу найти логи конкретного приложения",[21,1775,1776,1778,1779,1782,1783,1785,1786,1789,1790,388],{},[372,1777,1685],{}," Приложение может писать логи в свой каталог (например, ",[39,1780,1781],{},"/opt/app/logs/",") или в journald.\n",[372,1784,1689],{}," Проверьте документацию приложения. Используйте ",[39,1787,1788],{},"sudo journalctl | grep -i \"имя_приложения\""," или найдите файлы: ",[39,1791,1792],{},"sudo find / -name \"*app*log*\" 2>/dev/null",[139,1794],{},[16,1796,1798],{"id":1797},"заключительные-рекомендации","Заключительные рекомендации",[29,1800,1801,1810,1828,1840,1846],{},[32,1802,1803,1806,1807,1809],{},[372,1804,1805],{},"Приоритет:"," Начинайте с ",[39,1808,1648],{}," — это самый быстрый способ увидеть последние ошибки systemd.",[32,1811,1812,1815,1816,1819,1820,1823,1824,1827],{},[372,1813,1814],{},"Фильтрация:"," Всегда сужайте вывод по времени (",[39,1817,1818],{},"--since","), сервису (",[39,1821,1822],{},"-u",") или уровню (",[39,1825,1826],{},"-p","). Это сэкономит время.",[32,1829,1830,1833,1834,49,1837,388],{},[372,1831,1832],{},"Мониторинг:"," Для отслеживания событий в реальном времени используйте ",[39,1835,1836],{},"journalctl -f",[39,1838,1839],{},"tail -f /var/log/syslog",[32,1841,1842,1845],{},[372,1843,1844],{},"Документация:"," Конкретные приложения (PostgreSQL, Docker, Kubernetes) часто имеют свои каталоги логов — изучайте официальную документацию.",[32,1847,1848,1851],{},[372,1849,1850],{},"Безопасность:"," Не оставляйте старые логи на диске бесконечно. Настройте ротацию, особенно на production-серверах.",[21,1853,1854],{},"Эти навыки помогут вам перестать \"гадать\" при ошибках и быстро находить корень проблемы. Удачи в диагностике",[405,1856,1857],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":70,"searchDepth":172,"depth":172,"links":1859},[1860,1861,1862,1871,1876,1882,1886,1892,1898,1899,1908],{"id":18,"depth":172,"text":19},{"id":26,"depth":172,"text":27},{"id":691,"depth":172,"text":692,"children":1863},[1864,1865,1866,1867,1868,1869,1870],{"id":701,"depth":812,"text":702},{"id":734,"depth":812,"text":735},{"id":772,"depth":812,"text":773},{"id":824,"depth":812,"text":825},{"id":858,"depth":812,"text":859},{"id":923,"depth":812,"text":924},{"id":958,"depth":812,"text":959},{"id":1006,"depth":172,"text":1007,"children":1872},[1873,1874,1875],{"id":1015,"depth":812,"text":1016},{"id":1055,"depth":812,"text":1056},{"id":1106,"depth":812,"text":1107},{"id":1141,"depth":172,"text":1142,"children":1877},[1878,1879,1880,1881],{"id":1152,"depth":812,"text":1153},{"id":1182,"depth":812,"text":1183},{"id":1245,"depth":812,"text":1246},{"id":1266,"depth":812,"text":1267},{"id":1287,"depth":172,"text":1288,"children":1883},[1884,1885],{"id":1297,"depth":812,"text":117},{"id":1395,"depth":812,"text":1396},{"id":1443,"depth":172,"text":1444,"children":1887},[1888,1889,1890,1891],{"id":1450,"depth":812,"text":1451},{"id":1473,"depth":812,"text":1474},{"id":1500,"depth":812,"text":1501},{"id":1520,"depth":812,"text":1521},{"id":1553,"depth":172,"text":1554,"children":1893},[1894,1895,1897],{"id":1557,"depth":812,"text":1558},{"id":1601,"depth":812,"text":1896},"Настройка journald (конфиг /etc/systemd/journald.conf)",{"id":1621,"depth":812,"text":1622},{"id":305,"depth":172,"text":306},{"id":365,"depth":172,"text":366,"children":1900},[1901,1903,1904,1906,1907],{"id":1677,"depth":812,"text":1902},"❌ \"Failed to connect to bus: No such file or directory\" при journalctl",{"id":1699,"depth":812,"text":1700},{"id":1729,"depth":812,"text":1905},"❌ Логи /var/log/syslog пустые или отсутствуют",{"id":1754,"depth":812,"text":1755},{"id":1772,"depth":812,"text":1773},{"id":1797,"depth":172,"text":1798},"2026-02-16 13:59:36","Узнайте, как эффективно анализировать системные логи в Linux с помощью journalctl и syslog. Пошаговая инструкция по поиску ошибок, фильтрации и мониторингу за 10 минут.","10-15 мин",[1913,1916,1919,1922],{"answer":1914,"question":1915},"Логи системных событий (systemd) хранятся в бинарном журнале, доступном через `journalctl`. Традиционные текстовые логи находятся в `/var/log/` (например, `/var/log/syslog`, `/var/log/kern.log`).","Где находятся логи в Linux?",{"answer":1917,"question":1918},"Используйте команду `journalctl --since \"1 hour ago\"`. Для текстовых логов в `/var/log/` можно использовать `tail -f /var/log/syslog` в реальном времени.","Как посмотреть логи за последний час?",{"answer":1920,"question":1921},"Очистить старые записи можно командой `journalctl --vacuum-time=3d` (оставить за 3 дня) или `journalctl --vacuum-size=100M` (ограничить размер 100 МБ).","Что делать, если журнал systemd переполнен?",{"answer":1923,"question":1924},"Используйте фильтр `journalctl -u имя_сервиса.service`. Например, `journalctl -u nginx.service` покажет логи веб-сервера nginx.","Как найти логи конкретного сервиса?",[1926,1929,1932,1935,1938,1941],{"name":1927,"text":1928},"Определите источник проблемы","Сначала решите, ищете ли вы логи systemd, ядра (kernel), конкретного сервиса или приложения. Это определит используемую команду.",{"name":1930,"text":1931},"Используйте journalctl для systemd-журнала","Выполните `journalctl -xe` для просмотра последних записей с расширенным выводом ошибок. Фильтруйте по времени (`--since`), сервису (`-u`) или приоритету (`-p err`).",{"name":1933,"text":1934},"Просматривайте традиционные логи в /var/log","Для системного лога используйте `tail -f /var/log/syslog` (Debian/Ubuntu) или `tail -f /var/log/messages` (RHEL/CentOS). Ядерные логи — в `/var/log/kern.log`.",{"name":1936,"text":1937},"Используйте dmesg для логов ядра","Команда `dmesg` показывает буфер ядра. Для мониторинга в реальном времени: `dmesg -w`. Фильтруйте по подсистеме: `dmesg | grep -i usb`.",{"name":1939,"text":1940},"Анализируйте логи приложений","Логи многих сервисов (nginx, Apache, MySQL) пишутся в собственные файлы в `/var/log/`. Найдите их через `ls /var/log/` или документацию ПО.",{"name":1942,"text":1943},"Настройте ротацию логов при необходимости","Если логи слишком велики, настройте logrotate (конфиги в `/etc/logrotate.d/`) или параметры хранения journalctl (`/etc/systemd/journald.conf`).","PT15M",[1946,1947,1948,1949,1950,1951,1952,1953,1954],"проверка логов linux","как посмотреть системные логи linux","journalctl команды","syslog linux где находится","анализ логов ошибок linux","dmesg вывод","логи systemd journal","где хранятся логи в ubuntu","поиск ошибок в linux логи",{},[1957,1958,1959],"/guides/linux/systemd-service-management","/guides/linux/ssh-connection-issues","/errors/linux/ssh-connection-refused",{"title":606,"description":1910},"guides/linux/check-system-logs","Это руководство научит вас находить, читать и анализировать системные логи в Linux. Вы освоите ключевые команды journalctl и утилиты для работы с /var/log, что поможет быстро диагностировать проблемы с системой, службами и приложениями.",[463,1964,287,1965,1966,669,1967,476],"sysadmin","logs","отладка","мониторинг","3QfyGSLUXWSS2gL0r25W_E0vNCOhrBR_JGa1oOL43sU"]