Folyamatok
A program egy példányának futtatását folyamatnak nevezzük. A Linux rendszerben a process id (PID) egy olyan folyamat képviseletére szolgál, amely minden folyamat esetében megkülönböztethető. Kétféle folyamat létezik,
- Háttérfolyamatok
- Előtér folyamatai
Háttérfolyamatok
A háttérfolyamatok a terminálban indulnak el, és önmaguk futtatják őket. Ha egy folyamatot futtat a terminálon, annak kimenete megjelenik a terminál ablakában, és kölcsönhatásba léphet vele, de ha nincs szüksége a folyamatra, futtathatja a háttérben. Ha egy folyamatot a háttérben akar futtatni, csak adjon hozzá egy „&” jelet a parancs végén, és ez elindul a háttérben; ez időt takarít meg, és elindíthat egy másik folyamatot. A háttérben futó folyamatok felsorolásához használja a 'jobok parancsot.'Az összes futó folyamatot megjeleníti a háttérben.
Például a frissítés hosszú folyamat a Linuxban. Túl sok időt vesz igénybe, és ha más dolgokat szeretne csinálni a rendszer frissítése közben, használja a háttér parancsot.
[e-mail védett]: ~ $ sudo apt-get upgrade -y &A háttérben futni kezd. És közben interakcióba léphet más programokkal. A parancs beírásával ellenőrizheti, hogy hány és mely folyamat fut a háttérben.
[e-mail védett]: ~ $ munkahely[1] + A sudo apt-get upgrade futtatása -y &
Előtér folyamatai
A terminálban futtatott összes folyamat alapértelmezés szerint előtérbeli folyamatként fut. Kezelhetjük őket előtér és háttér parancsokkal.
Bármely, a feladatokban felsorolt háttérfolyamatot előtérbe hozhat az 'fg' paranccsal, majd a háttérfolyamat számával.
[e-mail védett]: ~ $ fg% 1sudo apt-get upgrade -y
Ha pedig háttérbe akarja vinni ezt a folyamatot, írja be ezt a parancsot.
[e-mail védett]: ~ $ bg% 1Folyamatok felsorolása és kezelése ps paranccsal
A ps paranccsal történő felsorolási folyamat az egyik legrégebbi mód a terminál futó folyamatainak megtekintésére. Írja be a ps parancsot annak felsorolásához, hogy mely folyamatok futnak, és mennyi rendszererőforrást használnak, és ki futtatja őket.
[e-mail védett]: ~ $ ps uFELHASZNÁLÓ PID% CPU% MEM VSZ RSS TTY STAT STAT START IDŐ PARANCS
Jim 1562 0.0 0.0 164356 6476 tty2 Ssl + 13:07 0:00 shell
Jim 1564 5.2 0.9 881840 78704 tty2 Sl + 3:07 13:13 dauth
Jim 2919 0.0 0.0 11328 4660 pont / 0 Ss 13:08 0:00 bash
Jim 15604 0.0 0.0 11836 3412 pont / 0 R + 17:19 0:00 ps u
... kivágás…
A felhasználói oszlop a fenti táblázatban mutatja a felhasználó nevét, a PID pedig a folyamat azonosítóját. A PID segítségével megöli vagy elküldi a kill jelet egy folyamatnak. A% CPU a CPU százalékos processzort, a% MEM pedig a véletlen hozzáférésű memória használatát mutatja. Ha meg akar ölni egy folyamatot, írja be.
[e-mail védett]: ~ $ kill [process id (PID)]vagy
[e-mail védett]: ~ $ kill -9 [folyamatazonosító (PID)]A ps aux paranccsal megtekintheti az összes futó folyamatot, és hozzáadhat egy csövet, hogy az rendben legyen.
[e-mail védett]: ~ $ ps aux | KevésbéHa szeretné átrendezni az oszlopokat, megteheti egy zászló hozzáadásával -e az összes folyamat felsorolásához és -o az oszlopok kulcsszavakkal történő megjelölésére a ps parancsban.
[e-mail védett]: ~ $ ps -eo pid, user, uid,% cpu,% mem, vsz, rss, commPID USER UID% CPU% MEM VSZ RSS PARANCS
1 gyök 0 0.1 0.1 167848 11684 rendszerezett
3032 jim 1000 16.5 4.7 21744776 386524 króm
... kivágás…
A ps parancs beállításai.
Az u lehetőség a felhasználók által felsorolt folyamatok listájára szolgál.
[e-mail védett]: ~ $ ps uAz f opció a teljes lista megjelenítésére szolgál.
[e-mail védett]: ~ $ ps fAz x opció a terminál nélküli folyamat információinak megjelenítésére szolgál.
[e-mail védett]: ~ $ ps xAz e lehetőség a kiterjesztett információk megjelenítésére szolgál.
[e-mail védett]: ~ $ ps eegy opció használható az összes folyamat felsorolására a terminállal.
[e-mail védett]: ~ $ ps aA v opció a virtuális memória formátumának megjelenítésére szolgál.
[e-mail védett]: ~ $ ps vJelölések a ps parancshoz.
-A zászló segítségével a rendszer minden folyamatát megtekintheti.
[e-mail védett]: ~ $ ps -e-Az u flag használatával a rootként futó folyamatok láthatók.
[e-mail védett]: ~ $ ps -u-Az f jelölést a folyamatok teljes felsorolásához használják.
[e-mail védett]: ~ $ ps -f-o flag jelöli a folyamatok felsorolását a kívánt oszlopban.
[e-mail védett]: ~ $ ps -opstree
A pstree egy másik parancs a folyamatok felsorolására; fa kimenetben mutatja a kimenetet.
[e-mail védett]: ~ $ pstree
A pstree parancs beállításai
-n a folyamatok PID szerinti rendezésére szolgál.
[e-mail védett]: ~ $ pstree -n-H a folyamatok kiemelésére szolgál.
[e-mail védett]: ~ $ pstree -H [PID][e-mail védett]: ~ $ pstree -H 6457
-a a kimenet megjelenítésére szolgál, beleértve a parancssori argumentumokat is.
[e-mail védett]: ~ $ pstree -a-g a folyamatok csoportazonosító szerinti megjelenítésére szolgál.
[e-mail védett]: ~ $ pstree -g-s a fa vagy meghatározott folyamat vetésére szolgál.
[e-mail védett]: ~ $ pstree -s [PID][e-mail védett]: ~ $ pstree -s 6457
[felhasználónév] a felhasználó tulajdonában lévő folyamatok megjelenítésére szolgál.
[e-mail védett]: ~ $ pstree [felhasználónév][e-mail védett]: ~ $ pstree jim
pgrep
A pgrep paranccsal megtalálhat egy futó folyamatot bizonyos kritériumok alapján. Használhatja a folyamat teljes nevét vagy rövidítését a felhasználónév vagy más attribútumok megkereséséhez, vagy ezek alapján. A pgrep parancs a következő mintát követi.
[e-mail védett]: ~ $ Pgrep [opció] [minta][e-mail védett]: ~ $ pgrep -u jim chrome
A pgrep parancs beállításai
-én kis- és nagybetűk keresésére szolgál
[e-mail védett]: ~ $ Pgrep -i Firefox-d a kimenet határolására szolgál
[e-mail védett]: ~ $ Pgrep -u jim -d:-u a felhasználó tulajdonában lévő folyamat megkeresésére szolgál
[e-mail védett]: ~ $ Pgrep -u jim-a a folyamatok felsorolására szolgál a parancsaik mellett
[e-mail védett]: ~ $ Pgrep -u jim -a-c az illesztési folyamatok számának bemutatására szolgál
[e-mail védett]: ~ $ Pgrep -c -u jim-l a folyamatok és azok nevének felsorolására szolgál
[e-mail védett]: ~ $ Pgrep -u jim -lpkill
A pkill paranccsal bizonyos feltételek alapján jelet küldhet egy futó folyamatnak. Használhatja a folyamat teljes nevét vagy rövidítését a felhasználónév vagy más attribútumok megkereséséhez, vagy ezek alapján. A pgrep parancs a következő mintát követi.
[e-mail védett]: ~ $ Pkill [Opciók] [Minták][e-mail védett]: ~ $ Pkill -9 króm
A pkill parancs beállításai
-jel e jel küldésére szolgál.g. SIGKILL, SIGTERM stb.
[e-mail védett]: ~ $ Pkill --signal SIGTERM vscode-HUP egy folyamat újratöltésére szolgál
[e-mail védett]: ~ $ Pkill -HUP syslogd-f a teljes parancssoron alapuló folyamatok megölésére szolgál.
[e-mail védett]: ~ $ Pkill -f “ping 7.7.7.7 ”-u a felhasználó tulajdonában lévő összes folyamat megölésére szolgál.
[e-mail védett]: ~ $ Pkill -u jim-én a folyamat esetérzékeny megsemmisítésére használják pkill segítségével.
[e-mail védett]: ~ $ Pkill -i Firefox-9 kill jelzés küldésére szolgál.
[e-mail védett]: ~ $ Pkill -9 króm-15 terminál jel küldésére szolgál.
[e-mail védett]: ~ $ Pkill -15 vlclsof (Megnyitott fájlok listája)
Ez a parancssori segédprogram több folyamat által megnyitott fájlok listázására szolgál. És mint tudjuk, az összes UNIX / Linux rendszer mindent fájlként ismer fel, ezért kényelmes az lsof paranccsal felnyitni az összes megnyitott fájlt.
[e-mail védett]: ~ $ lsof
Az lsof parancs fenti táblázatában az FD a fájlleírást, a cwd az aktuális munkakönyvtárat, a txt szövegfájlt, mem jelenti a memóriához leképezett fájlokat, az mmap a memóriához leképezett eszközöket, a REG egy rendes fájlt, a DIR a könyvtárat, az rtd gyökérkönyvtárat jelent. Más lehetőségek is használhatók az lsof paranccsal.
Az lsof parancs beállításai.
-c a megnyitott fájlok folyamatnevük szerint történő felsorolására szolgál.
[e-mail védett]: ~ $ lsof -c króm-u A felhasználó a megnyitott fájlok listázására szolgál.
[e-mail védett]: ~ $ lsof -u jim-én a porton végrehajtó folyamatok felsorolására szolgál.
[e-mail védett]: ~ $ lsof -i+D a megnyitott fájlok könyvtárba történő felsorolására szolgál.
[e-mail védett]: ~ $ lsof + D / home /-o A folyamat a nyitott fájlok listázására szolgál.
[e-mail védett]: ~ $ lsof -p 1342Folyamatok felsorolása és kezelése a felső paranccsal
A top paranccsal valós idejű képet jeleníthet meg a futó rendszerfolyamatokról. Megjeleníti a folyamatokat a CPU használatától függően. Az oszlopot tetszés szerint rendezheti. A legfelső parancs tartalmaz néhány információt a rendszeréről, például arról, hogy mennyi ideig fut a rendszer, vagy hány felhasználó csatlakozik a rendszerhez, és hány folyamat fut, mennyi CPU-t és RAM-ot használ, valamint felsorolja mindegyiket folyamat.
Írja be a top parancsot a futó folyamatok felsorolásához.
[e-mail védett]: ~ $ topFeladatok: összesen 291, 1 futás, 290 alvás, 0 megállás, 0 zombi
% CPU: 2.3us, 0.3sy, 0.0ni, 97.0id, 0.3wa, 0.0hi, 0.0si, 0.0st
MiB Mem: 7880.Összesen 6, 1259.9 ingyenes, 3176 használt, 3444.4 buff / cache
MiB Swap: 2048.0 összesen, 2048.0 ingyenes, 0.0 használt. 4091.8 igénybe Mem
PID USER PR NI VIRT RES SHR S% CPU% MEM IDŐ + PARANCS
3241 jim 20 0 20.7g 33512 10082 S 1.7 4.2 0:54.24 króm
3327 jim 20 0 4698084 249156 86456 S 1.3 3.1 1:42.64 króm
2920 jim 20 0 955400 410868 14372 S 1.0 5.1 7:51.04 króm
3423 jim 20 0 4721584 198500 10106 S 1.0 2.5 0:49.00 króm
3030 jim 20 0 458740 114044 66248 S 0.7 1.4 3:00.47 króm
3937 jim 20 0 4610540 104908 72292 S 0.7 1.3 0:05.91 króm
1603 jim 20 0 825608 67532 40416 S 0.3 0.8 3:13.52 Xorg
1756 jim 20 0 4154828 257056 10060 S 0.3 3.2 5:53.31 gnóm+
1898 jim 20 0 289096 29284 5668 S 0.3 0.4 1:06.28 fusuma
3027 jim 20 0 587580 14304 75960 S 0.3 1.8 9:43.59 króm
3388 jim 20 0 4674192 156208 85032 S 0.3 1.9 0:13.91 króm
3409 jim 20 0 4642180 140020 87304 S 0.3 1.7 0:15.36 króm
3441 jim 20 0 16.5g 156396 89700 S 0.3 1.9 0:25.70 króm
… .lenyisszant… .
Néhány műveletet a legfelső paranccsal is elvégezhet a futó folyamatok megváltoztatásához; itt van az alábbi lista.
- u az „u” megnyomásával megjeleníthet egy folyamatot, amelyet egy bizonyos felhasználó fut.
- M az „M” megnyomásával a RAM használatával lehet rendezni, nem pedig a CPU használatával.
- P a „P” megnyomásával rendezni lehet a CPU felhasználása szerint.
- 1 az „1” megnyomásával válthat a CPU-k között, ha egynél több van.
- R az „R” gomb megnyomásával a kimenetét visszafordíthatja.
- h a „h” gomb megnyomásával segítséget nyújthat, és bármelyik gomb megnyomásával visszatérhet.
Vegye figyelembe, melyik folyamat igényel több memóriát vagy CPU-t. Azok a folyamatok, amelyek több memóriát fogyasztanak, megölhetők, és azok a folyamatok, amelyek több CPU-t fogyasztanak, átnevezhetők, így kevésbé lesznek fontosak a processzor számára.
Ölj meg egy folyamatot a tetején: nyomja meg k és írja meg a megölni kívánt folyamatazonosítót. Ezután írja be a 15-et vagy a 9-et, hogy normálisan vagy azonnal öljön; megölhet egy folyamatot egy kill vagy killall paranccsal is.
Felülvizsgálja a folyamatot a tetején: nyomja meg r és írja meg annak a folyamatnak a PID-jét, amelyet át akar alakítani. Megkéri Önt, hogy írja be a folyamat PID-jét, majd adja meg a kívánt értéket, amelyet ennek a folyamatnak -19 és 20 között kíván adni (-19 azt jelenti, hogy a legnagyobb és 20 a legkevesebbet).
Folyamatok felsorolása és kezelése a System Monitor segítségével
A Linux rendelkezik egy rendszerfigyelő gnome-mal, amely dinamikusabban mutatja be a futó folyamatokat. A rendszerfigyelő elindításához nyomja meg a Windows billentyűt, írja be a rendszerfigyelőt, kattintson az ikonjára, és oszlopokban láthatja a folyamatokat. Ha rájuk kattint jobb egérgombbal, megölheti, leállíthatja vagy újjá teheti a folyamatot.
A futó folyamatok a felhasználói fiókok betűrendben jelennek meg. A folyamatokat bármely mező fejléc szerint rendezheti, például CPU, Memória stb., Csak kattintson rájuk, és rendezni fogják; például kattintson a CPU-ra, hogy megnézze, melyik folyamat fogyasztja a legtöbb CPU-energiát. A folyamatok kezeléséhez kattintson a jobb gombbal rájuk, és válassza ki a folyamathoz használni kívánt opciót. A folyamat kezeléséhez válassza a következő lehetőségeket.
- Tulajdonságok- a folyamathoz kapcsolódó egyéb beállítások megjelenítése.
- Memória térképek- mutassa meg a rendszer memória térképeit, hogy megmutassa, mely könyvtárat és egyéb összetevőket használják a memóriában a folyamathoz.
- Fájl megnyitása- megmutatja, mely fájlokat nyitja meg a folyamat.
- Prioritás módosítása- jelenítsen meg egy oldalsávot, ahonnan átállíthatja a folyamatot az opciókkal a nagyon magastól a nagyon alacsonyig és az egyedi értékig.
- Álljon meg- szünetelteti a folyamatot, amíg nem választja a folytatást.
- Folytatni- újraindítja a szüneteltetett folyamatot.
- Megöl- Az erő azonnal megöl egy folyamatot.
Egy folyamat megölése öléssel és killallal
kill, a killall parancs pedig egy futó folyamat megölésére / befejezésére szolgál. Ezeket a parancsokat érvényes jel küldésére is használhatjuk egy futó folyamatra, például utasíthatunk egy folyamatot a konfigurációs fájlok folytatására, befejezésére, vagy újrak olvasására stb. A jeleket mindkét módon lehet írni számokkal vagy név szerint. Az alábbiakban néhány gyakran használt jelet találunk.
Jelszám Leírás
1. SIGHUP felakasztó jelet észlel a vezérlő terminálon.SIGINT 2 Billentyűzetről tolmácsolva.
SIGQUIT 3 Lépjen ki a billentyűzetről.
SIGILL 4 Illegális utasítások.
SIGTRAP 5 A csapdák felkutatására szolgál.
A SIGABRT 6 a megszakítás jelének megszakítására szolgál (3).
SIGKILL 9 kill jelzés küldésére szolgál.
15. SIGTERM egy végződési jel küldésére szolgál.
SIGCONT 19,18,25 A folyamat folytatására szolgál, ha leállítják.
SIGSTOP 17,19,23 A folyamatok leállítására szolgál.
Különböző SIGCONT és SIGSTOP értékeket használnak a különböző Unix / Linux operációs rendszerek. Részletes információ a 7. típusú man jel-terminálról.
A kill parancs használata jel küldéséhez PID-vel történő feldolgozáshoz.
Jegyezze fel azt a folyamatot, amelyre kill jelet akar küldeni. A folyamatazonosítót (PID) a ps vagy a top parancs segítségével találhatja meg.
PID USER PR NI VIRT RES SHR S% CPU% MEM IDŐ + PARANCS7780 jim 20 0 12596 4364 3460 R 33.3 3.2 13:54:12 top
A legfelső folyamat 33-at emészt fel.A CPU 3% -a. Ha meg akarja ölni ezt a folyamatot a CPU használatának megtakarítása érdekében, íme néhány módszer a folyamat befejezésére a kill paranccsal.
[e-mail védett]: ~ $ kill 7780[e-mail védett]: ~ $ kill -15 7780 vagy $ kill -SIGTERM 7780
[e-mail védett]: ~ $ kill -9 7780 vagy $ kill -SIGKILL 7780
A killall parancs segítségével jeleket küldhet folyamatokhoz név szerint.
A killall paranccsal nem kell keresnie a folyamat azonosítóját; kill jelet küldhet egy folyamatnak névvel, nem pedig folyamat azonosítóval. Több folyamatot is megölhet, mint szeretné, ha nem vigyáz, pl.g., A „killall chrome” megöli az összes króm folyamatot, beleértve azokat is, amelyeket nem akar megölni. Néha hasznos megölni az azonos nevű folyamatokat.
A kill parancshoz hasonlóan a jeleket név vagy szám szerint is beírhatja a killall parancsba. Ölj meg minden futó folyamatot a killall paranccsal; csak a nevét és a küldeni kívánt jelet kell beírnia. e.g., küldj egy kill jelet firefox-ra a killall paranccsal, írd be az alábbi parancsot.
[e-mail védett]: ~ $ killall -9 firefoxvagy
[e-mail védett]: ~ $ killall SIGKILL krómA folyamat prioritásának megváltoztatása kedves és újjáélesztéssel
A Linux rendszerének minden folyamata kiváló értékkel bír, és -19 és 20 között van. Ez döntött arról, hogy melyik folyamat kap nagyobb CPU-hozzáférést a rendszerben. Minél alacsonyabb a nice értéke, annál nagyobb hozzáféréssel bír egy folyamat a CPU folyamathoz. A -16 szép értékeknek több hozzáférésük van a CPU-hoz, mint 18 szép értékhez. Csak egy root jogosultsággal rendelkező felhasználó rendelhet negatív szép értéket. Egy normál felhasználó csak 0 és 19 között rendelheti hozzá a „nice” értékét. Egy rendes felhasználó csak magasabb szép értékeket rendelhet hozzá és saját folyamataihoz. A root felhasználó tetszőleges értéket állíthat be bármilyen folyamathoz.
Ha a szép érték hozzárendelésével egy olyan folyamatot szeretne hozzáférhetőbbé tenni a CPU használatához, írja be a következő parancsot.
[e-mail védett]: ~ $ nice +3 krómÉs újjáéled a folyamatot
[e-mail védett]: ~ $ renice -n -6 3612Következtetés
Itt található az útmutató a Linux rendszer kezeléséhez ps, top, lsof, pstree, pkilll, kill, killall, nice, renice stb. Egyes folyamatok felemésztik a CPU használat és a RAM mennyiségét; kezelésük ismerete növeli a rendszer sebességét és teljesítményét, és jobb környezetet biztosít a kívánt folyamatok hatékonyabb futtatásához.