GNU/Linux >> Znalost Linux >  >> Linux

Jak zkontrolovat úroveň běhu v Linuxu

Tento stručný průvodce vysvětluje, co je úroveň běhu, kolik úrovní běhu je v Linuxu a jak zkontrolovat úroveň běhu v operačních systémech Linux.

Co je úroveň běhu?

úroveň běhu je jedním z režimů, ve kterých poběží operační systém založený na Unixu. Jinými slovy, úroveň běhu je stav inicializace a celý systém, který definuje, jaké systémové služby fungují.

V linuxovém jádře existuje 7 úrovní běhu, počínaje 0 až 6. Systém lze spustit vždy pouze do jedné úrovně běhu.

Ve výchozím nastavení se systém zavede buď na úroveň běhu 3 nebo na úroveň běhu 5. Úroveň běhu 3 je CLI a 5 je GUI. Výchozí úroveň běhu je určena v /etc/inittab soubor ve většině operačních systémů Linux.

Pomocí runlevel můžeme snadno zjistit, zda běží X nebo síť je funkční a tak dále.

1. Zkontrolujte Runlevel In Linux (SysV init)

Zde je seznam úrovní běhu v distribucích Linuxu, které byly distribuovány pomocí SysV init jako výchozí správce služeb.

  • 0 - Zastavit
  • 1 – Textový režim pro jednoho uživatele
  • 2 - Nepoužito (definovatelné uživatelem)
  • 3 - Plný textový režim pro více uživatelů
  • 4 - Nepoužito (definovatelné uživatelem)
  • 5 - Plný grafický režim pro více uživatelů (s přihlašovací obrazovkou založenou na X)
  • 6 - Restartovat

Nyní se podívejme, jak najít úrovně běhu.

Chcete-li zjistit úroveň běhu systému, otevřete svůj terminál a spusťte následující příkaz:

$ runlevel

Ukázkový výstup:

N 3

Ve výše uvedeném výstupu písmeno 'N' znamená, že úroveň běhu se od spuštění systému nezměnila. A 3 je aktuální úroveň běhu, tj. systém je v režimu CLI.

V novějších verzích init , můžete najít podrobnosti o aktuální a předchozí úrovni běhu pomocí proměnných prostředí s názvem RUNLEVEL a PREVLEVEL .

Řekněme například, že chcete-li zjistit aktuální úroveň běhu, musíte spustit:

$ echo $RUNLEVEL

Chcete-li najít předchozí úroveň běhu:

$ echo $PREVLEVEL

Pokud byste chtěli změnit RunLevel na něco jiného, ​​upravte /etc/inittab soubor:

$ sudo vi /etc/inittab

Najděte a upravte položku initdefault na úroveň běhu dle vašeho výběru. Řekněme například, že chcete-li nastavit úroveň běhu na grafický režim pro více uživatelů (úroveň běhu 5), upravte ji, jak je uvedeno níže.

id:5:initdefault:

Uložte a zavřete soubor. Restartujte svůj systém a přihlaste se k nové úrovni běhu.

Další podrobnosti o úrovních běhu naleznete na manuálových stránkách.

$ man runlevel

2. Zkontrolujte Runlevel In Linux (Systemd)

V posledních verzích systémů Linux (počínaje RHEL 7, Ubuntu 16.04 LTS) byl koncept runlevels nahrazen systemd cíle.

Zde je seznam Systemd cíle v distribucích Linuxu, které byly distribuovány pomocí Systemd jako výchozí správce služeb.

  1. runlevel0.target, poweroff.target – Halt
  2. runlevel1.target, rescue.target – Textový režim pro jednoho uživatele
  3. runlevel2.target, multi-user.target – Nepoužívá se (definovatelné uživatelem)
  4. runlevel3.target, multi-user.target – Plně textový režim pro více uživatelů
  5. runlevel4.target, multi-user.target – Nepoužívá se (definovatelné uživatelem)
  6. runlevel5.target,graphical.target – Plně grafický režim pro více uživatelů (s přihlašovací obrazovkou založenou na X)
  7. runlevel6.target,reboot.target – Restartovat

