Toto je soubor cvičení následujících po článku Vysvětlení procesů v Linuxu.
Pokud jste si pozorně přečetli článek a porozuměli principům podrobně uvedeným uvnitř, měli byste být schopni odpovědět na většinu otázek.
Pokud najdete nějaké chyby nebo nepřesnosti, neváhejte zanechat komentář.
Hodně štěstí!
Základy procesů
- Otázka 1 :na vašem hostiteli Linuxu běží mnoho procesů najednou. Jedna informace však může jednoznačně identifikovat proces.
Jak se tomu říká?
Rozbalte MeOn Linux, proces lze jednoznačně identifikovat pomocí PID (nebo ID procesu), které nelze přiřadit dvěma odlišným procesům současně.- Otázka 2 :když váš systém nabootuje, spustí úplně první proces ve vaší instanci.
Jak se tomu říká?
Expand MeIt se nazývá proces init a používá se ke spouštění inicializačních skriptů pro síť, úlohy nebo moduly. V posledních distribucích byl nahrazen procesem systemd.- Otázka 3 :aktuálně máte na svém hostiteli otevřený shellový terminál a provedete následující příkaz.
Jaká jsou interně vyvolána systémová volání k provedení takového příkazu?
Rozbalte MeFirst, jádro rozdělí aktuální proces (tj. interpret bash) na nový proces. Dále bude obraz bash procesu nahrazen načteným obrazem programu ls. Nakonec je příkaz vykonán.- Otázka 4 :na svém hostiteli otevřete shellový terminál kliknutím na „Terminál“.
Stručně popište, jak terminál funguje .
Expand MeThe terminál je jednoduchý interaktivní proces, který neustále čeká na vstup uživatele. Když je zadán příkaz, příkaz se provede rozvětvením se do nového procesu a provedením příkazu v něm. Mezitím rodičovský proces (tj. samotný terminál) čeká na ukončení podřízeného procesu. Po dokončení se nadřazený proces obnoví.Zpracovává příkazy
- Otázka 5 :správce systému vás požádá o identifikaci všech procesů, které na hostiteli vlastníte.
Který příkaz byste k tomu spustili?
Rozbalte MeNejjednodušší způsob, jak toho dosáhnout, je provést příkaz ps. Ve výchozím nastavení nebude hlásit zařízení tty, ale můžete se rozhodnout spustit „ps u“, abyste viděli všechny procesy.- Otázka 6 :správce systému vás požádá o identifikaci všech procesů ve vašem systému.
Můžete poskytnout dva příkazy, které zobrazí všechny procesy na hostiteli?
Rozbalte MeChcete-li zobrazit všechny procesy v Linuxu, můžete použít buď „ps aux“ (což je syntaxe BSD) nebo „ps -ef“ (což je syntaxe POSIX)- Otázka 7 :jaký příkaz zobrazí procesy jako strom v systému Linux?
Procesy na pozadí a v popředí
- Otázka 8 :jaká syntaxe se používá v Linuxu k provedení procesu na pozadí?
- Otázka 9 :Jaký je termín, který popisuje proces, který byl spuštěn v terminálovém shellu?
- Otázka 10 :provedli jste příkaz na pozadí, ale chcete, aby byl proces spuštěn na popředí.
Jaký příkaz byste provedli?
Rozbalte MeThe job je 1, takže byste spustili „fg %1“- Otázka 11 :váš proces je nyní spuštěn v popředí .
Jaké ovládací prvky byste stiskli na klávesnici, abyste proces zastavili (a nezabili)?
Expand MeChcete-li zastavit proces nebo odeslat signál SIGSTOP procesu, musíte stisknout Ctrl + Z.- Otázka 12 :váš proces je nyní přerušen.
Jak byste obnovili provádění na pozadí?
Rozbalit MeChcete-li obnovit provádění, můžete provést příkaz „bg %1“.- Otázka 13 :jaké klávesy můžete stisknout na klávesnici, abyste poslali SIGINT procesu v popředí?
Signály a procesy
- Otázka 14 :jak byste definovali signál, pokud jde o procesy?
- Otázka 15 :jaký signál se v Linuxu používá k šetrnému vypnutí procesu?
- Otázka 16 :na druhou stranu, řekněme, že chcete okamžitě zabít proces, jaký signál byste k tomu použili? Jaké je číslo tohoto signálu?
- Otázka 17 :ve vašem terminálovém shellu jste provedli následující příkaz.
Proces trvá dlouho, takže se rozhodnete opustit hostitele a vypnout aktuální terminál.
Co se stalo?
Expand MeKdyž jste zavřeli terminál, byl do procesu odeslán signál SIGHUP. V důsledku toho byl proces okamžitě zastaven.- Otázka 18 :jaká řešení můžete poskytnout, abyste se vyhnuli tomu, co se právě stalo?
- Otázka 19 :Z hlavy, můžete poskytnout další signály používané v systémech Linux?
Příkazy pro pokročilé procesy
- Otázka 20 :jaký příkaz se v Linuxu používá k vypsání všech procesů se specifickým vzorem?
- Otázka 21 :jaký příkaz byste použili, abyste snadno zabili (SIGKILL) všechny procesy začínající na „fire“?
- Otázka 22 :Jaký příkaz se v systému Linux používá ke spuštění procesu s vlastní úrovní priority?
- Otázka 23 :proces má pěknou úroveň 19, bude využívat co nejvíce zdrojů?
- Otázka 24 :jaká je výchozí pěkná úroveň při vytváření procesů v Linuxu?
- Otázka 25 :jako uživatel, který nepoužívá sudo, můžete vytvořit proces s pěknou úrovní -5?
- Otázka 26 :jaký příkaz lze použít k nastavení priority běžícího procesu na Linuxu?
Monitorování procesů
- Otázka 27 :jaký příkaz lze v Linuxu použít ke sledování procesů v reálném čase?
- Otázka 28 :jakou zkratku lze použít v horním příkazu ke změně obnovovací frekvence?
- Otázka 29 :jakou volbu lze použít k provedení horního příkazu pro vlastní počet iterací?
- Otázka 30 :znáte nějaká další řešení, jak efektivně monitorovat procesy v Linuxu?
Závěr
Díky těmto cvičením procesů v Linuxu jste se doufejme dozvěděli více o procesech, o tom, jak s nimi zacházet a jak je efektivně monitorovat.
Chcete více cvičení?
- 30 cvičení oprávnění systému Linux pro správce systému
Pokud vás zajímá správa systému Linux, máme na webu celou sekci, která se jí věnuje.