Linux tilbyr en rekke verktøy for å undersøke dine løpende prosesser. Med applikasjonene som er vist nedenfor, kan du finne ut hvilke programmer som spiser alt minne og hvilke filer som er knyttet til de rogue-programmene. Eller du kan bare få en global oversikt over hvordan systemet ditt fungerer.

Uavhengig av ditt spesifikke interessepunkt, vil denne opplæringen gi deg et utgangspunkt på den reisen.

1. topp

Kanskje den mest kjente service / prosesslederen i Linux-verktøyet er topp. Navnet er et akronym for "Tabell av prosesser." Linux-versjonen (andre har blitt skrevet for Unix, Solaris, etc.) er vert med procps-pakken, en samling av verktøy som du kan ta tak i lenken ovenfor.

Du kan se på dette skjermbildet at toppen gir mye informasjon samtidig. Øverst på skjermen kan du se hvor lenge datamaskinen har kjørt, den nåværende CPU-bruken og gjeldende minnebruk. Disse verdiene gjelder hele systemet - ikke bare de enkelte programmene som vises under denne teksten.

I kontrast kan du se individuell CPU og minnebruk for ulike løpende prosesser i hoveddelen av skjermen. Skjermbildet her viser bare tjenestene som "root" -brukeren kjører, og "systemd" kommer først ettersom forbrukeren bruker mest minne på bare 0, 3 prosent.

Du kan kjøre topp i kommandolinjen med bare top å skrive en interaktiv visning av alle løpende prosesser for alle brukere. Running top U user vil skrive inn samme type miljø, men det vil vise prosessene for den bestemte brukeren.

Du kan også enkelt utføre en pidof process å kjøre pidof process å gå inn i utgangen med top -p pid . For eksempel, pid firefox på denne maskinen returnerer "2886, " så kjører top -p 2886 viser bare prosessens informasjon på skjermen.

2. iotop

Noen verktøy forsøker å pare ned hva toppen tilbyr. Et slikt program, iotop, gjør akkurat det. Dens utgang, som du kan se her, er mye enklere enn toppens deluge.

Iotop avslører inngang / utgang av en løpende prosess. Øverst på skjermen viser den disklest og diskskriving, i byte, før det avsløres ID for hver prosess, og den enkelte leser, skriver og I / O de bruker.

Du kan, som med toppen, velge iotops utdata ved å angi parametere som iotop -p pid å overvåke en enkelt prosess eller iotop -u user å overvåke en enkelt brukeres kjørende prosesser.

3. Monit

Fra begynnelsen prøver Monit å være mer spesifikk, men likevel lett å bruke. Den kjører som en demon og vil følge prosesser og tjenester som du angir i konfigurasjonsfilen.

Å starte deamonen fra kommandolinjen ser ikke ut som mye.

For å få mest mulig ut av Monits evner, er det en god praksis å aktivere Monit å løpe fra oppstart. Ved hjelp av systemd, vil systemctl enable monit kommandoen fullføre oppgaven.

Du kan deretter redigere Monits konfigurasjonsfil (plassert på "/ etc / monitrc") for å følge og endre bestemte prosesser fra det andre de begynner å kjøre. Sjekk ut dette alternativet i config-filen nedenfor.

Selv om linjene er kommentert, kan du se at denne serien av kommandoer ville følge Apache-prosessen, start eller stopp den hvis nødvendig, og opprett varsler når noe går galt. Config-filen er ment å være lett å lese og redigere; Den bruker nøkkelord som "start", "if", "da" og "innenfor" for å fullføre oppgaver.

Relatert : Hva er GREP i Linux og hvordan bruker du det?

4. lsof

Hvis du er nysgjerrig på hvilke filer en prosess har åpnet når den kjører, bruk lsof. Kjører kommandoen lsof vil som standard liste alle filer åpnet av hver prosess som kjører på systemet. Derfor kan det være nyttig å være mer spesifikk med spørringen din.

Du kan grave inn i det spesifikke navnet på en løpende prosess, for eksempel Firefox, ved å røre lsofs utgang til grep, som vil søke etter en streng du angir.

Så hvis du vil finne ut om Firefox driver et FLAC lydbibliotek, vil en kommando som følgende være nyttig:

 lsof | grep firefox | grep -i libflac 

Det reduserer produksjonen fra tusenvis av linjer til omtrent tjue.

En versjon av den kommandoen produserer følgende.

Hva du kan gjenskape her, starter først lsof, og søker etter "firefox" som en streng i lsofs utgang, og søker gjennom disse linjene med "firefox" i dem for strengen "libflac." Grep bruker -i flagget i det siste kommandoen for å ignorere store og små bokstaver i søket.

Den endelige kommandoen grep -i gdbus brukes her for å gi et eksempel på en linje. Det plukker plutselig ut en linje med utdata som viser "gdbus" som oppgavekommandoen lsof identifisert.

Lsof viser kommandoen som er tilknyttet en løpeprosess, dens prosess-ID, oppgavekommandoen knyttet til filen prosessen kjører, og navnet på filen knyttet til løpeprosessen, i tillegg til noen andre data.

5. ps_mem

Den enkleste applikasjonen i denne listen, ps_mem, viser minnesbruken av kjørende prosesser på et system. Et tørr løp av ps_mem i kommandolinjen vil vise en liste over alle løpende prosesser og deres individuelle minneforbruk.

For å undersøke en bestemt prosess, kan du vise sin ID - husk å bruke pidof process å få den informasjonen - i ps_mem -p process med ps_mem -p process . Sjekk ut denne utgangen for referanse:

Ps_mem er nyttig hvis du har et program du tror bruker for mye minne. Du kan bruke den som et frittstående verktøy eller sammen med andre for å bekrefte funnene sine.

Konklusjon

Ikke la programmene på datamaskinen gå på avvei. Hold dem i sjakk med en rask titt på toppen, iotop eller ps_mem, og undersøk videre med Monit og lsof.

Disse er kraftige verktøy som har mange flere alternativer tilgjengelig på deres mantsider, så vær sikker på at du også leser dokumentasjonen når du undersøker et plagsomt problem.

Bilde kreditt: Xfce til redning!