Tato stránka vysvětluje, jak spravovat spuštěné procesy ve vašem systému pomocí Webminu.
Úvod do procesů
Každý program, proces nebo příkaz spuštěný v systému Linux je proces. Ve vašem systému jsou kdykoli spuštěny desítky procesů, některé pro programy, se kterými komunikujete graficky, některé pro příkazy, které jste spustili na příkazovém řádku prostředí, některé pro servery běžící na pozadí a některé, které provádějí systémové úkoly. Pokaždé, když na příkazovém řádku napíšete příkaz jako ls nebo vi, vytvoří se nový proces, který se ukončí, jakmile je práce hotová.
Každý proces je identifikován jedinečným ID, známým jako PID nebo ID procesu. Každý je vlastněn jedním uživatelem a je členem několika skupin, které určují oprávnění, která má proces. A každý z nich má prioritu (známou také jako pěkná úroveň), která určuje, kolik času procesoru může proces využívat v zaneprázdněném systému. Téměř každý proces má nadřazeného, což je proces, který jej spustil, a ze kterého dědí vlastnictví, prioritu a další nastavení.
Proces bude probíhat, dokud se nerozhodne ukončit, nebo dokud nebude zabit signálem z jiného procesu.
Modul Spuštěné procesy
Tento modul lze použít k prohlížení, zabíjení, změně priorit a spouštění procesů ve vašem systému. Při prvním zadání z kategorie Systém se na hlavní stránce zobrazí strom procesů, jak je znázorněno níže.
Modul má několik různých způsobů zobrazení všech procesů ve vašem systému, které lze vybrat pomocí odkazů Zobrazit v horní části hlavní stránky. Jsou to:
PID V tomto režimu zobrazení je každý proces zobrazen odsazen pod svým nadřazeným prvkem a tvoří strom všech procesů běžících ve vašem systému. V horní části stromu je příkaz init, který je spuštěn jádrem při spuštění a nemá tedy žádného rodiče. Uživatel Tento režim seskupuje procesy podle jejich vlastníka. V systémech s mnoha uživateli může být užitečné vidět na první pohled, co každý uživatel běží. Paměť V tomto režimu jsou procesy seřazeny podle množství paměti, kterou využívají, přičemž ty, které využívají nejvíce paměti, jsou zobrazeny v horní části stránky. Využití paměti procesů ne vždy svědčí o množství paměti, kterou skutečně využívá, protože procesy často sdílejí paměť navzájem. Kromě toho je nad seznamem procesů zobrazeno celkové a volné množství skutečné a virtuální paměti ve vašem systému. CPU Tento režim zobrazení objednává procesy podle jejich aktuálního využití CPU, přičemž nejtěžší uživatel se zobrazí jako první. Někdy se příkaz Webmin, který generuje stránku, objeví v horní části seznamu, ale lze jej bezpečně ignorovat. Průměrné zátěže systému se zobrazí v horní části stránky, abyste získali představu o tom, jak zaneprázdněný byl systém za posledních 1,5 a 10 minut. Průměr 0 znamená vůbec žádnou aktivitu, 1 znamená, že CPU je plně využíváno a cokoli nad 1 znamená, že existuje více procesů, které chtějí běžet, než má systém čas na CPU.
Možnosti Hledat a Spustit slouží k vyhledávání procesů a spouštění nových. Další podrobnosti najdete v následujících částech.
Prohlížení, zabíjení nebo změna priority procesu
Úplné podrobnosti o jakémkoli spuštěném procesu zobrazíte kliknutím na jeho sloupec ID procesu na kterémkoli displeji na hlavní stránce. . Tím se dostanete na stránku s informacemi o procesu, která je uvedena na tomto snímku obrazovky.
Stránka zobrazuje všechny dostupné informace o procesu, včetně jeho úplného příkazového řádku, nadřazeného příkazu a všech podprocesů. Stačí přejít na informační stránku pro rodiče kliknutím na jeho příkaz, nebo na stránku některého z podprocesů kliknutím na jeho ID procesu. Seznam souborů, které má proces otevřený, a síťových připojení, které aktuálně používá, lze zobrazit kliknutím na tlačítko Soubory a připojení.
Proces lze zastavit pomocí signálu TERM kliknutím na tlačítko Ukončit proces. Protože to lze některými příkazy ignorovat, lze tlačítko Kill Process použít k odeslání signálu KILL, pokud ukončení selže. Pokud není proces zavěšen uvnitř systémového volání jádra, je zaručeno, že jeho zabití proběhne úspěšně.
Další signály lze odeslat výběrem typu signálu vedle tlačítka Odeslat signál před jeho stisknutím. Některé z užitečnějších signálů jsou:
HUP U mnoha serverových procesů tento signál způsobí, že znovu načtou své konfigurační soubory. STOP Pozastaví proces, dokud není přijat signál CONT. CONT Obnoví proces, který byl pozastaven signálem STOP.
Informační stránku lze také použít ke změně pěkné úrovně běžícího procesu, což mu dává vyšší nebo nižší prioritu.Chcete-li změnit prioritu procesů, vyberte novou úroveň ze seznamu * Nice level * a poté klikněte na tlačítko Změnit. Nižší úrovně znamenají vyšší priority, takže proces s pěknou úrovní 10 získá více času procesoru než ten s úrovní 5.
V systému s více uživateli jsou dlouho běžící procesy, které zabírají hodně Času CPU by měla být přidána vyšší pěkná úroveň, aby nezpomaloval procesy, které interagují s uživateli. Alternativně můžete proces urychlit na úkor ostatních tím, že mu dáte nižší pěknou úroveň. Při nastavování extrémně nízké úrovně (například 20) byste měli být opatrní, protože u všech ostatních procesů může dojít k nedostatku času CPU, což způsobí, že systém nebude reagovat.
Hledání procesů
Pokud ve vašem systému běží velké množství procesů a chcete najít jeden nebo více, které chcete zabít nebo zobrazit, vyhledávací funkce modulu Running Process umožňuje je to snadné. Chcete-li najít procesy, postupujte takto:
- Na hlavní stránce modulu klikněte na odkaz Hledat režim zobrazení. Tím se dostanete do vyhledávacího formuláře, jak je znázorněno na snímku obrazovky níže.
- Formulář zobrazuje několik různých kritérií pro hledání procesů, z nichž si můžete vybrat výběrem přepínače vedle něj. Kritéria jsou: Vlastněno Procesy vlastněné uživatelem, jehož jméno zadáte dále tato volba bude nalezena. # * Shoda Vyhledá procesy, jejichž příkaz nebo argumenty obsahují text, který zadáte vedle této možnosti. Použití více než Vyhledá procesy využívající více než zadané procento času CPU. Použití souborového systému Procesy, jejichž aktuální adresář je zapnutý bude nalezen zvolený souborový systém nebo přistupujete k jakémukoli souboru na něm. Užitečné, pokud nemůžete Odpojte souborový systém, protože je zaneprázdněn. Použití souboru Vyhledá procesy, které mají zadaný soubor otevřený pro čtení nebo zápis. Pokud zadáte adresář, bude nalezen jakýkoli proces, který jej má jako aktuální adresář. Použití portu Vyhledá procesy, které odesílají, přijímají nebo naslouchají síťovému provozu na zadaném portu pomocí zvoleného protokolu. Užitečné, pokud znáte číslo portu, na kterém server naslouchá, a chcete najít proces serveru. Použití adresy Vyhledá procesy, které mají k zadané adrese otevřené síťové připojení nebo na této adrese naslouchají, pokud se jedná o rozhraní ve vašem systému.
- Chcete-li filtrovat procesy vyhledávání Webmin z výsledků, vyberte možnost Ignorovat procesy vyhledávání ve výsledku. To může být užitečné při vyhledávání podle využití CPU, protože procesy Webmin spotřebovávají hodně času CPU.
- Po výběru kritérií hledání klikněte na tlačítko Hledat. Veškeré procesy párování se zobrazí pod formulářem.
- Pokud chcete zobrazit další informace o procesu, změnit jeho prioritu nebo mu poslat samotný signál, klikněte ve výsledcích na jeho ID procesu.
- Chcete-li zabít všechny odpovídající procesy, klikněte na tlačítko Ukončit procesy nebo zabít procesy. Libovolný signál můžete také odeslat všem procesům tak, že jej vyberete ze seznamu vedle tlačítka * Odeslat signál *. Zobrazí se stránka s výpisem každého ID procesu a toho, zda bylo úspěšně signalizováno nebo zabito.
Spuštění procesu
Modul lze také použít ke spuštění jednoduchých příkazů, a to buď v popředí, aby se zobrazil jejich výstup, nebo na pozadí jako démoni. To může být užitečné, pokud chcete pouze spustit příkaz bez nutnosti přihlášení přes telnet nebo SSH (nebo pokud brána firewall brání přihlášení pomocí telnetu nebo SSH). Postup je následující:
- Na hlavní stránce modulu klikněte na odkaz Spustit vedle možností režimu zobrazení. Tím se dostanete do formuláře pro zahájení nového procesu.
- Do pole * Command to run * zadejte příkaz, který chcete spustit. Provozovatelé prostředí a speciální znaky jako;, & lt, > a & & lze použít.
- Pokud je příkaz něco, co bude trvat dlouho, můžete jej nastavit na možnost Spustit na pozadí, aby jej Webmin automaticky umístil na pozadí. Pokud však chcete vidět výstup z příkazu, ponechte možnost nastavenou na Čekat, dokud nebude dokončena.
- Do pole * Vstup do příkazu * zadejte jakýkoli vstup, který chcete přenést na příkaz.
- Spusťte jej kliknutím na tlačítko Spustit. Pokud byla vybrána možnost Čekat na dokončení, zobrazí se jakýkoli výstup z příkazu.
Spustit příkaz
Možnosti řízení přístupu k modulu
Ve výchozím nastavení může každý uživatel Webminu s přístupem k tomuto modulu spravovat všechny spuštěné procesy v systému, jako by byl přihlášen jako root. Pomocí modulu Uživatelé a skupiny však můžete omezit přístup uživatele, aby mohl zabít nebo znovu vylepšit procesy vlastněné konkrétním uživatelem systému Unix.Je také možné omezit uživatele na režim jen pro čtení, což mu umožňuje vidět pouze procesy, a to tak, že je žádným způsobem nezměníte nebo nespustíte nové.
Nejprve byste si měli přečíst kapitolu 52, kde se dozvíte více o řízení přístupu k modulu a o tom, jak udělit uživateli přístup k modulu Spuštěné procesy. Jakmile to provedete, upravíte přístup uživatele Webmin k tomuto modulu a budete postupovat takto:
- V modulu Webmin Users klikněte vedle názvu uživatele na Spuštěné procesy. nebo skupina, kterou chcete omezit.
- Změňte pole Může upravit konfiguraci modulu? na Ne.
- Chcete-li uživateli Webminu poskytnout přístup pouze k procesům vlastněným konkrétním uživatelem Unixu, zadejte uživatelské jméno do pole * Správa procesů jako uživatel *. Pokud mají uživatelé Unixu a Webminu stejný název, můžete místo toho vybrat Aktuálního uživatele Webminu. To může být užitečné při nastavování řízení přístupu modulu pro skupinu, ve které chcete každého člen, aby mohl spravovat pouze své vlastní procesy.
- Chcete-li uživatele přepnout do režimu jen pro čtení, nastavte pole * Může zabíjet a renice procesy? * a Může spouštět příkazy? * na * Ne. Pokud toto je hotovo, nezáleží na tom, jaké uživatelské jméno zadáte v kroku 7, protože nelze provést žádnou správu procesu.
- Kliknutím na tlačítko Uložit změny aktivujete.
Chcete-li omezit procesy, které může uživatel Webminu spravovat, kód modulu se jednoduše přepne tak, aby fungoval jako uživatel Unix uvedený v kroku 4. Protože uživatel Unix nemůže zabít nebo změnit prioritu žádného procesu které nevlastní, taková změna uživatele způsobí, že operační systém automaticky vynutí kontrolu přístupu k procesu pro Webmina.
Jiné operační systémy
Protože procesy existují ve všech verzích Unixu s téměř se stejnými atributy se tento modul ve všech podporovaných operačních systémech jeví téměř stejně.
Při prohlížení podrobných informací o procesu mohou být v jiných operačních systémech k dispozici různé informace. Rozsah pěkných úrovní se může také lišit, ale nižší úrovně stále znamenají vyšší prioritu a naopak.
Při hledání procesu nemusí být k dispozici kritéria Používání souborového systému, Používání souborů nebo Používání portů. Tyto možnosti závisí na příkazech fuser a lsof, které nejsou k dispozici nebo nejsou ve výchozím nastavení nainstalovány ve všech systémech.