[3 поправки] Системата не е заредена със Systemd като Init система [Диспечер на дялове]

езици: Немски

Резюме :

Системата не е заредена със systemd като инициална система (PID 1)

Когато изпълнявате команди на Systemd, може да получите грешка ' Системата не е заредена със systemd като инициална система (PID 1). Не може да оперира. ' В тази публикация, MiniTool Съветник за дялове ви казва защо ще получите тази грешка и как да я разрешите.





Бърза навигация:

Системата не е заредена със Systemd като Init система

Много хора съобщават, че са получили грешка „Системата не е заредена със systemd като система за инициализиране (PID 1). Не мога да оперирам. Тази грешка обикновено се появява, когато изпълняват команда systemd под Linux системи.

системата не се зарежда със systemd като init 1

Причината за възникването на тази грешка е, че системата Linux не използва systemd като система за инициализиране. Както всички знаем, процесът на зареждане на системата Linux е както следва:



  • Включете компютъра и той ще активира BIOS.
  • BIOS ще прочете MBR, за да намери зареждащия програма.
  • Зареждащият инструмент ще зареди системното ядро, което ще управлява хардуерните ресурси на компютъра и ще действа като интерфейс между софтуер и хардуер.
  • След това ядрото ще активира процес на инициализиране (идентификаторът му на процес е 1), който е първият процес на системата. Той е отговорен за зараждането на всички други потребителски процеси. Процесът init е много уникален и може да изпълнява задачи, които други процеси не могат.
миниатюра на процеса на зареждане на Linux Какво представлява процесът на зареждане на Linux? [Подробно въведение]

Тази публикация описва всеки етап от процеса на зареждане на Linux. Познаването му може да ви помогне да решите много проблеми при стартиране на компютър.

Прочетете още

Тогава какво е инициална система? Системата Init може да дефинира, управлява и контролира поведението на процеса init. И той е отговорен за организирането и изпълнението на много независими или свързани задачи за инициализация, така че компютърната система да може плавно да влезе в определен абониран от потребителя режим на работа.

Linux системите имат много системи за инициализиране, като System III, System V, Upstart и т.н. Но от 2015 г. насам повечето дистрибуции на Linux са приели systemd, за да заменят тези традиционни системи за инициализиране. Освен това, systemd е обратно съвместим със System V.



Въпреки това, в следните два случая, systemd няма да бъде активиран по подразбиране:

  1. Вие използвате Linux системи в WSL (подсистема на Windows за Linux).
  2. Вие сте пропуснали процеса на инициализиране (/sbin/init).
инсталирайте подсистема на Windows за миниатюра на Linux Ръководство за инсталиране на подсистема на Windows за Linux (WSL) в Win 10

Можете да стартирате Linux на вашия компютър с Windows 10, просто като инсталирате подсистема на Windows за Linux (WSL). Тази публикация ви показва как да го настроите.

Прочетете още

Как да решим този проблем

За да разреша грешката „Системата не е заредена със systemd като init system“, събрах 3 начина. Ако се сблъскате със същия проблем, можете да ги опитате един по един.



Начин 1. Използвайте еквивалентна команда Sysvinit

Ако стартирате Linux системи чрез WSL, системата Linux ще използва System V init система, вместо systemd. В този случай не можете да изпълнявате команди на systemd, но можете да изпълнявате еквивалентни команди на Sysvinit.

Бакшиш: команда ' ps -p 1 -o comm= ' ще ви помогне да разберете каква система за стартиране използвате.

Тази таблица може да ви помогне.

Systemd команда Команда Sysvinit
systemctl start service_name услуга service_name start
systemctl стоп име на услугата услуга име_на услуга стоп
systemctl рестартирайте service_name услуга service_name рестартиране
състояние на systemctl име на услугата състояние на име на услугата
systemctl активира име на услугата chkconfig име на услугата е включено
systemctl деактивира service_name chkconfig име на услугата е изключено

Начин 2. Добавете /sbin/init в командата

Съвременните Linux системи позволяват на потребителите да пропускат процеса на инициализиране. Например, ако изпълните командата 'init=/bin/bash' в среда за зареждане, системата ще стартира среда за единична root обвивка и не се изисква потребителска парола.



В тази среда всички команди се изпълняват с пътя по подразбиране /bin/bash . В този случай трябва да използвате /sbin/init да се замени /bin/bash .

Начин 3. Активирайте SystemD с помощта на скриптове

За да активирате винаги systemd на WSL2, можете да приложите скриптове от diddledani . Щракнете върху връзката и тя ще ви покаже как да завършите тази задача стъпка по стъпка. Някои хора съобщават, че работи за тях.

[Решено] Как да коригирам грешки при зареждане на GRUB и да възстановим данни?