V této části přípravy na zkoušku RHCSA se naučíte, jak se ručně změnit na jiné spouštěcí cíle. Tento článek vás také naučí, jak nastavit výchozí spouštěcí cíle pro automatické spouštění do grafického nebo víceuživatelského cíle v systému Red Hat Enterprise Linux.
V tomto tutoriálu se naučíte:
- Jak zkontrolovat výchozí cíl spouštění
- Jak ručně přepínat mezi různými cíli
- Jak nastavit výchozí spouštění na cíl pro více uživatelů
- Jak nastavit výchozí spouštění na grafický cíl
Změňte výchozí cíl úrovně běhu v systému RHEL 8.
Požadavky na software a použité konvence
Kategorie | Požadavky, konvence nebo použitá verze softwaru |
---|---|
Systém | Red Hat Enterprise Linux 8 |
Software | Není k dispozici |
Jiné | Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz. |
Konvence | # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel |
Co jsou cíle úrovně běhu
Cíl bootování si můžete představit jako konkrétní úroveň operace. Pokud tedy například dáváte přednost použití grafického uživatelského rozhraní (vzhledem k tomu, že je nainstalováno grafické uživatelské rozhraní), možná budete chtít změnit úroveň provozu na graphical.target
. Podobně pro negrafickou provozní úroveň pro více uživatelů budete muset změnit na multi-user.target
.
Pokud znáte SysV, který byl výchozím inicializačním standardem pro mnoho systémů GNU/Linux před systemd
proliferace, můžete si vybavit grafický cíl jako runlevel 5
nebo cíl pro více uživatelů jako runlevel 4
. Ve skutečnosti se mnoho nezměnilo a nomenklatura runlevel stále existuje. Pomocí následujícího příkazu můžete vypsat všechny cíle úrovně běhu dostupné ve vašem systému RHEL:
# ls -l /lib/systemd/system/runlevel*.target
Pro všechny možné cíle použijte:
# systemctl list-units --type target or # systemctl list-units --type target --all
Úroveň běhu | Cílová jednotka | Popis cílové jednotky |
---|---|---|
0 | runlevel0.target nebo poweroff.target | Změna systému na úroveň běhu 0 vypne systém a vypne váš server/desktop. |
1 | runlevel1.target nebo rescue.target | Úroveň záchranného běhu, známá také jako jeden režim, se používá pro odstraňování problémů se systémem a různé úlohy správy systému. |
2 | runlevel2.target nebo multi-user.target | Uživatelem definovaná úroveň běhu. Ve výchozím nastavení identické s úrovní běhu 3. |
3 | runlevel3.target nebo multi-user.target | Toto je víceuživatelská a negrafická úroveň běhu. Více uživatelů se může přihlásit prostřednictvím lokálních konzolí/terminálů nebo vzdáleného síťového přístupu. |
4 | runlevel4.target nebo multi-user.target | Uživatelem definovaná úroveň běhu. Ve výchozím nastavení identické s úrovní běhu 3. |
5 | runlevel5.target nebo graphical.target | Grafická úroveň běhu pro více uživatelů. Více uživatelů se může přihlásit prostřednictvím lokálních konzolí/terminálů nebo vzdáleného síťového přístupu. |
6 | runlevel6.target nebo reboot.target | Změna systému na tuto úroveň běhu restartuje váš systém. |
Když se při zkoušce RHCSA zaseknete nebo si prostě nepamatujete některé z výše uvedených pojmů týkajících se úrovní běhu, podívejte se na manuálovou stránku spuštěním
man runlevel
příkaz.Jak zkontrolovat a změnit výchozí cíl spouštění
Nejprve se naučíme, jak zkontrolovat aktuálně nakonfigurovaný výchozí cíl spouštění na úrovni běhu. Po dokončení nastavíme výchozí cíl úrovně běhu našeho systému na úroveň běhu 3, což je multi-user.target
cílová jednotka. Nastavení výchozího cíle úrovně běhu dá vašemu systému pokyn, aby se automaticky spustil do předem nakonfigurované úrovně běhu.
- Zkontrolujte výchozí konfiguraci systému na úrovni běhu:
# systemctl get-default graphical.target OR # ls -l /etc/systemd/system/default.target
Výše uvedený příkaz vypíše název aktuálně nastavené výchozí cílové jednotky úrovně běhu.
- Nastavte výchozí cílovou jednotku úrovně běhu na
multi-user.target
cílová jednotka. Toto nakonfiguruje váš systém tak, aby se zaváděl dorunlevel3
při příštím restartu systému.# systemctl set-default multi-user.target Removed /etc/systemd/system/default.target. Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/multi-user.target.
VĚDĚLI JSTE?
Na jednotlivé cílové jednotky můžete odkazovat pod různými názvy. Například pro vaši zkoušku RHCSA může být snazší zapamatovat sirunlevel3
místomulti-user.target
. Nejen, že se snáze zapamatuje, ale také se rychleji píše, což vám ušetří čas na zkoušce. Například následující čtyři příkazy jsou zcela totožné. Nejlepší příkaz k použití je ten, který si nejsnáze zapamatujete:# systemctl set-default multi-user.target # systemctl set-default multi-user # systemctl set-default runlevel3.target # systemctl set-default runlevel3
Abyste lépe porozuměli tomu, co se zde děje, měli byste si nejprve prostudovat cíl RHCSA Vytvořit pevné a měkké odkazy. Jakmile budete připraveni, všimněte si, že cíle, jako je například
Seznam všech dostupných cílů spouštění v systému RHEL.multi-user.target
je jednoduše symbolický odkaz narunlevel3.target
jednotka. - Restartujte systém:
# reboot
Jak ručně změnit cíl na jiný runlevel
Výše uvedená část vysvětluje, jak změnit výchozí úroveň běhu. To znamená, že při příštím restartu se systém zavede do uživatelem zvolené úrovně běhu. Dále se naučíme, jak změnit úroveň běhu za běhu bez nutnosti restartu. Toho lze dosáhnout pomocí systemctl
příkaz s kombinací isolate
argument.
V níže uvedeném příkladu se dočasně změníme z graphical
runlevel na multi-user
cílová.
- Změnit na
multi-user
runlevel:# systemctl isolate multi-user
Výše uvedený příkaz jednoduše deaktivoval
graphical
runlevel a odpovídající služby. - Pokud nevidíte výzvu k přihlášení, možná budete muset přejít na jinou konzoli TTY pomocí kombinace
CTRT+ALT+F1
klíče.
Cvičení
- Restartujte systém ručním přepnutím na
reboot.target
pomocísystemctl
příkaz. Můžete také použít cílové vypnutí na úrovni běhu a vypnutí systému? - Nastavte svůj systém tak, aby se spouštěl přímo pro
multi-user
cílová. Restartujte systém a potvrďte, že se systém trvale spouští domulti-user
cílová. - Zkuste opakovaně přepínat mezi
multi-user
runlevel agraphical
runlevel. Proč nevidíte výzvu k přihlášení přímo při přepínání zgraphical
namulti-user
runlevel? - Toto je otázka navíc pro dobré studenty a ty, kteří se nebojí malých potíží a vlastního výzkumu.
VAROVÁNÍ
Při práci na otázce 4 můžete skončit s nefunkčním systémem. Pokračujte tedy pouze na neprodukčním systému, jako jsou virtuální stroje sandbox atd.Znovu, nepokoušejte se o tuto otázku, pokud nejste připraveni případně rozbít váš systém! Nastavte výchozí cíl spouštění na
reboot.target
jednotku a restartujte systém. Můžete opravit neustálé restarty a nastavit výchozí úroveň běhu zpět narunlevel5
?