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