[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/linux/systemd-service-management":3,"mdc--8x7ws8-key":888,"mdc-olyle5-key":916,"mdc--3d3xgz-key":924,"mdc--lt76n9-key":968,"mdc--iejy3p-key":984,"mdc--6y1ncn-key":1001,"mdc--my93w7-key":1033,"mdc--cqzcnj-key":1057,"mdc--yb0fr1-key":1087,"mdc-4v7iz4-key":1104,"related-/guides/linux/systemd-journal-logs,/errors/linux/systemd-failed-to-start,/guides/linux/crontab-vs-systemd-timers":1120},{"id":4,"title":5,"appliesTo":6,"author":11,"body":12,"canonical":821,"code":821,"createdAt":822,"description":823,"difficulty":824,"draft":825,"estimatedTime":826,"extension":827,"faq":828,"howToSteps":841,"howToTotalTime":860,"image":821,"keywords":861,"locale":870,"meta":871,"navigation":872,"path":873,"platform":874,"related":875,"section":879,"seo":880,"severity":821,"stem":881,"summary":882,"tags":883,"twitterCreator":821,"twitterSite":821,"type":886,"updatedAt":822,"__hash__":887},"content_ru/guides/linux/systemd-service-management.md","Управление systemd-сервисами: полное руководство по запуску, остановке и настройке",[7,8,9,10],"Ubuntu 20.04+","CentOS/RHEL 8+","Debian 10+","Fedora","FixPedia Team",{"type":13,"value":14,"toc":809},"minimark",[15,20,24,36,40,62,66,69,191,195,201,285,288,292,399,403,408,533,537,613,617,665,669,805],[16,17,19],"h2",{"id":18},"введение-зачем-это-нужно","Введение / Зачем это нужно",[21,22,23],"p",{},"Systemd стал стандартом для управления службами и процессами в большинстве современных дистрибутивов Linux (Ubuntu, Fedora, CentOS/RHEL 8+, Debian 10+). Понимание его основ — обязательный навык для системного администратора и разработчика, работающего с серверами.",[21,25,26,27,31,32,35],{},"Это руководство даст вам практические навыки для повседневного управления сервисами: запуск, остановка, настройка автозапуска и диагностика сбоев. Вы сможете уверенно работать с такими командами, как ",[28,29,30],"code",{},"systemctl"," и ",[28,33,34],{},"journalctl",".",[16,37,39],{"id":38},"требования-подготовка","Требования / Подготовка",[41,42,43,51,59],"ul",{},[44,45,46,47,50],"li",{},"Дистрибутив Linux с системой инициализации systemd (проверьте: ",[28,48,49],{},"pidof systemd",").",[44,52,53,54,58],{},"Доступ к терминалу с правами ",[55,56,57],"strong",{},"sudo"," (для управления системными службами).",[44,60,61],{},"Базовое понимание командной строки.",[16,63,65],{"id":64},"шаг-1-основные-команды-управления-состоянием-службы","Шаг 1: Основные команды управления состоянием службы",[21,67,68],{},"Systemctl — основной инструмент взаимодействия с systemd. Вот ключевые команды для управления состоянием:",[41,70,71,110,131,152],{},[44,72,73,76,103],{},[55,74,75],{},"Запуск службы:",[77,78,83],"pre",{"className":79,"code":80,"language":81,"meta":82,"style":82},"language-bash shiki shiki-themes github-light github-dark","sudo systemctl start имя_службы.service\n","bash","",[28,84,85],{"__ignoreMap":82},[86,87,90,93,97,100],"span",{"class":88,"line":89},"line",1,[86,91,57],{"class":92},"sScJk",[86,94,96],{"class":95},"sZZnC"," systemctl",[86,98,99],{"class":95}," start",[86,101,102],{"class":95}," имя_службы.service\n",[104,105,106,107],"em",{},"Пример: ",[28,108,109],{},"sudo systemctl start nginx",[44,111,112,115],{},[55,113,114],{},"Остановка службы:",[77,116,118],{"className":79,"code":117,"language":81,"meta":82,"style":82},"sudo systemctl stop имя_службы.service\n",[28,119,120],{"__ignoreMap":82},[86,121,122,124,126,129],{"class":88,"line":89},[86,123,57],{"class":92},[86,125,96],{"class":95},[86,127,128],{"class":95}," stop",[86,130,102],{"class":95},[44,132,133,136],{},[55,134,135],{},"Перезапуск службы (мягкий):",[77,137,139],{"className":79,"code":138,"language":81,"meta":82,"style":82},"sudo systemctl restart имя_службы.service\n",[28,140,141],{"__ignoreMap":82},[86,142,143,145,147,150],{"class":88,"line":89},[86,144,57],{"class":92},[86,146,96],{"class":95},[86,148,149],{"class":95}," restart",[86,151,102],{"class":95},[44,153,154,157,173],{},[55,155,156],{},"Принудительная перезагрузка (kill и запуск):",[77,158,160],{"className":79,"code":159,"language":81,"meta":82,"style":82},"sudo systemctl try-restart имя_службы.service\n",[28,161,162],{"__ignoreMap":82},[86,163,164,166,168,171],{"class":88,"line":89},[86,165,57],{"class":92},[86,167,96],{"class":95},[86,169,170],{"class":95}," try-restart",[86,172,102],{"class":95},[174,175,176],"blockquote",{},[21,177,178,179,182,183,186,187,190],{},"💡 ",[55,180,181],{},"Совет:"," Для веб-серверов (nginx, apache) после изменения конфигурации используйте ",[28,184,185],{},"reload"," (",[28,188,189],{},"sudo systemctl reload nginx","), чтобы перечитать конфиг без разрыва соединений.",[16,192,194],{"id":193},"шаг-2-управление-автозагрузкой-включениеотключение","Шаг 2: Управление автозагрузкой (включение/отключение)",[21,196,197,198,35],{},"Чтобы служба автоматически запускалась при загрузке системы, её нужно ",[104,199,200],{},"включить",[41,202,203,228,249],{},[44,204,205,208,224,225,35],{},[55,206,207],{},"Включить автозапуск:",[77,209,211],{"className":79,"code":210,"language":81,"meta":82,"style":82},"sudo systemctl enable имя_службы.service\n",[28,212,213],{"__ignoreMap":82},[86,214,215,217,219,222],{"class":88,"line":89},[86,216,57],{"class":92},[86,218,96],{"class":95},[86,220,221],{"class":95}," enable",[86,223,102],{"class":95},"\nЭта команда создаёт символьную ссылку на unit-файл в каталоге ",[28,226,227],{},"/etc/systemd/system/",[44,229,230,233],{},[55,231,232],{},"Отключить автозапуск:",[77,234,236],{"className":79,"code":235,"language":81,"meta":82,"style":82},"sudo systemctl disable имя_службы.service\n",[28,237,238],{"__ignoreMap":82},[86,239,240,242,244,247],{"class":88,"line":89},[86,241,57],{"class":92},[86,243,96],{"class":95},[86,245,246],{"class":95}," disable",[86,248,102],{"class":95},[44,250,251,254,268,269,272,273,276,277,280,281,284],{},[55,252,253],{},"Проверить, включена ли служба в автозагрузку:",[77,255,257],{"className":79,"code":256,"language":81,"meta":82,"style":82},"systemctl is-enabled имя_службы.service\n",[28,258,259],{"__ignoreMap":82},[86,260,261,263,266],{"class":88,"line":89},[86,262,30],{"class":92},[86,264,265],{"class":95}," is-enabled",[86,267,102],{"class":95},"\nВывод: ",[28,270,271],{},"enabled"," (включена), ",[28,274,275],{},"disabled"," (отключена), ",[28,278,279],{},"static"," (не может быть включена напрямую, но может быть зависимостью), ",[28,282,283],{},"masked"," (полностью заблокирована).",[286,287],"in-article-ad",{},[16,289,291],{"id":290},"шаг-3-просмотр-статуса-и-всех-служб","Шаг 3: Просмотр статуса и всех служб",[41,293,294,322,343,365],{},[44,295,296,299,313,314,317,318,321],{},[55,297,298],{},"Детальный статус конкретной службы:",[77,300,302],{"className":79,"code":301,"language":81,"meta":82,"style":82},"systemctl status имя_службы.service\n",[28,303,304],{"__ignoreMap":82},[86,305,306,308,311],{"class":88,"line":89},[86,307,30],{"class":92},[86,309,310],{"class":95}," status",[86,312,102],{"class":95},"\nВывод показывает: ",[28,315,316],{},"Active:"," (состояние), ",[28,319,320],{},"Main PID:"," (идентификатор процесса), и последние строки журнала этой службы.",[44,323,324,327],{},[55,325,326],{},"Список всех загруженных (активных) юнитов:",[77,328,330],{"className":79,"code":329,"language":81,"meta":82,"style":82},"systemctl list-units --type=service\n",[28,331,332],{"__ignoreMap":82},[86,333,334,336,339],{"class":88,"line":89},[86,335,30],{"class":92},[86,337,338],{"class":95}," list-units",[86,340,342],{"class":341},"sj4cs"," --type=service\n",[44,344,345,348],{},[55,346,347],{},"Список ВСЕХ доступных служб (включая неактивные):",[77,349,351],{"className":79,"code":350,"language":81,"meta":82,"style":82},"systemctl list-units --type=service --all\n",[28,352,353],{"__ignoreMap":82},[86,354,355,357,359,362],{"class":88,"line":89},[86,356,30],{"class":92},[86,358,338],{"class":95},[86,360,361],{"class":341}," --type=service",[86,363,364],{"class":341}," --all\n",[44,366,367,370],{},[55,368,369],{},"Поиск службы по имени:",[77,371,373],{"className":79,"code":372,"language":81,"meta":82,"style":82},"systemctl list-units --type=service --all | grep -i ssh\n",[28,374,375],{"__ignoreMap":82},[86,376,377,379,381,383,386,390,393,396],{"class":88,"line":89},[86,378,30],{"class":92},[86,380,338],{"class":95},[86,382,361],{"class":341},[86,384,385],{"class":341}," --all",[86,387,389],{"class":388},"szBVR"," |",[86,391,392],{"class":92}," grep",[86,394,395],{"class":341}," -i",[86,397,398],{"class":95}," ssh\n",[16,400,402],{"id":401},"шаг-4-анализ-логов-с-помощью-journalctl","Шаг 4: Анализ логов с помощью journalctl",[21,404,405,406,35],{},"Логи systemd хранятся в бинарном журнале, доступном через ",[28,407,34],{},[41,409,410,432,460,479,507],{},[44,411,412,415],{},[55,413,414],{},"Просмотр логов конкретной службы:",[77,416,418],{"className":79,"code":417,"language":81,"meta":82,"style":82},"sudo journalctl -u имя_службы.service\n",[28,419,420],{"__ignoreMap":82},[86,421,422,424,427,430],{"class":88,"line":89},[86,423,57],{"class":92},[86,425,426],{"class":95}," journalctl",[86,428,429],{"class":341}," -u",[86,431,102],{"class":95},[44,433,434,441],{},[55,435,436,437,440],{},"Отслеживание логов в реальном времени (аналог ",[28,438,439],{},"tail -f","):",[77,442,444],{"className":79,"code":443,"language":81,"meta":82,"style":82},"sudo journalctl -u имя_службы.service -f\n",[28,445,446],{"__ignoreMap":82},[86,447,448,450,452,454,457],{"class":88,"line":89},[86,449,57],{"class":92},[86,451,426],{"class":95},[86,453,429],{"class":341},[86,455,456],{"class":95}," имя_службы.service",[86,458,459],{"class":341}," -f\n",[44,461,462,465],{},[55,463,464],{},"Логи за последнюю загрузку системы:",[77,466,468],{"className":79,"code":467,"language":81,"meta":82,"style":82},"sudo journalctl -b\n",[28,469,470],{"__ignoreMap":82},[86,471,472,474,476],{"class":88,"line":89},[86,473,57],{"class":92},[86,475,426],{"class":95},[86,477,478],{"class":341}," -b\n",[44,480,481,484],{},[55,482,483],{},"Логи с фильтрацией по времени:",[77,485,487],{"className":79,"code":486,"language":81,"meta":82,"style":82},"sudo journalctl --since \"2026-02-15 10:00:00\" --until \"2026-02-15 12:00:00\"\n",[28,488,489],{"__ignoreMap":82},[86,490,491,493,495,498,501,504],{"class":88,"line":89},[86,492,57],{"class":92},[86,494,426],{"class":95},[86,496,497],{"class":341}," --since",[86,499,500],{"class":95}," \"2026-02-15 10:00:00\"",[86,502,503],{"class":341}," --until",[86,505,506],{"class":95}," \"2026-02-15 12:00:00\"\n",[44,508,509,512],{},[55,510,511],{},"Показать логи с максимальной детализацией для службы:",[77,513,515],{"className":79,"code":514,"language":81,"meta":82,"style":82},"sudo journalctl -u имя_службы.service -o verbose\n",[28,516,517],{"__ignoreMap":82},[86,518,519,521,523,525,527,530],{"class":88,"line":89},[86,520,57],{"class":92},[86,522,426],{"class":95},[86,524,429],{"class":341},[86,526,456],{"class":95},[86,528,529],{"class":341}," -o",[86,531,532],{"class":95}," verbose\n",[16,534,536],{"id":535},"шаг-5-дополнительные-операции-перезагрузка-конфигурации-маскировка","Шаг 5: Дополнительные операции (перезагрузка конфигурации, маскировка)",[41,538,539,558,587],{},[44,540,541,544],{},[55,542,543],{},"Перезагрузка конфигурации systemd (обязательно после создания/изменения unit-файлов):",[77,545,547],{"className":79,"code":546,"language":81,"meta":82,"style":82},"sudo systemctl daemon-reload\n",[28,548,549],{"__ignoreMap":82},[86,550,551,553,555],{"class":88,"line":89},[86,552,57],{"class":92},[86,554,96],{"class":95},[86,556,557],{"class":95}," daemon-reload\n",[44,559,560,563,579,580,583,584,35],{},[55,561,562],{},"Полная блокировка службы (mask) — предотвращает любой ручной или автоматический запуск:",[77,564,566],{"className":79,"code":565,"language":81,"meta":82,"style":82},"sudo systemctl mask имя_службы.service\n",[28,567,568],{"__ignoreMap":82},[86,569,570,572,574,577],{"class":88,"line":89},[86,571,57],{"class":92},[86,573,96],{"class":95},[86,575,576],{"class":95}," mask",[86,578,102],{"class":95},"\nСоздаёт символическую ссылку на ",[28,581,582],{},"/dev/null",". Разблокировка: ",[28,585,586],{},"sudo systemctl unmask имя_службы.service",[44,588,589,592,608,609,612],{},[55,590,591],{},"Принудительная остановка и сброс состояния службы:",[77,593,595],{"className":79,"code":594,"language":81,"meta":82,"style":82},"sudo systemctl reset-failed имя_службы.service\n",[28,596,597],{"__ignoreMap":82},[86,598,599,601,603,606],{"class":88,"line":89},[86,600,57],{"class":92},[86,602,96],{"class":95},[86,604,605],{"class":95}," reset-failed",[86,607,102],{"class":95},"\nПолезно, если служба в состоянии ",[28,610,611],{},"failed"," и не запускается после исправления ошибки.",[16,614,616],{"id":615},"проверка-результата","Проверка результата",[618,619,620,636,646],"ol",{},[44,621,622,625,626,629,630,632,633,35],{},[55,623,624],{},"Для проверки работы:"," выполните ",[28,627,628],{},"systemctl status имя_службы",". Убедитесь, что строка ",[28,631,316],{}," содержит ",[28,634,635],{},"active (running)",[44,637,638,641,642,645],{},[55,639,640],{},"Для проверки автозагрузки:"," перезагрузите систему (",[28,643,644],{},"sudo reboot",") и после входа проверьте статус службы.",[44,647,648,651,652,655,656,658,659,658,662,50],{},[55,649,650],{},"Для проверки логов:"," убедитесь, что ",[28,653,654],{},"journalctl -u имя_службы"," не содержит ошибок (",[28,657,611],{},", ",[28,660,661],{},"error",[28,663,664],{},"permission denied",[16,666,668],{"id":667},"возможные-проблемы","Возможные проблемы",[41,670,671,698,721,742,779],{},[44,672,673,683],{},[55,674,675,676,679,680],{},"Ошибка ",[28,677,678],{},"Failed to start ..."," или ",[28,681,682],{},"Unit not found.",[41,684,685],{},[44,686,687,690,691,694,695,35],{},[55,688,689],{},"Причина:"," Unit-файл отсутствует или имеет неверное имя. Убедитесь, что служба существует: ",[28,692,693],{},"systemctl list-unit-files | grep имя_службы",". Проверьте синтаксис unit-файла: ",[28,696,697],{},"sudo systemd-analyze verify /etc/systemd/system/имя_службы.service",[44,699,700,703],{},[55,701,702],{},"Служба запускается, но сразу же останавливается.",[41,704,705],{},[44,706,707,709,710,713,714,717,718,35],{},[55,708,689],{}," Ошибка в самом приложении или неверные параметры в секции ",[28,711,712],{},"[Service]"," (например, ",[28,715,716],{},"ExecStart"," указывает на несуществующий бинарник). Смотрите детальные логи: ",[28,719,720],{},"sudo journalctl -u имя_службы.service -n 50 --no-pager",[44,722,723,729],{},[55,724,725,728],{},[28,726,727],{},"Permission denied"," при попытке управления системной службой.",[41,730,731],{},[44,732,733,735,736,738,739,741],{},[55,734,689],{}," Выполняете команду без ",[28,737,57],{},". Для управления системными службами (из ",[28,740,227],{},") требуются права root.",[44,743,744,751],{},[55,745,746,747,750],{},"Служба не включается в автозагрузку (",[28,748,749],{},"enable"," не срабатывает).",[41,752,753],{},[44,754,755,757,758,761,762,679,765,768,769,772,773,31,776,778],{},[55,756,689],{}," Unit-файл имеет ",[28,759,760],{},"[Install]"," секцию, но не содержит ",[28,763,764],{},"WantedBy=",[28,766,767],{},"RequiredBy="," (чаще всего ",[28,770,771],{},"WantedBy=multi-user.target","). Добавьте эту строку в unit-файл и выполните ",[28,774,775],{},"daemon-reload",[28,777,749],{}," заново.",[44,780,781,784],{},[55,782,783],{},"Циклические перезапуски (restart loop).",[41,785,786],{},[44,787,788,790,791,632,793,796,797,800,801,804],{},[55,789,689],{}," В unit-файле секция ",[28,792,712],{},[28,794,795],{},"Restart=always"," (или ",[28,798,799],{},"on-failure","), а процесс немедленно завершается с ошибкой. Исправьте ошибку приложения или временно закомментируйте ",[28,802,803],{},"Restart"," для диагностики.",[806,807,808],"style",{},"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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":82,"searchDepth":810,"depth":810,"links":811},2,[812,813,814,815,816,817,818,819,820],{"id":18,"depth":810,"text":19},{"id":38,"depth":810,"text":39},{"id":64,"depth":810,"text":65},{"id":193,"depth":810,"text":194},{"id":290,"depth":810,"text":291},{"id":401,"depth":810,"text":402},{"id":535,"depth":810,"text":536},{"id":615,"depth":810,"text":616},{"id":667,"depth":810,"text":668},null,"2026-02-16 12:40:35","Пошаговая инструкция по работе с systemd. Узнайте, как управлять службами Linux через systemctl: запуск, остановка, автозагрузка, просмотр логов. Решения для Ubuntu, CentOS, Debian.","medium",false,"15-30 мин","md",[829,832,835,838],{"answer":830,"question":831},"Используйте команду `systemctl status \u003Cимя_службы>`. В выводе ищите строку `Active: active (running)` для работающих сервисов.","Как проверить, работает ли служба systemd?",{"answer":833,"question":834},"Systemd обеспечивает параллельный запуск служб, имеет единую точку управления (systemctl), встроенный журнал (journalctl) и более сложные зависимости между сервисами.","Чем systemd отличается от старых init-скриптов (SysVinit)?",{"answer":836,"question":837},"Создайте файл `/etc/systemd/system/ваш-сервис.service` с корректными секциями `[Unit]`, `[Service]` и `[Install]`, затем выполните `systemctl daemon-reload`.","Как создать свой собственный unit-файл для сервиса?",{"answer":839,"question":840},"Возможные причины: ошибка в unit-файле, конфликт зависимостей, отсутствие требуемого устройства или файла. Проверьте логи: `journalctl -u \u003Cимя_службы> -b`.","Почему служба не запускается при загрузке, хотя включена через systemctl enable?",[842,845,848,851,854,857],{"name":843,"text":844},"Проверка статуса службы","Используйте `systemctl status \u003Cservice>` для получения подробной информации о состоянии, PID и последних записях журнала.",{"name":846,"text":847},"Базовое управление (start, stop, restart)","Запустите службу командой `systemctl start \u003Cservice>`, остановите `stop`, перезапустите `restart`.",{"name":849,"text":850},"Управление автозагрузкой","Включите автозапуск при загрузке системы: `systemctl enable \u003Cservice>`. Отключите: `systemctl disable \u003Cservice>`.",{"name":852,"text":853},"Просмотр всех служб и фильтрация","`systemctl list-units --type=service --all` показывает все unit-файлы. Используйте `grep` для поиска, например: `systemctl list-units | grep nginx`.",{"name":855,"text":856},"Работа с журналом (journalctl)","Просмотрите логи конкретной службы: `journalctl -u \u003Cservice> -f` (слежение в реальном времени).",{"name":858,"text":859},"Перезагрузка демона systemd","После ручного изменения unit-файлов выполните `systemctl daemon-reload`, чтобы systemd перечитал конфигурацию.","PT20M",[862,863,864,865,866,867,868,869],"systemd управление сервисами","systemctl команды","как запустить службу в linux","systemd journal логи","включить автозагрузку службы","остановить systemd сервис","проверить статус службы","systemd service management","ru_RU",{},true,"/guides/linux/systemd-service-management","linux",[876,877,878],"/guides/linux/systemd-journal-logs","/errors/linux/systemd-failed-to-start","/guides/linux/crontab-vs-systemd-timers","Гайды Linux",{"title":5,"description":823},"guides/linux/systemd-service-management","В этом гайде вы освоите основные команды systemctl для управления службами в современных дистрибутивах Linux. Вы научитесь запускать, останавливать, включать в автозагрузку сервисы и диагностировать проблемы.",[884,874,885,886,30],"systemd","sysadmin","guide","9uE8OqlOsTa0iBKReZb5paRxhaZypg32oh1Z0Lq3y94",{"data":889,"body":890},{},{"type":891,"children":892},"root",[893],{"type":894,"tag":21,"props":895,"children":896},"element",{},[897,900,906,908,914],{"type":898,"value":899},"text","Используйте команду ",{"type":894,"tag":28,"props":901,"children":903},{"className":902},[],[904],{"type":898,"value":905},"systemctl status \u003Cимя_службы>",{"type":898,"value":907},". В выводе ищите строку ",{"type":894,"tag":28,"props":909,"children":911},{"className":910},[],[912],{"type":898,"value":913},"Active: active (running)",{"type":898,"value":915}," для работающих сервисов.",{"data":917,"body":918},{},{"type":891,"children":919},[920],{"type":894,"tag":21,"props":921,"children":922},{},[923],{"type":898,"value":833},{"data":925,"body":926},{},{"type":891,"children":927},[928],{"type":894,"tag":21,"props":929,"children":930},{},[931,933,939,941,947,948,953,954,959,961,967],{"type":898,"value":932},"Создайте файл ",{"type":894,"tag":28,"props":934,"children":936},{"className":935},[],[937],{"type":898,"value":938},"/etc/systemd/system/ваш-сервис.service",{"type":898,"value":940}," с корректными секциями ",{"type":894,"tag":28,"props":942,"children":944},{"className":943},[],[945],{"type":898,"value":946},"[Unit]",{"type":898,"value":658},{"type":894,"tag":28,"props":949,"children":951},{"className":950},[],[952],{"type":898,"value":712},{"type":898,"value":31},{"type":894,"tag":28,"props":955,"children":957},{"className":956},[],[958],{"type":898,"value":760},{"type":898,"value":960},", затем выполните ",{"type":894,"tag":28,"props":962,"children":964},{"className":963},[],[965],{"type":898,"value":966},"systemctl daemon-reload",{"type":898,"value":35},{"data":969,"body":970},{},{"type":891,"children":971},[972],{"type":894,"tag":21,"props":973,"children":974},{},[975,977,983],{"type":898,"value":976},"Возможные причины: ошибка в unit-файле, конфликт зависимостей, отсутствие требуемого устройства или файла. Проверьте логи: ",{"type":894,"tag":28,"props":978,"children":980},{"className":979},[],[981],{"type":898,"value":982},"journalctl -u \u003Cимя_службы> -b",{"type":898,"value":35},{"data":985,"body":986},{},{"type":891,"children":987},[988],{"type":894,"tag":21,"props":989,"children":990},{},[991,993,999],{"type":898,"value":992},"Используйте ",{"type":894,"tag":28,"props":994,"children":996},{"className":995},[],[997],{"type":898,"value":998},"systemctl status \u003Cservice>",{"type":898,"value":1000}," для получения подробной информации о состоянии, PID и последних записях журнала.",{"data":1002,"body":1003},{},{"type":891,"children":1004},[1005],{"type":894,"tag":21,"props":1006,"children":1007},{},[1008,1010,1016,1018,1024,1026,1032],{"type":898,"value":1009},"Запустите службу командой ",{"type":894,"tag":28,"props":1011,"children":1013},{"className":1012},[],[1014],{"type":898,"value":1015},"systemctl start \u003Cservice>",{"type":898,"value":1017},", остановите ",{"type":894,"tag":28,"props":1019,"children":1021},{"className":1020},[],[1022],{"type":898,"value":1023},"stop",{"type":898,"value":1025},", перезапустите ",{"type":894,"tag":28,"props":1027,"children":1029},{"className":1028},[],[1030],{"type":898,"value":1031},"restart",{"type":898,"value":35},{"data":1034,"body":1035},{},{"type":891,"children":1036},[1037],{"type":894,"tag":21,"props":1038,"children":1039},{},[1040,1042,1048,1050,1056],{"type":898,"value":1041},"Включите автозапуск при загрузке системы: ",{"type":894,"tag":28,"props":1043,"children":1045},{"className":1044},[],[1046],{"type":898,"value":1047},"systemctl enable \u003Cservice>",{"type":898,"value":1049},". Отключите: ",{"type":894,"tag":28,"props":1051,"children":1053},{"className":1052},[],[1054],{"type":898,"value":1055},"systemctl disable \u003Cservice>",{"type":898,"value":35},{"data":1058,"body":1059},{},{"type":891,"children":1060},[1061],{"type":894,"tag":21,"props":1062,"children":1063},{},[1064,1070,1072,1078,1080,1086],{"type":894,"tag":28,"props":1065,"children":1067},{"className":1066},[],[1068],{"type":898,"value":1069},"systemctl list-units --type=service --all",{"type":898,"value":1071}," показывает все unit-файлы. Используйте ",{"type":894,"tag":28,"props":1073,"children":1075},{"className":1074},[],[1076],{"type":898,"value":1077},"grep",{"type":898,"value":1079}," для поиска, например: ",{"type":894,"tag":28,"props":1081,"children":1083},{"className":1082},[],[1084],{"type":898,"value":1085},"systemctl list-units | grep nginx",{"type":898,"value":35},{"data":1088,"body":1089},{},{"type":891,"children":1090},[1091],{"type":894,"tag":21,"props":1092,"children":1093},{},[1094,1096,1102],{"type":898,"value":1095},"Просмотрите логи конкретной службы: ",{"type":894,"tag":28,"props":1097,"children":1099},{"className":1098},[],[1100],{"type":898,"value":1101},"journalctl -u \u003Cservice> -f",{"type":898,"value":1103}," (слежение в реальном времени).",{"data":1105,"body":1106},{},{"type":891,"children":1107},[1108],{"type":894,"tag":21,"props":1109,"children":1110},{},[1111,1113,1118],{"type":898,"value":1112},"После ручного изменения unit-файлов выполните ",{"type":894,"tag":28,"props":1114,"children":1116},{"className":1115},[],[1117],{"type":898,"value":966},{"type":898,"value":1119},", чтобы systemd перечитал конфигурацию.",[1121,2049],{"id":1122,"title":1123,"appliesTo":1124,"author":11,"body":1128,"canonical":821,"code":821,"createdAt":1996,"description":1997,"difficulty":824,"draft":825,"estimatedTime":826,"extension":827,"faq":1998,"howToSteps":2011,"howToTotalTime":860,"image":821,"keywords":2027,"locale":870,"meta":2038,"navigation":872,"path":876,"platform":874,"related":2039,"section":879,"seo":2042,"severity":821,"stem":2043,"summary":2044,"tags":2045,"twitterCreator":821,"twitterSite":821,"type":886,"updatedAt":1996,"__hash__":2048},"content_ru/guides/linux/systemd-journal-logs.md","Полное руководство по журналам systemd: команды journalctl и управление",[7,9,1125,1126,1127],"CentOS 8+","Fedora 35+","Arch Linux",{"type":13,"value":1129,"toc":1984},[1130,1132,1142,1144,1162,1170,1174,1184,1193,1198,1230,1237,1256,1260,1266,1271,1302,1307,1348,1353,1383,1388,1419,1423,1430,1441,1444,1460,1467,1484,1488,1491,1495,1512,1517,1534,1539,1556,1565,1567,1571,1585,1588,1603,1606,1646,1657,1660,1676,1679,1714,1718,1723,1767,1772,1812,1817,1831,1836,1856,1858,1889,1891,1906,1924,1944,1963,1981],[16,1131,19],{"id":18},[21,1133,1134,1135,1138,1139,1141],{},"Systemd-journald собирает логи со всех компонентов системы и служб в единое бинарное хранилище. Это избавляет от необходимости разбираться в десятках текстовых файлах в ",[28,1136,1137],{},"/var/log/",". Умение работать с ",[28,1140,34],{}," — ключевой навык для диагностики проблем, аудита безопасности и мониторинга Linux-сервера. После выполнения этого гайда вы сможете быстро находить нужные записи, настраивать ротацию и освобождать место на диске.",[16,1143,39],{"id":38},[41,1145,1146,1153,1159],{},[44,1147,53,1148,679,1150,1152],{},[55,1149,891],{},[55,1151,57],{}," для операций просмотра всех логов и очистки.",[44,1154,1155,1156,1158],{},"Установленный ",[55,1157,884],{}," (стандарт для большинства дистрибутивов с 2015 года).",[44,1160,1161],{},"Базовое знакомство с командной строкой.",[174,1163,1164],{},[21,1165,178,1166,1169],{},[55,1167,1168],{},"Совет",": Если вы работаете на удалённом сервере, убедитесь, что у вас есть стабильное соединение — некоторые команды могут выводить много данных.",[16,1171,1173],{"id":1172},"шаг-1-просмотр-всех-журналов-systemd","Шаг 1: Просмотр всех журналов systemd",[21,1175,1176,1177,1179,1180,1183],{},"Команда ",[28,1178,34],{}," без аргументов выводит весь журнал в хронологическом порядке (от старых к новым). По умолчанию используется ",[28,1181,1182],{},"less"," для прокрутки.",[77,1185,1187],{"className":79,"code":1186,"language":81,"meta":82,"style":82},"journalctl\n",[28,1188,1189],{"__ignoreMap":82},[86,1190,1191],{"class":88,"line":89},[86,1192,1186],{"class":92},[21,1194,1195],{},[55,1196,1197],{},"Ключевые клавиши при просмотре:",[41,1199,1200,1206,1212,1218,1224],{},[44,1201,1202,1205],{},[28,1203,1204],{},"Space"," — следующая страница.",[44,1207,1208,1211],{},[28,1209,1210],{},"b"," — предыдущая страница.",[44,1213,1214,1217],{},[28,1215,1216],{},"/текст"," — поиск вперёд.",[44,1219,1220,1223],{},[28,1221,1222],{},"?текст"," — поиск назад.",[44,1225,1226,1229],{},[28,1227,1228],{},"q"," — выход.",[21,1231,1232,1233,1236],{},"Чтобы сразу увидеть последние записи, добавьте ",[28,1234,1235],{},"-n"," (количество строк):",[77,1238,1240],{"className":79,"code":1239,"language":81,"meta":82,"style":82},"journalctl -n 100  # последние 100 строк\n",[28,1241,1242],{"__ignoreMap":82},[86,1243,1244,1246,1249,1252],{"class":88,"line":89},[86,1245,34],{"class":92},[86,1247,1248],{"class":341}," -n",[86,1250,1251],{"class":341}," 100",[86,1253,1255],{"class":1254},"sJ8bj","  # последние 100 строк\n",[16,1257,1259],{"id":1258},"шаг-2-фильтрация-логов","Шаг 2: Фильтрация логов",[21,1261,1262,1263,1265],{},"Сила ",[28,1264,34],{}," — в гибкой фильтрации. Вот основные варианты:",[21,1267,1268],{},[55,1269,1270],{},"По службе (юниту systemd):",[77,1272,1274],{"className":79,"code":1273,"language":81,"meta":82,"style":82},"journalctl -u sshd.service  # логи демона SSH\njournalctl -u nginx.service --since today\n",[28,1275,1276,1288],{"__ignoreMap":82},[86,1277,1278,1280,1282,1285],{"class":88,"line":89},[86,1279,34],{"class":92},[86,1281,429],{"class":341},[86,1283,1284],{"class":95}," sshd.service",[86,1286,1287],{"class":1254},"  # логи демона SSH\n",[86,1289,1290,1292,1294,1297,1299],{"class":88,"line":810},[86,1291,34],{"class":92},[86,1293,429],{"class":341},[86,1295,1296],{"class":95}," nginx.service",[86,1298,497],{"class":341},[86,1300,1301],{"class":95}," today\n",[21,1303,1304],{},[55,1305,1306],{},"По времени:",[77,1308,1310],{"className":79,"code":1309,"language":81,"meta":82,"style":82},"journalctl --since \"2026-04-08 09:00:00\" --until \"10:30:00\"\njournalctl --since 2h  # за последние 2 часа\njournalctl --since yesterday\n",[28,1311,1312,1326,1338],{"__ignoreMap":82},[86,1313,1314,1316,1318,1321,1323],{"class":88,"line":89},[86,1315,34],{"class":92},[86,1317,497],{"class":341},[86,1319,1320],{"class":95}," \"2026-04-08 09:00:00\"",[86,1322,503],{"class":341},[86,1324,1325],{"class":95}," \"10:30:00\"\n",[86,1327,1328,1330,1332,1335],{"class":88,"line":810},[86,1329,34],{"class":92},[86,1331,497],{"class":341},[86,1333,1334],{"class":95}," 2h",[86,1336,1337],{"class":1254},"  # за последние 2 часа\n",[86,1339,1341,1343,1345],{"class":88,"line":1340},3,[86,1342,34],{"class":92},[86,1344,497],{"class":341},[86,1346,1347],{"class":95}," yesterday\n",[21,1349,1350],{},[55,1351,1352],{},"По уровню важности (приоритету):",[77,1354,1356],{"className":79,"code":1355,"language":81,"meta":82,"style":82},"journalctl -p err   # только ошибки (err, crit, alert, emerg)\njournalctl -p warning..info  # от warning до info включительно\n",[28,1357,1358,1371],{"__ignoreMap":82},[86,1359,1360,1362,1365,1368],{"class":88,"line":89},[86,1361,34],{"class":92},[86,1363,1364],{"class":341}," -p",[86,1366,1367],{"class":95}," err",[86,1369,1370],{"class":1254},"   # только ошибки (err, crit, alert, emerg)\n",[86,1372,1373,1375,1377,1380],{"class":88,"line":810},[86,1374,34],{"class":92},[86,1376,1364],{"class":341},[86,1378,1379],{"class":95}," warning..info",[86,1381,1382],{"class":1254},"  # от warning до info включительно\n",[21,1384,1385],{},[55,1386,1387],{},"По ключевому слову или PID:",[77,1389,1391],{"className":79,"code":1390,"language":81,"meta":82,"style":82},"journalctl -g \"connection refused\"  # поиск по тексту\njournalctl _PID=1234  # логи процесса с PID 1234\n",[28,1392,1393,1406],{"__ignoreMap":82},[86,1394,1395,1397,1400,1403],{"class":88,"line":89},[86,1396,34],{"class":92},[86,1398,1399],{"class":341}," -g",[86,1401,1402],{"class":95}," \"connection refused\"",[86,1404,1405],{"class":1254},"  # поиск по тексту\n",[86,1407,1408,1410,1413,1416],{"class":88,"line":810},[86,1409,34],{"class":92},[86,1411,1412],{"class":95}," _PID=",[86,1414,1415],{"class":341},"1234",[86,1417,1418],{"class":1254},"  # логи процесса с PID 1234\n",[16,1420,1422],{"id":1421},"шаг-3-мониторинг-в-реальном-времени","Шаг 3: Мониторинг в реальном времени",[21,1424,1425,1426,1429],{},"Для отслеживания событий «на лету» используйте опцию ",[28,1427,1428],{},"-f"," (follow):",[77,1431,1433],{"className":79,"code":1432,"language":81,"meta":82,"style":82},"journalctl -f\n",[28,1434,1435],{"__ignoreMap":82},[86,1436,1437,1439],{"class":88,"line":89},[86,1438,34],{"class":92},[86,1440,459],{"class":341},[21,1442,1443],{},"Чтобы видеть только логи конкретной службы:",[77,1445,1447],{"className":79,"code":1446,"language":81,"meta":82,"style":82},"journalctl -u docker.service -f\n",[28,1448,1449],{"__ignoreMap":82},[86,1450,1451,1453,1455,1458],{"class":88,"line":89},[86,1452,34],{"class":92},[86,1454,429],{"class":341},[86,1456,1457],{"class":95}," docker.service",[86,1459,459],{"class":341},[21,1461,1462,1463,1466],{},"Для вывода новых записей с кратким форматом (без временных меток и т.д.) можно комбинировать с ",[28,1464,1465],{},"-o",":",[77,1468,1470],{"className":79,"code":1469,"language":81,"meta":82,"style":82},"journalctl -f -o short-monotonic\n",[28,1471,1472],{"__ignoreMap":82},[86,1473,1474,1476,1479,1481],{"class":88,"line":89},[86,1475,34],{"class":92},[86,1477,1478],{"class":341}," -f",[86,1480,529],{"class":341},[86,1482,1483],{"class":95}," short-monotonic\n",[16,1485,1487],{"id":1486},"шаг-4-очистка-старых-записей","Шаг 4: Очистка старых записей",[21,1489,1490],{},"Журнал systemd растёт со временем. Для очистки есть три основных метода:",[21,1492,1493],{},[55,1494,1306],{},[77,1496,1498],{"className":79,"code":1497,"language":81,"meta":82,"style":82},"sudo journalctl --vacuum-time=7d  # удалить всё старше 7 дней\n",[28,1499,1500],{"__ignoreMap":82},[86,1501,1502,1504,1506,1509],{"class":88,"line":89},[86,1503,57],{"class":92},[86,1505,426],{"class":95},[86,1507,1508],{"class":341}," --vacuum-time=7d",[86,1510,1511],{"class":1254},"  # удалить всё старше 7 дней\n",[21,1513,1514],{},[55,1515,1516],{},"По размеру:",[77,1518,1520],{"className":79,"code":1519,"language":81,"meta":82,"style":82},"sudo journalctl --vacuum-size=500M  # оставить не более 500 МБ\n",[28,1521,1522],{"__ignoreMap":82},[86,1523,1524,1526,1528,1531],{"class":88,"line":89},[86,1525,57],{"class":92},[86,1527,426],{"class":95},[86,1529,1530],{"class":341}," --vacuum-size=500M",[86,1532,1533],{"class":1254},"  # оставить не более 500 МБ\n",[21,1535,1536],{},[55,1537,1538],{},"По количеству файлов:",[77,1540,1542],{"className":79,"code":1541,"language":81,"meta":82,"style":82},"sudo journalctl --vacuum-files=10  # сохранить только 10 самых свежих архивных файлов\n",[28,1543,1544],{"__ignoreMap":82},[86,1545,1546,1548,1550,1553],{"class":88,"line":89},[86,1547,57],{"class":92},[86,1549,426],{"class":95},[86,1551,1552],{"class":341}," --vacuum-files=10",[86,1554,1555],{"class":1254},"  # сохранить только 10 самых свежих архивных файлов\n",[174,1557,1558],{},[21,1559,1560,1561,1564],{},"⚠️ ",[55,1562,1563],{},"Важно",": Операции вакуума не удаляют записи, которые всё ещё используются активными процессами. Убедитесь, что нет сервисов, пишущих в журнал в данный момент.",[286,1566],{},[16,1568,1570],{"id":1569},"шаг-5-настройка-политики-хранения","Шаг 5: Настройка политики хранения",[21,1572,1573,1574,1577,1578,1581,1582,35],{},"По умолчанию systemd-journald хранит логи в ",[28,1575,1576],{},"/run/log/journal"," (в оперативной памяти) и/или ",[28,1579,1580],{},"/var/log/journal"," (на диске). Конфигурация находится в ",[28,1583,1584],{},"/etc/systemd/journald.conf",[21,1586,1587],{},"Откройте файл:",[77,1589,1591],{"className":79,"code":1590,"language":81,"meta":82,"style":82},"sudo nano /etc/systemd/journald.conf\n",[28,1592,1593],{"__ignoreMap":82},[86,1594,1595,1597,1600],{"class":88,"line":89},[86,1596,57],{"class":92},[86,1598,1599],{"class":95}," nano",[86,1601,1602],{"class":95}," /etc/systemd/journald.conf\n",[21,1604,1605],{},"Раскомментируйте и установите параметры:",[77,1607,1611],{"className":1608,"code":1609,"language":1610,"meta":82,"style":82},"language-ini shiki shiki-themes github-light github-dark","[Journal]\nStorage=persistent  # сохранять на диск (по умолчанию auto)\nSystemMaxUse=1G     # максимальный общий размер журналов на диске\nSystemKeepFree=500M # оставлять минимум свободного места на разделе\nSystemMaxFileSize=50M # максимальный размер одного файла журнала\nMaxRetentionSec=1month  # хранить не дольше 1 месяца\n","ini",[28,1612,1613,1618,1623,1628,1634,1640],{"__ignoreMap":82},[86,1614,1615],{"class":88,"line":89},[86,1616,1617],{},"[Journal]\n",[86,1619,1620],{"class":88,"line":810},[86,1621,1622],{},"Storage=persistent  # сохранять на диск (по умолчанию auto)\n",[86,1624,1625],{"class":88,"line":1340},[86,1626,1627],{},"SystemMaxUse=1G     # максимальный общий размер журналов на диске\n",[86,1629,1631],{"class":88,"line":1630},4,[86,1632,1633],{},"SystemKeepFree=500M # оставлять минимум свободного места на разделе\n",[86,1635,1637],{"class":88,"line":1636},5,[86,1638,1639],{},"SystemMaxFileSize=50M # максимальный размер одного файла журнала\n",[86,1641,1643],{"class":88,"line":1642},6,[86,1644,1645],{},"MaxRetentionSec=1month  # хранить не дольше 1 месяца\n",[174,1647,1648],{},[21,1649,178,1650,1652,1653,1656],{},[55,1651,1168],{},": Для серверов с малым диском уменьшите ",[28,1654,1655],{},"SystemMaxUse"," (например, до 200M). Для рабочих станций можно увеличить для более длительного аудита.",[21,1658,1659],{},"После изменений перезапустите демон:",[77,1661,1663],{"className":79,"code":1662,"language":81,"meta":82,"style":82},"sudo systemctl restart systemd-journald\n",[28,1664,1665],{"__ignoreMap":82},[86,1666,1667,1669,1671,1673],{"class":88,"line":89},[86,1668,57],{"class":92},[86,1670,96],{"class":95},[86,1672,149],{"class":95},[86,1674,1675],{"class":95}," systemd-journald\n",[21,1677,1678],{},"Проверьте текущую конфигурацию:",[77,1680,1682],{"className":79,"code":1681,"language":81,"meta":82,"style":82},"journalctl --disk-usage  # текущий размер журнала на диске\nsudo cat /etc/systemd/journald.conf | grep -E \"SystemMaxUse|SystemKeepFree\"\n",[28,1683,1684,1694],{"__ignoreMap":82},[86,1685,1686,1688,1691],{"class":88,"line":89},[86,1687,34],{"class":92},[86,1689,1690],{"class":341}," --disk-usage",[86,1692,1693],{"class":1254},"  # текущий размер журнала на диске\n",[86,1695,1696,1698,1701,1704,1706,1708,1711],{"class":88,"line":810},[86,1697,57],{"class":92},[86,1699,1700],{"class":95}," cat",[86,1702,1703],{"class":95}," /etc/systemd/journald.conf",[86,1705,389],{"class":388},[86,1707,392],{"class":92},[86,1709,1710],{"class":341}," -E",[86,1712,1713],{"class":95}," \"SystemMaxUse|SystemKeepFree\"\n",[16,1715,1717],{"id":1716},"шаг-6-дополнительные-возможности","Шаг 6: Дополнительные возможности",[21,1719,1720],{},[55,1721,1722],{},"Просмотр загрузок системы (boots):",[77,1724,1726],{"className":79,"code":1725,"language":81,"meta":82,"style":82},"journalctl --list-boots  # список загрузок с индексами\njournalctl -b -1  # логи предыдущей загрузки\njournalctl -b -2 -p err  # ошибки загрузки перед последней\n",[28,1727,1728,1738,1751],{"__ignoreMap":82},[86,1729,1730,1732,1735],{"class":88,"line":89},[86,1731,34],{"class":92},[86,1733,1734],{"class":341}," --list-boots",[86,1736,1737],{"class":1254},"  # список загрузок с индексами\n",[86,1739,1740,1742,1745,1748],{"class":88,"line":810},[86,1741,34],{"class":92},[86,1743,1744],{"class":341}," -b",[86,1746,1747],{"class":341}," -1",[86,1749,1750],{"class":1254},"  # логи предыдущей загрузки\n",[86,1752,1753,1755,1757,1760,1762,1764],{"class":88,"line":1340},[86,1754,34],{"class":92},[86,1756,1744],{"class":341},[86,1758,1759],{"class":341}," -2",[86,1761,1364],{"class":341},[86,1763,1367],{"class":95},[86,1765,1766],{"class":1254},"  # ошибки загрузки перед последней\n",[21,1768,1769],{},[55,1770,1771],{},"Экспорт журнала в текстовый файл:",[77,1773,1775],{"className":79,"code":1774,"language":81,"meta":82,"style":82},"journalctl --since today > today.log\njournalctl -u nginx --json-pretty > nginx.json  # в формате JSON\n",[28,1776,1777,1792],{"__ignoreMap":82},[86,1778,1779,1781,1783,1786,1789],{"class":88,"line":89},[86,1780,34],{"class":92},[86,1782,497],{"class":341},[86,1784,1785],{"class":95}," today",[86,1787,1788],{"class":388}," >",[86,1790,1791],{"class":95}," today.log\n",[86,1793,1794,1796,1798,1801,1804,1806,1809],{"class":88,"line":810},[86,1795,34],{"class":92},[86,1797,429],{"class":341},[86,1799,1800],{"class":95}," nginx",[86,1802,1803],{"class":341}," --json-pretty",[86,1805,1788],{"class":388},[86,1807,1808],{"class":95}," nginx.json",[86,1810,1811],{"class":1254},"  # в формате JSON\n",[21,1813,1814],{},[55,1815,1816],{},"Просмотр журнала с временными метками в UTC:",[77,1818,1820],{"className":79,"code":1819,"language":81,"meta":82,"style":82},"journalctl -o utc\n",[28,1821,1822],{"__ignoreMap":82},[86,1823,1824,1826,1828],{"class":88,"line":89},[86,1825,34],{"class":92},[86,1827,529],{"class":341},[86,1829,1830],{"class":95}," utc\n",[21,1832,1833],{},[55,1834,1835],{},"Ограничение вывода по количеству строк:",[77,1837,1839],{"className":79,"code":1838,"language":81,"meta":82,"style":82},"journalctl -n 50 --reverse  # 50 самых свежих записей (от новых к старым)\n",[28,1840,1841],{"__ignoreMap":82},[86,1842,1843,1845,1847,1850,1853],{"class":88,"line":89},[86,1844,34],{"class":92},[86,1846,1248],{"class":341},[86,1848,1849],{"class":341}," 50",[86,1851,1852],{"class":341}," --reverse",[86,1854,1855],{"class":1254},"  # 50 самых свежих записей (от новых к старым)\n",[16,1857,616],{"id":615},[618,1859,1860,1867,1874,1881],{},[44,1861,1862,1863,1866],{},"Выполните ",[28,1864,1865],{},"journalctl -n 10"," — должны отобразиться последние 10 записей.",[44,1868,1869,1870,1873],{},"Проверьте фильтрацию: ",[28,1871,1872],{},"journalctl -u sshd --since \"1 hour ago\""," — логи SSH за час.",[44,1875,1876,1877,1880],{},"Убедитесь, что очистка сработала: ",[28,1878,1879],{},"journalctl --disk-usage"," покажет уменьшенный размер.",[44,1882,1883,1884,31,1886,50],{},"Если меняли конфиг, перезагрузите службу и проверьте, что новые параметры активны (через ",[28,1885,1879],{},[28,1887,1888],{},"cat /proc/sys/kernel/printk",[16,1890,668],{"id":667},[21,1892,1893,1896,1899,1900,1902,1903,35],{},[55,1894,1895],{},"«Permission denied» при чтении журнала",[1897,1898],"br",{},"\nПричина: недостаточно прав. Решение: добавьте ",[28,1901,57],{}," или войдите как root. Для чтения логов конкретного пользователя используйте ",[28,1904,1905],{},"journalctl --user",[21,1907,1908,1911,1913,1914,1917,1918,31,1920,1923],{},[55,1909,1910],{},"Журнал не ротируется, размер растёт",[1897,1912],{},"\nПричина: параметры в ",[28,1915,1916],{},"journald.conf"," не заданы или конфликтуют. Решение: проверьте конфиг, убедитесь, что ",[28,1919,1655],{},[28,1921,1922],{},"SystemKeepFree"," не противоречат друг другу. Перезапустите демон.",[21,1925,1926,1929,1931,1932,1935,1936,1939,1940,1943],{},[55,1927,1928],{},"Недостаточно места на диске для вакуума",[1897,1930],{},"\nПричина: ",[28,1933,1934],{},"--vacuum-size"," не может освободить место, если текущий размер уже превышает лимит. Решение: сначала удалите старые файлы вручную из ",[28,1937,1938],{},"/var/log/journal/"," или используйте ",[28,1941,1942],{},"--vacuum-time"," с большим значением.",[21,1945,1946,1949,1951,1952,1955,1956,31,1959,1962],{},[55,1947,1948],{},"Логи службы не появляются в journalctl",[1897,1950],{},"\nПричина: служба пишет напрямую в файл (например, через ",[28,1953,1954],{},">> /var/log/app.log","). Решение: настройте службу на вывод в stdout/stderr (стандартный поток systemd). Проверьте конфиг юнита: ",[28,1957,1958],{},"StandardOutput=journal",[28,1960,1961],{},"StandardError=journal"," (по умолчанию).",[21,1964,1965,1968,1970,1971,1973,1974,1977,1978,35],{},[55,1966,1967],{},"После настройки Storage=persistent журнал не пишется на диск",[1897,1969],{},"\nПричина: отсутствует каталог ",[28,1972,1938],{}," или неправильные права. Решение: создайте каталог: ",[28,1975,1976],{},"sudo mkdir -p /var/log/journal && sudo systemd-tmpfiles --create --prefix /var/log/journal",". Перезапустите ",[28,1979,1980],{},"systemd-journald",[806,1982,1983],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}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 .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":82,"searchDepth":810,"depth":810,"links":1985},[1986,1987,1988,1989,1990,1991,1992,1993,1994,1995],{"id":18,"depth":810,"text":19},{"id":38,"depth":810,"text":39},{"id":1172,"depth":810,"text":1173},{"id":1258,"depth":810,"text":1259},{"id":1421,"depth":810,"text":1422},{"id":1486,"depth":810,"text":1487},{"id":1569,"depth":810,"text":1570},{"id":1716,"depth":810,"text":1717},{"id":615,"depth":810,"text":616},{"id":667,"depth":810,"text":668},"2026-04-08 08:53:41","Узнайте, как эффективно просматривать, фильтровать и управлять журналами systemd с помощью journalctl. Пошаговая инструкция с примерами для администрирования Linux.",[1999,2002,2005,2008],{"question":2000,"answer":2001},"Как посмотреть логи systemd за последний час?","Используйте команду `journalctl --since \"1 hour ago\"`. Можно также указать конкретное время, например `--since \"2026-04-08 10:00:00\"`.",{"question":2003,"answer":2004},"Как безопасно очистить журналы systemd?","Примените `journalctl --vacuum-time=2d` для удаления записей старше 2 дней или `journalctl --vacuum-size=100M` для ограничения размера. Операция требует прав root.",{"question":2006,"answer":2007},"Почему journalctl не показывает логи моей службы?","Убедитесь, что служба пишет в stdout/stderr, а не в отдельный файл. Фильтруйте по имени юнита: `journalctl -u имя_службы.service`.",{"question":2009,"answer":2010},"Как изменить место хранения журналов systemd?","Отредактируйте `/etc/systemd/journald.conf`, изменив параметр `Storage=`. После перезапуска службы `systemctl restart systemd-journald` изменения вступят в силу.",[2012,2015,2018,2021,2024],{"name":2013,"text":2014},"Просмотр всех журналов systemd","Выполните `journalctl` для вывода всего журнала. Используйте `less` для навигации: `journalctl | less`. Выход — `q`.",{"name":2016,"text":2017},"Фильтрация по службе, времени и приоритету","Фильтруйте логи: `journalctl -u nginx.service --since today --priority err` для ошибок nginx за сегодня. Приоритеты: emerg, alert, crit, err, warning, notice, info, debug.",{"name":2019,"text":2020},"Мониторинг в реальном времени","Запустите `journalctl -f` для отслеживания новых записей. Нажмите Ctrl+C для остановки. Добавьте фильтры, например `journalctl -u sshd -f`.",{"name":2022,"text":2023},"Очистка старых записей","Удалите старые логи: `journalctl --vacuum-time=7d` (старше 7 дней) или `journalctl --vacuum-size=500M` (оставить не более 500 МБ). Требуются права sudo.",{"name":2025,"text":2026},"Настройка политики хранения","Откройте `/etc/systemd/journald.conf`, раскомментируйте и задайте `SystemMaxUse=1G` (макс. размер) и `SystemKeepFree=500M` (свободное место на диске). Перезапустите демон: `sudo systemctl restart systemd-journald`.",[2028,2029,2030,2031,2032,2033,2034,2035,2036,2037],"systemd journal","journalctl команды","просмотр логов systemd","управление журналами systemd","очистка журналов systemd","фильтрация логов journalctl","настройка systemd-journald","journalctl примеры","systemd-journald конфигурация","журнал systemd",{},[873,2040,2041],"/guides/linux/log-rotation","/guides/linux/rsyslog-configuration",{"title":1123,"description":1997},"guides/linux/systemd-journal-logs","В этом гайде вы освоите работу с централизованным журналом systemd: от базовых команд journalctl до настройки ротации и очистки логов.",[884,34,2046,885,2047],"linux logs","journald","Xtn3KnF9iSaf_C22sGQ9ajFj0egAvEbS2P5uL6G4J8g",{"id":2050,"title":2051,"appliesTo":2052,"author":11,"body":2055,"canonical":821,"code":2910,"createdAt":2911,"description":2912,"difficulty":824,"draft":825,"estimatedTime":2913,"extension":827,"faq":2914,"howToSteps":2927,"howToTotalTime":860,"image":821,"keywords":2946,"locale":870,"meta":2955,"navigation":872,"path":877,"platform":874,"related":2956,"section":2960,"seo":2961,"severity":2962,"stem":2963,"summary":2964,"tags":2965,"twitterCreator":821,"twitterSite":821,"type":661,"updatedAt":2911,"__hash__":2970},"content_ru/errors/linux/systemd-failed-to-start.md","systemd-failed-to-start: причины и методы исправления ошибки запуска",[2053,7,2054,1125,1126],"systemd 245+","Debian 11+",{"type":13,"value":2056,"toc":2894},[2057,2064,2074,2081,2094,2098,2101,2175,2179,2186,2189,2263,2277,2281,2284,2404,2408,2512,2516,2519,2608,2612,2676,2678,2682,2685,2810,2814,2817,2891],[16,2058,2060,2061],{"id":2059},"что-означает-ошибка-systemd-failed-to-start","Что означает ошибка ",[28,2062,2063],{},"systemd-failed-to-start",[21,2065,675,2066,2069,2070,2073],{},[55,2067,2068],{},"Failed to start"," — это общий статус, который systemd присваивает службе (юниту), когда процесс её запуска завершился с ненулевым кодом возврата, превысил заданный таймаут или столкнулся с критической проблемой при инициализации. В выводе команды ",[28,2071,2072],{},"systemctl status"," она выглядит как:",[77,2075,2079],{"className":2076,"code":2078,"language":898},[2077],"language-text","● some-service.service - Some Service Description\n   Loaded: loaded (/etc/systemd/system/some-service.service; enabled; vendor preset: enabled)\n   Active: **failed** (Result: exit-code) since Thu 2026-02-15 10:30:00 MSK; 1min 30s ago\n  Process: 1234 ExecStart=/usr/bin/some-service (code=exited, status=1/FAILURE)\n",[28,2080,2078],{"__ignoreMap":82},[21,2082,2083,2084,31,2087,796,2090,2093],{},"Ключевые флаги: ",[28,2085,2086],{},"Active: failed",[28,2088,2089],{},"Result: exit-code",[28,2091,2092],{},"timeout","). Эта ошибка блокирует работу сервиса и может помешать загрузке системы, если юнит критичен.",[16,2095,2097],{"id":2096},"причины-возникновения","Причины возникновения",[21,2099,2100],{},"Причины носят конкретный технический характер:",[618,2102,2103,2124,2137,2143,2156,2165],{},[44,2104,2105,186,2108,2111,2112,2114,2115,658,2117,2120,2121,2123],{},[55,2106,2107],{},"Некорректный конфигурационный файл юнита",[28,2109,2110],{},".service","). Ошибки в секциях ",[28,2113,712],{}," (неверный путь в ",[28,2116,716],{},[28,2118,2119],{},"ExecStartPre","), ",[28,2122,760],{}," или синтаксис.",[44,2125,2126,2129,2130,2133,2134,50],{},[55,2127,2128],{},"Недостаток прав доступа",". Служба пытается прочитать/записать в каталог, к которому у неё нет прав (например, ",[28,2131,2132],{},"/var/log/app/","), или запускается от неправильного пользователя (",[28,2135,2136],{},"User=",[44,2138,2139,2142],{},[55,2140,2141],{},"Конфликт ресурсов",". Порт уже занят другим процессом, недостаточно памяти (OOM Killer), не хватает дескрипторов файлов.",[44,2144,2145,2148,2149,679,2152,2155],{},[55,2146,2147],{},"Зависимости не выполнены",". Указанные в ",[28,2150,2151],{},"Requires=",[28,2153,2154],{},"After="," службы не запустились или завершились с ошибкой.",[44,2157,2158,2161,2162,2164],{},[55,2159,2160],{},"Повреждение бинарного файла или зависимостей приложения",". Файл, указанный в ",[28,2163,716],{},", отсутствует, неисправен или не может загрузить нужные библиотеки.",[44,2166,2167,2170,2171,2174],{},[55,2168,2169],{},"Превышение таймаута",". Приложение долго не отвечает на запросы инициализации, и systemd убивает его по истечении ",[28,2172,2173],{},"TimeoutStartSec="," (по умолчанию 90 сек).",[16,2176,2178],{"id":2177},"способы-решения","Способы решения",[2180,2181,2183,2184],"h3",{"id":2182},"способ-1-анализ-логов-службы-через-journalctl","Способ 1: Анализ логов службы через ",[28,2185,34],{},[21,2187,2188],{},"Это первый и самый важный шаг. Логи systemd содержат детальный вывод программы.",[618,2190,2191,2197,2222,2239],{},[44,2192,2193,2194,50],{},"Узнайте точное имя службы (например, ",[28,2195,2196],{},"nginx.service",[44,2198,2199,2200,2203,2204],{},"Выполните команду для просмотра логов ",[55,2201,2202],{},"за текущую загрузку",":\n",[77,2205,2207],{"className":79,"code":2206,"language":81,"meta":82,"style":82},"journalctl -u nginx.service -b --no-pager\n",[28,2208,2209],{"__ignoreMap":82},[86,2210,2211,2213,2215,2217,2219],{"class":88,"line":89},[86,2212,34],{"class":92},[86,2214,429],{"class":341},[86,2216,1296],{"class":95},[86,2218,1744],{"class":341},[86,2220,2221],{"class":341}," --no-pager\n",[44,2223,2224,2225,658,2228,658,2231,658,2234,658,2236,35],{},"Внимательно изучите последние 20-30 строк. Ищите слова ",[55,2226,2227],{},"Failed",[55,2229,2230],{},"Error",[55,2232,2233],{},"(code=exited, status=...)",[55,2235,727],{},[55,2237,2238],{},"No such file or directory",[44,2240,2241,2242],{},"Если лог обширный, фильтруйте по уровню ошибки:\n",[77,2243,2245],{"className":79,"code":2244,"language":81,"meta":82,"style":82},"journalctl -u nginx.service -b -p err --no-pager\n",[28,2246,2247],{"__ignoreMap":82},[86,2248,2249,2251,2253,2255,2257,2259,2261],{"class":88,"line":89},[86,2250,34],{"class":92},[86,2252,429],{"class":341},[86,2254,1296],{"class":95},[86,2256,1744],{"class":341},[86,2258,1364],{"class":341},[86,2260,1367],{"class":95},[86,2262,2221],{"class":341},[174,2264,2265],{},[21,2266,178,2267,2269,2270,2273,2274,2276],{},[55,2268,1168],{},": Добавьте флаг ",[28,2271,2272],{},"-e"," для открытия лога сразу в конце, или ",[28,2275,1428],{}," для отслеживания в реальном времени при перезапуске службы.",[2180,2278,2280],{"id":2279},"способ-2-проверка-и-исправление-конфигурационного-файла","Способ 2: Проверка и исправление конфигурационного файла",[21,2282,2283],{},"Ошибки в юнит-файле — частая причина.",[618,2285,2286,2314,2336,2389],{},[44,2287,2288,2289],{},"Найдите файл службы:\n",[77,2290,2292],{"className":79,"code":2291,"language":81,"meta":82,"style":82},"systemctl status nginx.service | grep Loaded\n# Вывод: Loaded: loaded (/etc/systemd/system/nginx.service; enabled; ...)\n",[28,2293,2294,2309],{"__ignoreMap":82},[86,2295,2296,2298,2300,2302,2304,2306],{"class":88,"line":89},[86,2297,30],{"class":92},[86,2299,310],{"class":95},[86,2301,1296],{"class":95},[86,2303,389],{"class":388},[86,2305,392],{"class":92},[86,2307,2308],{"class":95}," Loaded\n",[86,2310,2311],{"class":88,"line":810},[86,2312,2313],{"class":1254},"# Вывод: Loaded: loaded (/etc/systemd/system/nginx.service; enabled; ...)\n",[44,2315,2316,2317,2335],{},"Проверьте синтаксис:\n",[77,2318,2320],{"className":79,"code":2319,"language":81,"meta":82,"style":82},"sudo systemd-analyze verify /etc/systemd/system/nginx.service\n",[28,2321,2322],{"__ignoreMap":82},[86,2323,2324,2326,2329,2332],{"class":88,"line":89},[86,2325,57],{"class":92},[86,2327,2328],{"class":95}," systemd-analyze",[86,2330,2331],{"class":95}," verify",[86,2333,2334],{"class":95}," /etc/systemd/system/nginx.service\n","\nКоманда покажет строку с ошибкой, если она есть (например, \"Invalid command 'Execstar', not part of a unit configuration\").",[44,2337,2338,2339,2342,2343],{},"Откройте файл в редакторе (",[28,2340,2341],{},"sudo nano /etc/systemd/system/nginx.service",") и проверьте:\n",[41,2344,2345,2360,2370,2382],{},[44,2346,2347,2348,658,2350,2352,2353,679,2356,2359],{},"Пути в ",[28,2349,716],{},[28,2351,2119],{},": существуют ли они? (",[28,2354,2355],{},"which some-binary",[28,2357,2358],{},"ls -la /path/to/file",")",[44,2361,2362,2363,2366,2367,50],{},"Права на исполняемый файл (",[28,2364,2365],{},"ls -l /usr/bin/some-binary"," — должен быть ",[28,2368,2369],{},"-rwxr-xr-x",[44,2371,2372,2373,2375,2376,31,2378,2381],{},"Секцию ",[28,2374,712],{},": правильно ли указаны ",[28,2377,2136],{},[28,2379,2380],{},"Group=","? Существует ли такой пользователь/группа?",[44,2383,2384,2385,2388],{},"Директиву ",[28,2386,2387],{},"WorkingDirectory=",": существует ли каталог?",[44,2390,2391,2392],{},"После исправлений выполните:\n",[77,2393,2394],{"className":79,"code":546,"language":81,"meta":82,"style":82},[28,2395,2396],{"__ignoreMap":82},[86,2397,2398,2400,2402],{"class":88,"line":89},[86,2399,57],{"class":92},[86,2401,96],{"class":95},[86,2403,557],{"class":95},[2180,2405,2407],{"id":2406},"способ-3-проверка-зависимостей-и-конфликтов-портовресурсов","Способ 3: Проверка зависимостей и конфликтов портов/ресурсов",[618,2409,2410,2442,2467],{},[44,2411,2412,2415,2416,2441],{},[55,2413,2414],{},"Проверьте, не занят ли порт"," (если служба сетевая):\n",[77,2417,2419],{"className":79,"code":2418,"language":81,"meta":82,"style":82},"sudo ss -tulpn | grep :80  # Замените 80 на порт вашей службы\n",[28,2420,2421],{"__ignoreMap":82},[86,2422,2423,2425,2428,2431,2433,2435,2438],{"class":88,"line":89},[86,2424,57],{"class":92},[86,2426,2427],{"class":95}," ss",[86,2429,2430],{"class":341}," -tulpn",[86,2432,389],{"class":388},[86,2434,392],{"class":92},[86,2436,2437],{"class":95}," :80",[86,2439,2440],{"class":1254},"  # Замените 80 на порт вашей службы\n","\nЕсли порт занят другим процессом, найдите и остановите его или измените порт в конфиге службы.",[44,2443,2444,2203,2447,2464,2465,35],{},[55,2445,2446],{},"Проверьте, все ли требуемые службы работают",[77,2448,2450],{"className":79,"code":2449,"language":81,"meta":82,"style":82},"systemctl list-dependencies nginx.service --reverse\n",[28,2451,2452],{"__ignoreMap":82},[86,2453,2454,2456,2459,2461],{"class":88,"line":89},[86,2455,30],{"class":92},[86,2457,2458],{"class":95}," list-dependencies",[86,2460,1296],{"class":95},[86,2462,2463],{"class":341}," --reverse\n","\nЭто покажет, какие службы зависят от nginx. Убедитесь, что они в состоянии ",[28,2466,635],{},[44,2468,2469,2203,2472,2511],{},[55,2470,2471],{},"Проверьте наличие свободных ресурсов",[77,2473,2475],{"className":79,"code":2474,"language":81,"meta":82,"style":82},"free -h        # Память\ndf -h /var     # Дисковое пространство (особенно для логов)\nulimit -n      # Лимит дескрипторов файлов (может быть мал)\n",[28,2476,2477,2488,2501],{"__ignoreMap":82},[86,2478,2479,2482,2485],{"class":88,"line":89},[86,2480,2481],{"class":92},"free",[86,2483,2484],{"class":341}," -h",[86,2486,2487],{"class":1254},"        # Память\n",[86,2489,2490,2493,2495,2498],{"class":88,"line":810},[86,2491,2492],{"class":92},"df",[86,2494,2484],{"class":341},[86,2496,2497],{"class":95}," /var",[86,2499,2500],{"class":1254},"     # Дисковое пространство (особенно для логов)\n",[86,2502,2503,2506,2508],{"class":88,"line":1340},[86,2504,2505],{"class":341},"ulimit",[86,2507,1248],{"class":341},[86,2509,2510],{"class":1254},"      # Лимит дескрипторов файлов (может быть мал)\n","\nНедостаток любого ресурса может привести к падению службы при старте.",[2180,2513,2515],{"id":2514},"способ-4-восстановление-из-пакета-или-ручная-переустановка","Способ 4: Восстановление из пакета или ручная переустановка",[21,2517,2518],{},"Если служба установлена из пакетного менеджера (apt, dnf, yum), её конфигурация могла быть повреждена.",[618,2520,2521,2566,2589],{},[44,2522,2523,2203,2526,2558,2559,2562,2563,35],{},[55,2524,2525],{},"Debian/Ubuntu",[77,2527,2529],{"className":79,"code":2528,"language":81,"meta":82,"style":82},"sudo apt update\nsudo apt install --reinstall nginx  # Замените nginx на имя пакета\n",[28,2530,2531,2541],{"__ignoreMap":82},[86,2532,2533,2535,2538],{"class":88,"line":89},[86,2534,57],{"class":92},[86,2536,2537],{"class":95}," apt",[86,2539,2540],{"class":95}," update\n",[86,2542,2543,2545,2547,2550,2553,2555],{"class":88,"line":810},[86,2544,57],{"class":92},[86,2546,2537],{"class":95},[86,2548,2549],{"class":95}," install",[86,2551,2552],{"class":341}," --reinstall",[86,2554,1800],{"class":95},[86,2556,2557],{"class":1254},"  # Замените nginx на имя пакета\n","\nЭто восстановит файлы из ",[28,2560,2561],{},"/usr/share/doc/nginx/examples/"," или оригинальные конфиги в ",[28,2564,2565],{},"/etc/",[44,2567,2568,2203,2571],{},[55,2569,2570],{},"RHEL/CentOS/Fedora",[77,2572,2574],{"className":79,"code":2573,"language":81,"meta":82,"style":82},"sudo dnf reinstall nginx\n",[28,2575,2576],{"__ignoreMap":82},[86,2577,2578,2580,2583,2586],{"class":88,"line":89},[86,2579,57],{"class":92},[86,2581,2582],{"class":95}," dnf",[86,2584,2585],{"class":95}," reinstall",[86,2587,2588],{"class":95}," nginx\n",[44,2590,2591,2592,2595,2596,2599,2600,2603,2604,2607],{},"После переустановки ",[55,2593,2594],{},"не перезаписывайте"," свои кастомные настройки в ",[28,2597,2598],{},"/etc/nginx/nginx.conf"," (если они были), если пакетный менеджер спросит. Сравните старый и новый файлы конфигурации юнита (",[28,2601,2602],{},"/lib/systemd/system/nginx.service"," vs ",[28,2605,2606],{},"/etc/systemd/system/nginx.service","). Часто правильнее скопировать свои правки в новый оригинальный файл, а не использовать старый повреждённый.",[16,2609,2611],{"id":2610},"профилактика","Профилактика",[41,2613,2614,2624,2640,2651,2666],{},[44,2615,2616,2619,2620,2623],{},[55,2617,2618],{},"Всегда проверяйте синтаксис"," конфигурационных файлов службы и самого приложения (например, ",[28,2621,2622],{},"nginx -t",") перед перезагрузкой systemd.",[44,2625,2626,2630,2631,2634,2635,679,2637,35],{},[55,2627,992,2628],{},[28,2629,966],{}," после ",[104,2632,2633],{},"любого"," изменения файла юнита в ",[28,2636,227],{},[28,2638,2639],{},"/lib/systemd/system/",[44,2641,2642,186,2645,658,2647,2650],{},[55,2643,2644],{},"Настраивайте разумные таймауты",[28,2646,2173],{},[28,2648,2649],{},"TimeoutStopSec=",") для долгих служб, чтобы избежать ложных срабатываний.",[44,2652,2653,2656,2657,658,2659,658,2662,2665],{},[55,2654,2655],{},"Следите за правами"," на каталоги, с которыми работает служба (",[28,2658,1137],{},[28,2660,2661],{},"/var/lib/",[28,2663,2664],{},"/run/","). Рекомендуется создавать отдельного пользователя/группу для каждой службы.",[44,2667,2668,2671,2672,2675],{},[55,2669,2670],{},"Периодически проверяйте логи"," на предмет предупреждений (",[28,2673,2674],{},"journalctl -u \u003Cслужба>.service -p warning",") до того, как они превратятся в ошибки.",[286,2677],{},[2180,2679,2681],{"id":2680},"способ-n-откат-к-предыдущей-рабочей-конфигурации-если-используется-git","Способ N: Откат к предыдущей рабочей конфигурации (если используется Git)",[21,2683,2684],{},"Если конфигурационные файлы службы находятся под контролем версий (что хорошая практика):",[618,2686,2687,2719,2754,2807],{},[44,2688,2689,2690],{},"Определите, когда служба последний раз работала:\n",[77,2691,2693],{"className":79,"code":2692,"language":81,"meta":82,"style":82},"sudo journalctl -u nginx.service -b --no-pager | grep -i \"started\\|failed\"\n",[28,2694,2695],{"__ignoreMap":82},[86,2696,2697,2699,2701,2703,2705,2707,2710,2712,2714,2716],{"class":88,"line":89},[86,2698,57],{"class":92},[86,2700,426],{"class":95},[86,2702,429],{"class":341},[86,2704,1296],{"class":95},[86,2706,1744],{"class":341},[86,2708,2709],{"class":341}," --no-pager",[86,2711,389],{"class":388},[86,2713,392],{"class":92},[86,2715,395],{"class":341},[86,2717,2718],{"class":95}," \"started\\|failed\"\n",[44,2720,2721,2722],{},"Найдите коммит, после которого начались сбои:\n",[77,2723,2725],{"className":79,"code":2724,"language":81,"meta":82,"style":82},"cd /etc/systemd/system/\ngit log --oneline -p -- nginx.service\n",[28,2726,2727,2735],{"__ignoreMap":82},[86,2728,2729,2732],{"class":88,"line":89},[86,2730,2731],{"class":341},"cd",[86,2733,2734],{"class":95}," /etc/systemd/system/\n",[86,2736,2737,2740,2743,2746,2748,2751],{"class":88,"line":810},[86,2738,2739],{"class":92},"git",[86,2741,2742],{"class":95}," log",[86,2744,2745],{"class":341}," --oneline",[86,2747,1364],{"class":341},[86,2749,2750],{"class":341}," --",[86,2752,2753],{"class":95}," nginx.service\n",[44,2755,2756,2757],{},"Временно верните предыдущую версию файла:\n",[77,2758,2760],{"className":79,"code":2759,"language":81,"meta":82,"style":82},"sudo git checkout \u003Cхэш_коммита> -- nginx.service\nsudo systemctl daemon-reload\nsudo systemctl restart nginx.service\n",[28,2761,2762,2789,2797],{"__ignoreMap":82},[86,2763,2764,2766,2769,2772,2775,2778,2782,2785,2787],{"class":88,"line":89},[86,2765,57],{"class":92},[86,2767,2768],{"class":95}," git",[86,2770,2771],{"class":95}," checkout",[86,2773,2774],{"class":388}," \u003C",[86,2776,2777],{"class":95},"хэш_коммит",[86,2779,2781],{"class":2780},"sVt8B","а",[86,2783,2784],{"class":388},">",[86,2786,2750],{"class":341},[86,2788,2753],{"class":95},[86,2790,2791,2793,2795],{"class":88,"line":810},[86,2792,57],{"class":92},[86,2794,96],{"class":95},[86,2796,557],{"class":95},[86,2798,2799,2801,2803,2805],{"class":88,"line":1340},[86,2800,57],{"class":92},[86,2802,96],{"class":95},[86,2804,149],{"class":95},[86,2806,2753],{"class":95},[44,2808,2809],{},"Если это помогло, проанализируйте, какие именно изменения сломали службу, и внесите их более аккуратно.",[2180,2811,2813],{"id":2812},"способ-n1-запуск-службы-вручную-для-отладки","Способ N+1: Запуск службы вручную для отладки",[21,2815,2816],{},"Иногда systemd \"затыкает\" вывод ошибки. Запустите исполняемый файл напрямую от того же пользователя, под которым работает служба.",[618,2818,2819,2825],{},[44,2820,2821,2822,2824],{},"Узнайте пользователя из юнит-файла (",[28,2823,2136],{},") или из лога.",[44,2826,2827,2828,2883,2884,679,2887,2890],{},"Выполните:\n",[77,2829,2831],{"className":79,"code":2830,"language":81,"meta":82,"style":82},"sudo -u \u003Cпользователь> /usr/bin/some-service --verbose\n# или, если служба запускает скрипт:\nsudo -u \u003Cпользователь> /bin/bash -x /path/to/startup-script.sh\n",[28,2832,2833,2855,2860],{"__ignoreMap":82},[86,2834,2835,2837,2839,2841,2844,2847,2849,2852],{"class":88,"line":89},[86,2836,57],{"class":92},[86,2838,429],{"class":341},[86,2840,2774],{"class":388},[86,2842,2843],{"class":95},"пользовател",[86,2845,2846],{"class":2780},"ь",[86,2848,2784],{"class":388},[86,2850,2851],{"class":95}," /usr/bin/some-service",[86,2853,2854],{"class":341}," --verbose\n",[86,2856,2857],{"class":88,"line":810},[86,2858,2859],{"class":1254},"# или, если служба запускает скрипт:\n",[86,2861,2862,2864,2866,2868,2870,2872,2874,2877,2880],{"class":88,"line":1340},[86,2863,57],{"class":92},[86,2865,429],{"class":341},[86,2867,2774],{"class":388},[86,2869,2843],{"class":95},[86,2871,2846],{"class":2780},[86,2873,2784],{"class":388},[86,2875,2876],{"class":95}," /bin/bash",[86,2878,2879],{"class":341}," -x",[86,2881,2882],{"class":95}," /path/to/startup-script.sh\n","\nФлаги ",[28,2885,2886],{},"--verbose",[28,2888,2889],{},"-x"," (для bash) дадут подробный вывод. Часто ошибка становится очевидной при прямом запуске.",[806,2892,2893],{},"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 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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":82,"searchDepth":810,"depth":810,"links":2895},[2896,2898,2899,2906],{"id":2059,"depth":810,"text":2897},"Что означает ошибка systemd-failed-to-start",{"id":2096,"depth":810,"text":2097},{"id":2177,"depth":810,"text":2178,"children":2900},[2901,2903,2904,2905],{"id":2182,"depth":1340,"text":2902},"Способ 1: Анализ логов службы через journalctl",{"id":2279,"depth":1340,"text":2280},{"id":2406,"depth":1340,"text":2407},{"id":2514,"depth":1340,"text":2515},{"id":2610,"depth":810,"text":2611,"children":2907},[2908,2909],{"id":2680,"depth":1340,"text":2681},{"id":2812,"depth":1340,"text":2813},"systemd-failed","2026-02-15 16:38:58","Ошибка Failed to start в systemd мешает работе сервисов. Узнайте, как быстро диагностировать проблему через journalctl и исправить её проверенными способами. Пошаговая инструкция.","15-30 минут",[2915,2918,2921,2924],{"question":2916,"answer":2917},"Что означает ошибка 'Failed to start' в выводе systemctl?","Эта ошибка означает, что systemd не смог успешно запустить указанную службу (юнит). Причина может быть в самой службе, её конфигурации, зависимостях или конфликте ресурсов.",{"question":2919,"answer":2920},"Где искать подробную информацию о причине сбоя systemd?","Используйте команду `journalctl -u \u003Cимя_службы>.service --no-pager -b`, чтобы увидеть логи конкретной службы за текущую загрузку. Ключевые слова 'Failed', 'Error', 'exit code' укажут на проблему.",{"question":2922,"answer":2923},"Может ли ошибка 'Failed to start' быть вызвана недостатком прав?","Да, часто. Если служба запускается от неправильного пользователя (например, root, а должна от nginx) или в конфиге указан недоступный путь, systemd не сможет её запустить.",{"question":2925,"answer":2926},"Как временно обойти проблему, чтобы система загрузилась?","Можно отключить problematic юнит на загрузку командой `sudo systemctl disable \u003Cслужба>.service` или запустить систему в режиме восстановления, чтобы исправить конфигурацию.",[2928,2931,2934,2937,2940,2943],{"name":2929,"text":2930},"Проверьте точное состояние службы и код ошибки","Выполните `systemctl status \u003Cслужба>.service`. В разделе 'Active:' и последних строках лога будет указан код ошибки (например, 'exit-code' или 'timeout'). Запишите его.",{"name":2932,"text":2933},"Изучите полные логи службы через journalctl","Используйте `journalctl -u \u003Cслужба>.service -b --no-pager`. Прокрутите лог до конца и найдите строки с 'Failed', 'error', 'Permission denied', 'No such file'. Это ключ к причине.",{"name":2935,"text":2936},"Проверьте конфигурационный файл юнита на синтаксис","Выполните `systemd-analyze verify /etc/systemd/system/\u003Cслужба>.service` (или путь к вашему файлу). Команда проверит синтаксис и укажет на ошибки в секциях [Service], [Install].",{"name":2938,"text":2939},"Восстановите или переустановите проблемный пакет (если применимо)","Если служба относится к пакету (например, nginx, postgresql), попробуйте `sudo apt reinstall \u003Cпакет>` (Debian/Ubuntu) или `sudo dnf reinstall \u003Cпакет>` (RHEL/Fedora). Это восстановит оригинальные файлы конфигурации.",{"name":2941,"text":2942},"Вручную исправьте найденную проблему","В зависимости от логов: исправьте путь в `ExecStart`, права на файлы (`chmod`, `chown`), разрешите конфликт портов, добавьте недостающие зависимости (`Requires=`, `After=`) в конфиг юнита.",{"name":2944,"text":2945},"Перезапустите и включите службу","После исправлений выполните `sudo systemctl daemon-reload`, затем `sudo systemctl restart \u003Cслужба>.service` и `sudo systemctl enable \u003Cслужба>.service`. Проверьте статус снова.",[2947,2948,2949,2950,2951,2952,2953,2954],"systemd failed to start","ошибка systemd юнит не запустился","failed to start служба systemd","как исправить systemd ошибка запуска","journalctl ошибка юнита","systemctl status failed","systemd dependency failed","восстановление systemd службы",{},[2957,2958,2959],"/errors/linux/systemd-unit-not-found","/errors/linux/systemd-circular-dependency","/guides/linux/systemd-service-creation","Ошибки Linux",{"title":2051,"description":2912},"high","errors/linux/systemd-failed-to-start","Статья подробно разбирает ошибку 'Failed to start' в systemd, её основные причины и 4 проверенных способа решения. Вы научитесь анализировать логи и восстанавливать работу служб.",[2966,884,30,2967,34,2968,2969],"ошибки linux","администрирование","service","boot","eIns-0UfD2cGVn2HufRiXZrk1AiyCuiXxeXglmXIzm0"]