Procesi
Pokretanje instance programa naziva se proces. U Linuxu se ID procesa (PID) koristi za predstavljanje procesa koji je karakterističan za svaki proces. Postoje dvije vrste procesa,
- Pozadinski procesi
- Procesi u prvom planu
Pozadinski procesi
Pozadinski procesi započinju u terminalu i pokreću ih sami. Ako postupak pokrenete u terminalu, njegov će se izlaz prikazati u prozoru terminala i možete s njim komunicirati, ali ako ne trebate interakciju s procesom, možete ga pokrenuti u pozadini. Ako želite pokrenuti postupak u pozadini, samo dodajte znak “&” na kraju naredbe i on će se pokrenuti u pozadini; uštedjet ćete vrijeme i moći ćete pokrenuti drugi postupak. Za popis procesa koji se izvode u pozadini upotrijebite naredbu 'poslovi.'U pozadini će prikazati sve pokrenute procese.
Na primjer, nadogradnja je dugotrajan proces u Linuxu. Potrebno je previše vremena, a ako želite raditi druge stvari dok se sustav nadograđuje, upotrijebite pozadinsku naredbu.
[zaštićena e-poštom]: ~ $ sudo apt-get upgrade -y &Pokrenut će se u pozadini. A u međuvremenu možete komunicirati s drugim programima. Upisom ove naredbe možete provjeriti koliko se i koji procesi rade u pozadini.
[e-pošta zaštićena]: ~ $ poslova[1] + Pokretanje sudo apt-get upgrade -y &
Procesi u prvom planu
Svi procesi koje pokrećemo u terminalu, prema zadanim postavkama, izvode se kao procesi u prvom planu. Njima možemo upravljati pomoću naredbi u prednjem i pozadinskom planu.
Bilo koji pozadinski postupak naveden u poslovima možete staviti u prvi plan upisivanjem naredbe 'fg' nakon koje slijedi broj pozadinskog procesa.
[e-pošta zaštićena]: ~ $ fg% 1sudo apt-get upgrade -y
A ako ovaj postupak želite odvesti u pozadinu, upišite ovu naredbu.
[e-pošta zaštićena]: ~ $ bg% 1Popis i upravljanje procesima pomoću naredbe ps
Proces uvrštavanja s naredbom ps jedan je od najstarijih načina pregleda terminala koji se izvode. Upišite naredbu ps da biste popisali koji se procesi izvode i koliko sistemskih resursa koriste i tko ih izvodi.
[e-pošta zaštićena]: ~ $ ps uKORISNIK PID% CPU% MEM VSZ RSS TTY STAT START TIME COMMAND
Jim 1562 0.0 0.0 164356 6476 tty2 Ssl + 13:07 0:00 ljuska
Jim 1564. 5.2 0.9 881840 78704 tty2 Sl + 3:07 13:13 dauth
Jim 2919 0.0 0.0 11328 4660 pts / 0 Ss 13:08 0:00 bash
Jim 15604 0.0 0.0 11836 3412 bod / 0 R + 17:19 0:00 ps u
... odreži ..
Stupac korisnik prikazuje korisničko ime u gornjoj tablici, a PID ID procesa. PID možete koristiti za ubijanje ili slanje ubojnog signala procesu. % CPU prikazuje postotak procesora CPU, a% MEM prikazuje upotrebu memorije s slučajnim pristupom. Da biste ubili postupak, upišite.
[zaštićena e-poštom]: ~ $ kill [id procesa (PID)]ili
[zaštićena e-poštom]: ~ $ kill -9 [ID procesa (PID)]Upotrijebite ps aux naredbu da biste vidjeli sve pokrenute procese i dodajte cijev da biste je vidjeli redom.
[e-pošta zaštićena]: ~ $ ps aux | manjeAko želite preurediti stupce, to možete učiniti dodavanjem zastavice -e za popis svih procesa i -o za označavanje stupaca ključnim riječima u naredbi ps.
[e-pošta zaštićena]: ~ $ ps -eo pid, korisnik, uid,% cpu,% mem, vsz, rss, commPID KORISNIK UID% CPU% MEM VSZ RSS naredba
1 korijen 0 0.1 0.1 167848 11684 sustavno
3032 jim 1000 16.5 4.7 21744776 386524 krom
... odreži ..
Opcije za naredbu ps.
opcija u koristi se za navođenje procesa od strane korisnika.
[e-pošta zaštićena]: ~ $ ps uopcija f koristi se za prikaz cijelog popisa.
[e-pošta zaštićena]: ~ $ ps fOpcija x koristi se za prikaz informacija o procesu bez terminala.
[e-pošta zaštićena]: ~ $ ps xOpcija se koristi za prikaz proširenih informacija.
[e-pošta zaštićena]: ~ $ ps eopcija se koristi za popis svih procesa s terminalom.
[e-pošta zaštićena]: ~ $ ps av opcija se koristi za prikaz formata virtualne memorije.
[e-pošta zaštićena]: ~ $ ps vZastave za naredbu ps.
-Oznaka se koristi za prikaz svakog procesa u sustavu.
[e-pošta zaštićena]: ~ $ ps -e-zastava u koristi se za prikaz procesa koji se izvode kao root.
[e-pošta zaštićena]: ~ $ ps -u-zastava f koristi se za cjelovit popis procesa.
[e-pošta zaštićena]: ~ $ ps -f-o zastava se koristi za popis procesa u željenom stupcu.
[e-pošta zaštićena]: ~ $ ps -opstree
pstree je još jedna naredba za popis procesa; prikazuje izlaz u obliku stabla.
[zaštićena e-poštom]: ~ $ pstree
Opcije za naredbu pstree
-n koristi se za procese sortiranja po PID-u.
[zaštićena e-poštom]: ~ $ pstree -n-H koristi se za isticanje procesa.
[e-pošta zaštićena]: ~ $ pstree -H [PID][e-pošta zaštićena]: ~ $ pstree -H 6457
-a koristi se za prikaz rezultata, uključujući argumente naredbenog retka.
[zaštićena e-poštom]: ~ $ pstree -a-g koristi se za prikazivanje procesa prema ID-u grupe.
[e-pošta zaštićena]: ~ $ pstree -g-s koristi se za sjetvu stabla ili određeni postupak.
[zaštićena e-poštom]: ~ $ pstree -s [PID][e-pošta zaštićena]: ~ $ pstree -s 6457
[Korisničko ime] koristi se za prikazivanje procesa u vlasništvu korisnika.
[e-pošta zaštićena]: ~ $ pstree [userName][e-pošta zaštićena]: ~ $ pstree jim
pgrep
Pomoću naredbe pgrep možete pronaći pokrenut postupak zasnovan na određenim kriterijima. Puno ime ili kraticu postupka možete koristiti za pronalaženje ili prema korisničkom imenu ili drugim atributima. naredba pgrep slijedi sljedeći obrazac.
[e-pošta zaštićena]: ~ $ Pgrep [opcija] [uzorak][e-pošta zaštićena]: ~ $ pgrep -u jim chrome
Opcije za naredbu pgrep
-ja koristi se za pretraživanje neosjetljivih na velika i mala slova
[zaštićena e-poštom]: ~ $ Pgrep -i firefox-d koristi se za ograničavanje izlaza
[e-pošta zaštićena]: ~ $ Pgrep -u jim -d:-u koristi se za pronalaženje procesa u vlasništvu korisnika
[e-pošta zaštićena]: ~ $ Pgrep -u jim-a koristi se za navođenje procesa uz njihove naredbe
[e-pošta zaštićena]: ~ $ Pgrep -u jim -a-c koristi se za prikaz broja procesa podudaranja
[e-pošta zaštićena]: ~ $ Pgrep -c -u jim-l koristi se za navođenje procesa i njihovog naziva
[e-pošta zaštićena]: ~ $ Pgrep -u jim -lpkill
Pomoću naredbe pkill možete poslati signal tekućem procesu na temelju određenih kriterija. Puno ime ili kraticu postupka možete koristiti za pronalaženje ili prema korisničkom imenu ili drugim atributima. naredba pgrep slijedi sljedeći obrazac.
[e-pošta zaštićena]: ~ $ Pkill [Opcije] [Obrasci][zaštićena e-poštom]: ~ $ Pkill -9 krom
Opcije za naredbu pkill
-signal koristi se za slanje signala e.g. SIGKILL, SIGTERM itd.
[e-pošta zaštićena]: ~ $ Pkill --signal SIGTERM vscode-HUP koristi se za ponovno učitavanje procesa
[zaštićena e-poštom]: ~ $ Pkill -HUP syslogd-f koristi se za procese ubijanja na temelju potpune naredbene crte.
[e-pošta zaštićena]: ~ $ Pkill -f “ping 7.7.7.7 "-u koristi se za ubijanje svih procesa u vlasništvu korisnika.
[e-pošta zaštićena]: ~ $ Pkill -u jim-ja koristi se za ubijanje postupka nebitnim za slučaj pkill-om.
[zaštićena e-poštom]: ~ $ Pkill -i firefox-9 koristi se za slanje signala ubojstva.
[zaštićena e-poštom]: ~ $ Pkill -9 krom-15 koristi se za slanje završnog signala.
[zaštićena e-poštom]: ~ $ Pkill -15 vlclsof (Popis otvorenih datoteka)
Ovaj uslužni program naredbenog retka koristi se za popisivanje datoteka otvorenih u nekoliko procesa. A kao što znamo, svi UNIX / Linux sustavi prepoznaju sve kao datoteku, pa je prikladno koristiti naredbu lsof za popis svih otvorenih datoteka.
[zaštićena e-poštom]: ~ $ lsof
U gornjoj tablici naredbe lsof, FD predstavlja opis datoteke, cwd predstavlja trenutni radni direktorij, txt znači tekstualnu datoteku, mem znači memorijski preslikane datoteke, mmap znači memorijski preslikani uređaji, REG predstavlja redovitu datoteku, DIR predstavlja direktorij, rtd znači korijenski direktorij. Postoje i druge opcije koje možete koristiti s naredbom lsof.
Opcije za naredbu lsof.
-c koristi se za popis otvorenih datoteka prema njihovom nazivu procesa.
[e-pošta zaštićena]: ~ $ lsof -c krom-u koristi se za popis otvorenih datoteka od strane korisnika.
[e-pošta zaštićena]: ~ $ lsof -u jim-ja koristi se za popis procesa koji se izvršavaju na portu.
[zaštićena e-poštom]: ~ $ lsof -i+D koristi se za popis otvorenih datoteka u direktoriju.
[e-pošta zaštićena]: ~ $ lsof + D / home /-str koristi se za popis otvorenih datoteka kroz postupak.
[e-pošta zaštićena]: ~ $ lsof -p 1342Popis i upravljanje procesom s gornjom naredbom
Pomoću naredbe top možete u stvarnom vremenu prikazati prikaz izvršenih sistemskih procesa. Prikazuje procese ovisno o korištenju procesora. Stupac možete sortirati prema vama. Naredba top također pruža neke informacije o vašem sustavu, na primjer, koliko dugo sustav radi, ili koliko je korisnika priključeno na sustav i koliko je procesa pokrenuto, koliko se CPU i RAM koristi, te popis svih postupak.
Upišite naredbu vrh da biste popisali pokrenute procese.
[e-pošta zaštićena]: ~ $ vrhZadaci: ukupno 291, 1 trčanje, 290 spavanje, 0 zaustavljenih, 0 zombija
% CPU-a: 2.3us, 0.3s, 0.0ni, 97.0id, 0.3wa, 0.0hi, 0.0si, 0.0st
MiB mem: 7880.Ukupno 6, 1259.9 besplatno, 3176 korišteno, 3444.4 buff / predmemorija
Zamjena MiB-a: 2048.Ukupno 0, 2048.0 besplatno, 0.0 korišteno. 4091.8 koristi Mem
PID KORISNIK PR NI VIRT RES SHR S% CPU% MEM TIME + COMMAND
3241 jim 20 0 20.7g 33512 10082 S 1.7 4.2 0:54.24 krom
3327 jim 20 0 4698084 249156 86456 S 1.3 3.1 1:42.64 krom
2920 jim 20 0 955400 410868 14372 S 1.0 5.1 7:51.04 krom
3423 jim 20 0 4721584 198500 10106 S 1.0 2.5 0:49.00 krom
3030 jim 20 0 458740 114044 66248 S 0.7 1.4 3:00.47 krom
3937 jim 20 0 4610540 104908 72292 S 0.7 1.3 0:05.91 krom
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 gnom+
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 krom
3388 jim 20 0 4674192 156208 85032 S 0.3 1.9 0:13.91 krom
3409 jim 20 0 4642180 140020 87304 S 0.3 1.7 0:15.36 krom
3441 jim 20 0 16.5g 156396 89700 S 0.3 1.9 0:25.70 krom
.. .odrezati… .
Također možete izvršiti neke radnje s naredbom top da biste izvršili promjene u pokrenutim procesima; ovdje je popis u nastavku.
- u pritiskom na „u“ možete prikazati postupak koji izvodi određeni korisnik.
- M pritiskom na "M" možete se dogovoriti prema korištenju RAM-a, a ne prema CPU-u.
- Str pritiskom na “P” možete sortirati prema korištenju procesora.
- 1 pritiskom na “1” za prebacivanje između upotrebe CPU-a ako ih ima više.
- R pritiskom na "R" možete napraviti sortiranje rezultata obrnuto.
- h pritiskom na „h“ možete ići u pomoć i pritisnuti bilo koju tipku za povratak.
Imajte na umu koji postupak troši više memorije ili CPU-a. Oni procesi koji troše više memorije mogu se ubiti, a oni procesi koji troše više CPU-a mogu se izmijeniti kako bi im se dala manja važnost za procesor.
Ubijte postupak na vrhu: Pritisnite k i napišite ID procesa koji želite ubiti. Zatim unesite 15 ili 9 da biste ubili normalno ili odmah; postupak također možete ubiti naredbom kill ili killall.
Renice postupak na vrhu: Pritisnite r i napišite PID procesa za koji želite da budete izmijenjeni. Tražit će od vas da upišete PID procesa, a zatim vrijednost zapisivanja koju želite dati ovom procesu između -19 i 20 (-19 znači najvišu važnost, a 20 znači najmanju važnost).
Popis i upravljanje procesima pomoću System Monitor-a
Linux ima gnome za nadzor sustava koji dinamičnije prikazuje pokrenute procese. Da biste pokrenuli sistemski monitor, pritisnite tipku Windows i upišite sistemski monitor, kliknite njegovu ikonu i možete vidjeti procese u stupcima. Klikom desne tipke miša na njih možete ubiti, zaustaviti ili ponovo pokrenuti postupak.
Pokrenuti procesi prikazuju se s korisničkim računima po abecednom redu. Procese možete sortirati prema bilo kojem zaglavlju polja poput CPU-a, memorije itd., samo kliknite na njih i oni će biti poredani; na primjer, kliknite CPU da biste vidjeli koji proces troši najviše procesorske snage. Da biste upravljali procesima, kliknite ih desnom tipkom miša i odaberite opciju koju želite učiniti s postupkom. Za upravljanje postupkom odaberite sljedeće opcije.
- Svojstva- prikaži ostale postavke povezane s postupkom.
- Karte memorije- prikaži mape sistemske memorije kako bi se pokazalo koja se knjižnica i druge komponente koriste u memoriji za taj proces.
- Otvorena datoteka- pokazuje koje se datoteke otvaraju postupkom.
- Promijenite prioritet- prikazati bočnu traku s koje možete ponovno pokrenuti postupak s opcijama od vrlo visoke do vrlo niske i prilagođene.
- Stop- zaustavlja postupak dok ne odaberete nastavak.
- Nastaviti- ponovno pokreće zaustavljeni postupak.
- Ubiti- Sila trenutno ubija proces.
Ubijanje procesa s kill i killall
kill, a naredba killall koristi se za ubijanje / završavanje aktivnog postupka. Te se naredbe također mogu koristiti za slanje valjanog signala u tekući proces, kao što je recite procesu da nastavi, završi ili ponovno pročita konfiguracijske datoteke, itd. Signali se mogu pisati na oba načina brojevima ili imenom. Slijede neki od najčešće korištenih signala.
Opis broja signala
SIGHUP 1 Otkriva signal prekida na upravljačkom terminalu.ZNAK 2 Protumačeno s tipkovnice.
SIGQUIT 3 Prekinite s tipkovnice.
SIGILL 4 Nezakonite upute.
SIGTRAP 5 Koristi se za trasiranje trape.
SIGABRT 6 koristi se za prekidanje signala iz prekida (3).
SIGKILL 9 Koristi se za slanje signala za ubojstvo.
SIGTERM 15 Koristi se za slanje završnog signala.
SIGCONT 19,18,25 Koristi se za nastavak postupka ako se zaustavi.
SIGSTOP 17,19,23 Koristi se za zaustavljanje procesa.
Različite vrijednosti SIGCONT i SIGSTOP koriste se u različitim Unix / Linux operativnim sustavima. Za detaljne informacije o signalnom terminalu tipa man 7.
Korištenje naredbe kill za slanje signala za obradu putem PID-a.
Zabilježite postupak kojem želite poslati signal za ubojstvo. ID procesa (PID) možete pronaći pomoću ps-a ili gornje naredbe.
PID KORISNIK PR NI VIRT RES SHR S% CPU% MEM TIME + COMMAND7780 jim 20 0 12596 4364 3460 R 33.3 3.2 13:54:12 vrh
Vrhunski postupak troši 33.3% CPU-a. Ako želite ubiti ovaj postupak kako biste uštedjeli upotrebu CPU-a, evo nekoliko načina kako taj proces završiti naredbom kill.
[zaštićena e-poštom]: ~ $ kill 7780[zaštićena e-poštom]: ~ $ kill -15 7780 ili $ kill -SIGTERM 7780
[zaštićena e-poštom]: ~ $ kill -9 7780 ili $ kill -SIGKILL 7780
Korištenje naredbe killall za slanje signala procesu po imenu.
Pomoću naredbe killall ne morate tražiti ID procesa; možete poslati signal za ubijanje procesu imenom, a ne ID-om procesa. Također može ubiti više procesa nego što želite ako niste oprezni, npr.g., "Killall chrome" ubit će sve procese kroma, uključujući one koje ne želite ubiti. Ponekad je korisno ubiti istoimene procese.
Kao i naredba kill, u naredbu killall možete upisivati signale imenom ili brojem. Ubijte bilo koji pokrenut postupak naredbom killall; trebate samo upisati njegovo ime i signal koji želite poslati. e.g., poslati signal za ubojstvo firefox pomoću naredbe killall, napišite naredbu u nastavku.
[zaštićena e-poštom]: ~ $ killall -9 firefoxili
[e-pošta zaštićena]: ~ $ killall SIGKILL kromPromjena prioriteta procesa s nice i renice
Svaki proces na vašem Linux sustavu ima izvrsnu vrijednost i kreće se između -19 i 20. Odlučio je koji će postupak dobiti više CPU pristupa u sustavu. Što je vrijednost nice lijepog niža, proces ima više pristupa procesorskom procesoru. Poput -16 lijepih vrijednosti imaju više pristupa CPU nego 18 lijepih vrijednosti. Samo korisnik s root privilegijama može dodijeliti negativnu vrijednost nice. Uobičajeni korisnik može dodijeliti vrijednost "lijepo" samo između 0 i 19. Redoviti korisnik može dodijeliti samo veće lijepe vrijednosti i to na vlastitim procesima. Korijenski korisnik može postaviti bilo koju lijepu vrijednost bilo kojem procesu.
Ako želite dodijeliti lijepu vrijednost procesu dati pristupačniji za upotrebu procesora, upišite sljedeću naredbu.
[zaštićen e-poštom]: ~ $ lijepo +3 kromI ponovno pokrenite postupak
[e-pošta zaštićena]: ~ $ renice -n -6 3612Zaključak
Evo vodiča za upravljanje vašim Linux sustavom s ps, top, lsof, pstree, pkilll, kill, killall, nice, renice itd. Neki procesi troše većinu upotrebe procesora i RAM-a; znanje kako njima upravljati povećava brzinu i performanse vašeg sustava i daje vam bolje okruženje za učinkovitije pokretanje bilo kojih procesa.