GNU/Linux >> Znalost Linux >  >> Linux

systemd povolit automatický návrat na starší jádro v případě selhání spouštění

Nedávno systemd spustil novou funkci pro správu selhání spouštění. Pojďme si o tom přečíst v tomto krátkém zpravodajství o tomtéž.

Co je to systemd, znovu?

Systemd je systémový démon, který slouží jako softwarová sada základních stavebních bloků pro systém Linux. Usnadňuje správu systému a služeb a spouští zbytek systému. Vše je konvenčně reprezentováno malými písmeny jako systemd (systémový démon) podle standardů Unix/Linux.

Začali jej jako vývojářský projekt v roce 2010 Lennart Poettering a Kay Sievers. Fedora se od května 2011 stala první velkou distribucí, která ve výchozím nastavení zahrnovala systemd.

Zahrnutí systemd vyvolalo mezi zkušenými uživateli Linuxu určitý druh vzpoury. Distribuce jako Devuan byly vytvořeny jen proto, aby zůstaly stranou.

Nejdu zde do diskuse systemd vs init. To je zcela na vás, pokud rozumíte technickým detailům. Podělím se o novou funkci systemd spolu se svými zkušenostmi s opravou selhání spouštění pomocí ní.

Počítání spouštění:Nejnovější funkce Systemd

Jak fráze napovídá, počítání pokusů o spuštění je součástí revidované verze systemd „Automatic Boot Assessment“, který umožňuje sledovat bootování a selhání jádra.

S pomocí tohoto hodnocení se systém může automaticky vrátit k předchozí verzi OS/kernelu v případě, že novější odmítne úspěšně nabootovat kvůli selhání.

Upravená sada funkcí systemd 's nové Automatic Boot Assessment je k dispozici v dokumentaci GitHubu. Můžete si jej přečíst, pokud vás zajímají technické podrobnosti.

Vývojáři také navrhují, že kromě poskytování kompletního řešení na systémech UEFI lze různé komponenty používat také nezávisle v kombinaci s dalším softwarem.

Diagnostika problémů se systemd:Moje Ezkušenosti

Jsem nadšený z této nové funkce systemd. To by mohlo uživatelům Linuxu ušetřit spoustu času a problémů. Podělím se o své zkušenosti s problémem spouštění PŘED systemd zavedl tuto funkci selhání spouštění.

Systemd mi v minulosti pomohl diagnostikovat problém na mém systému s duálním spouštěním a myslím, že by bylo užitečné podělit se zde o zkušenosti, abyste věděli o jeho vynalézavosti:

Jednou, když jsem se pokoušel nabootovat můj systém Ubuntu 16.04 LTS, dostal jsem následující chybovou zprávu poté, co jsem totéž vybral z GRUB:

Byl jsem znepokojen, proč mě najednou po náročném dni v práci „uvítali“ tak otravnou zprávou. Když jsem si přečetl, že je zmiňován jeden z pevných disků mého počítače (/dev/sdb3), dostal jsem náznak, že by to mohlo mít něco společného s funkcí hibernace systému Windows 10 a skutečností, že pokusy o vypnutí systému Windows 10 jsou ve skutečnosti částečné hibernace pro rychlejší spouštění.

Jakmile jsem dostal tuto nápovědu, nabootoval jsem do Windows a provedl úplné vypnutí podržením klávesy Shift a následným kliknutím na Shutdown v nabídce Startup Windows, načež jsem se úspěšně mohl přihlásit k Ubuntu. Od této chvíle jsem zakázal „rychlé spuštění“ a hibernaci ve Windows.

Když jsem se podíval do protokolů pomocí příkazu, zpět na Ubuntu, zjistil jsem, že chybová zpráva je součástí systemd funkce. K uložení úplného výstupu příkazu do souboru protokolu jsem použil následující příkaz:

journalctl -xb | tee systemdlogged.log

Při procházení souboru protokolu jsem mohl znovu potvrdit, že to bylo skutečně způsobeno částečnou hibernací ve Windows 10 (Nelze vytvořit relaci:Již běží v relaci ).

Milujete nebo nenávidíte?

Jak můžete vidět, tento nový automatický návrat ke staršímu jádru by uživatelům Linuxu ušetřil nějaké potíže.

Tato myšlenka by umožnila implementaci podobných schémat na jiné zavaděče nebo systémy bez UEFI. Možná systemd lze také v budoucnu zvážit použití s ​​LinuxBoot?



Linux
  1. 5 důvodů, proč správci systému milují systemd

  2. Povolit skripty Setuid On Shell?

  3. Negrafické spouštění pomocí Systemd?

  1. Jak ladit proces spouštění systemd v CentOS/RHEL 7 a 8

  2. Je možné zavést linuxové jádro bez vytvoření obrazu initrd?

  3. Jak předat hodnotu vestavěnému modulu jádra Linuxu při spouštění?

  1. systemd neustále obnovuje pulseaudio a nedovoluje mi to zastavit

  2. Mohu Qemu ukončit se selháním při panice jádra?

  3. Závislosti Systemd a pořadí spouštění