V systémech Linux, které používají Systemd jako výchozí správce služeb můžete najít aktuální cíl pomocí příkazu:

$ systemctl get-default

Ukázkový výstup:

graphical.target

Jak vidíte ve výše uvedeném výstupu, moje aktuální úroveň běhu (jinými slovy cíl) je 5 , což je grafický režim.

Chcete-li zobrazit všechny aktuálně načtené cíle, spusťte:

$ systemctl list-units --type target

Ukázkový výstup:

   UNIT                   LOAD   ACTIVE SUB    DESCRIPTION                             
   basic.target           loaded active active Basic System
   bluetooth.target       loaded active active Bluetooth
   cryptsetup.target      loaded active active Local Encrypted Volumes
   getty.target           loaded active active Login Prompts
   graphical.target       loaded active active Graphical Interface
   local-fs-pre.target    loaded active active Local File Systems (Pre)
   local-fs.target        loaded active active Local File Systems
   multi-user.target      loaded active active Multi-User System
   network-online.target  loaded active active Network is Online
   network-pre.target     loaded active active Network (Pre)
   network.target         loaded active active Network
   nfs-client.target      loaded active active NFS client services
   nss-lookup.target      loaded active active Host and Network Name Lookups
   nss-user-lookup.target loaded active active User and Group Name Lookups
   paths.target           loaded active active Paths
   remote-fs-pre.target   loaded active active Remote File Systems (Pre)
   remote-fs.target       loaded active active Remote File Systems
   rpc_pipefs.target      loaded active active rpc_pipefs.target
   rpcbind.target         loaded active active RPC Port Mapper
   slices.target          loaded active active Slices
   sockets.target         loaded active active Sockets
   sound.target           loaded active active Sound Card
   swap.target            loaded active active Swap
   sysinit.target         loaded active active System Initialization
   timers.target          loaded active active Timers
   veritysetup.target     loaded active active Local Verity Integrity Protected Volumes
 LOAD   = Reflects whether the unit definition was properly loaded.
 ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
 SUB    = The low-level unit activation state, values depend on unit type.
 26 loaded units listed. Pass --all to see loaded but inactive units, too.
 To show all installed unit files use 'systemctl list-unit-files'.

Výše uvedený příkaz zobrazí pouze aktivní cíle.

Chcete-li zobrazit všechny načtené cíle (aktivní i neaktivní), spusťte:

$ systemctl list-units --type target --all

Pokud byste chtěli změnit RunLevel na něco jiného, ​​například runlevel3.target , nastavte jej podle obrázku níže:

$ sudo systemctl set-default runlevel3.target

Chcete-li přejít na jinou cílovou jednotku pouze v aktuální relaci, spusťte následující příkaz:

$ sudo systemctl isolate runlevel3.target

Další podrobnosti viz Systemd manuálové stránky.

$ man systemd

Zkontrolujte úroveň běhu Linuxu pomocí příkazu 'who'

Jak jeden ze čtenářů navrhl v sekci komentářů níže, úroveň běhu můžeme najít také pomocí who příkaz jako níže:

$ who -r

Ukázkový výstup:

     run-level 5  2021-06-09 10:21

Doufám, že to pomůže.

Související čtení:

  • Jak vypsat seznam spouštěcích služeb při spouštění v systému Linux

Linux
  1. Jak změnit úroveň běhu v systému RHEL 7 Linux

  2. Jak zkontrolovat verzi OS a Linuxu

  3. Jak zkontrolovat historii přihlášení k systému Linux

  1. Jak se Linux dostal k sálovému počítači

  2. Jak zkontrolovat verzi Redhat

  3. Jak zkontrolovat verzi MySQL v Linuxu

  1. Jak zkontrolovat verzi MySQL v Linuxu

  2. Jak zkontrolovat časové pásmo v Linuxu

  3. Jak zkontrolovat HZ v terminálu?