Giunsa Pag-monitor ang Paggamit sa Sistema, Pagkawala ug Pag-troubleshoot sa mga Server sa Linux - Bahin 9


Bisan kung ang Linux kasaligan kaayo, ang maalamon nga mga tagdumala sa sistema kinahanglan mangita usa ka paagi aron mabantayan ang pamatasan ug paggamit sa sistema sa tanan nga oras. Ang pagsiguro sa usa ka oras sa pagtrabaho nga hapit sa 100% kutob sa mahimo ug ang pagkaanaa sa mga kahinguhaan mga kritikal nga panginahanglanon sa daghang mga palibot. Ang pagsusi sa nangagi ug karon nga kahimtang sa sistema magtugot kanato sa pagtan-aw ug lagmit nga malikayan ang posible nga mga isyu.

Pagpaila sa Linux Foundation Certification Program

Niini nga artikulo magpresentar kami og usa ka lista sa pipila ka mga himan nga anaa sa kadaghanan sa upstream nga mga distribusyon aron masusi ang kahimtang sa sistema, pag-analisar sa mga outage, ug pagsulbad sa nagpadayon nga mga isyu. Sa partikular, sa daghang mga magamit nga datos, magpunting kami sa CPU, espasyo sa pagtipig ug paggamit sa memorya, sukaranan nga pagdumala sa proseso, ug pagtuki sa log.

Paggamit sa Luna sa Pagtipig

Adunay 2 ka iladong mga sugo sa Linux nga gigamit sa pag-inspeksyon sa paggamit sa storage space: df ug du.

Ang una, df (nga nagpasabot sa disk free), kasagarang gigamit sa pagreport sa kinatibuk-ang paggamit sa espasyo sa disk pinaagi sa file system.

Kung walay mga kapilian, ang df nagtaho sa paggamit sa espasyo sa disk sa mga bytes. Uban sa -h bandera kini magpakita sa samang impormasyon gamit ang MB o GB hinuon. Timan-i nga kini nga taho naglakip usab sa kinatibuk-ang gidak-on sa matag file system (sa 1-K blocks), ang libre ug anaa nga mga luna, ug ang mount point sa matag storage device.

# df
# df -h

Nindot kana - apan adunay lain nga limitasyon nga mahimo’g dili magamit ang usa ka file system, ug nahutdan na ang mga inode. Ang tanan nga mga file sa usa ka file system gimapa sa usa ka inode nga adunay sulud nga metadata.

# df -hTi

makita nimo ang gidaghanon sa gigamit ug magamit nga inode:

Sumala sa hulagway sa ibabaw, adunay 146 nga gigamit nga mga inode (1%) sa /home, nga nagpasabot nga makahimo ka gihapon og 226K nga mga file sa maong file system.

Timan-i nga mahimo ka mahurot sa storage space sa dili pa mahurot ang mga inode, ug vice-versa. Tungod niana nga hinungdan, kinahanglan nimo nga bantayan dili lamang ang paggamit sa espasyo sa pagtipig apan usab ang gidaghanon sa mga inode nga gigamit sa file system.

Gamita ang mosunod nga mga sugo sa pagpangita og walay sulod nga mga file o mga direktoryo (nga nag-okupar sa 0B) nga naggamit sa mga inode nga walay rason:

# find  /home -type f -empty
# find  /home -type d -empty

Usab, mahimo nimong idugang ang -delete nga bandera sa katapusan sa matag sugo kon gusto nimo nga papason kadtong walay sulod nga mga file ug mga direktoryo:

# find  /home -type f -empty --delete
# find  /home -type f -empty

Ang miaging pamaagi nagtangtang sa 4 nga mga file. Atong susihon pag-usab ang gidaghanon sa gigamit/magamit nga mga node pag-usab sa /home:

# df -hTi | grep home

Sama sa imong makita, adunay 142 nga gigamit nga mga inode karon (4 mas ubos kaysa kaniadto).

Kung ang paggamit sa usa ka sistema sa file labaw sa gitakda nang daan nga porsyento, mahimo nimong gamiton ang du (mubo sa paggamit sa disk) aron mahibal-an kung unsa ang mga file nga nag-okupar sa labing daghang espasyo.

Ang pananglitan gihatag alang sa /var, nga ingon sa imong makita sa unang hulagway sa ibabaw, gigamit sa 67%.

# du -sch /var/*

Mubo nga sulat: Nga mahimo ka magbalhin sa bisan unsang mga subdirektoryo sa ibabaw aron mahibal-an kung unsa gyud ang naa niini ug kung pila ang giokupar sa matag butang. Mahimo nimong gamiton kana nga impormasyon sa pagtangtang sa pipila ka mga file kung wala kinahanglana o palapdan ang gidak-on sa lohikal nga volume kung gikinahanglan.

Basaha Usab

  1. 12 Mapuslanon nga \df” nga mga Sugo sa Pagsusi sa Disk Space
  2. 10 Mapuslanon nga du nga mga Sugo sa pagpangita sa Disk Usage sa mga File ug Direktoryo

Memorya ug Paggamit sa CPU

Ang klasiko nga himan sa Linux nga gigamit sa paghimo sa usa ka kinatibuk-ang pagsusi sa paggamit sa CPU/panumduman ug pagdumala sa proseso mao ang htop, apan nakapahimutang na ako sa taas tungod kay gi-install kini nga wala sa kahon sa bisan unsang pag-apod-apod sa Linux.

Aron magsugod sa ibabaw, i-type lang ang mosunod nga command sa imong command line, ug i-hit Enter.

# top

Atong susihon ang usa ka tipikal nga top output:

Sa mga laray 1 hangtod 5 ang mosunod nga impormasyon gipakita:

1. Ang kasamtangan nga oras (8:41:32 pm) ug uptime (7 ka oras ug 41 ka minuto). Usa ra ka user ang naka-log on sa sistema, ug ang average nga load sa katapusang 1, 5, ug 15 ka minuto, matag usa. Ang 0.00, 0.01, ug 0.05 nagpaila nga sa mga agwat sa oras, ang sistema wala’y trabaho sa 0% sa oras (0.00: wala’y mga proseso nga naghulat sa CPU), pagkahuman na-overload kini sa 1% (0.01: usa ka average nga 0.01 nga proseso. naghulat sa CPU) ug 5% (0.05). Kung ubos sa 0 ug mas gamay ang numero (0.65, pananglitan), ang sistema wala’y mahimo sa 35% sa miaging 1, 5, o 15 minuto, depende kung diin makita ang 0.65.

2. Sa pagkakaron adunay 121 ka proseso nga nagdagan (makita nimo ang kompletong listahan sa 6). 1 ra kanila ang nagdagan (ibabaw niini nga kaso, ingon sa imong makita sa %CPU nga kolum) ug ang nahabilin nga 120 naghulat sa luyo apan \natulog ug magpabilin sa kana nga kahimtang hangtod nga among tawagan sila. Mahimo nimong pamatud-an kini pinaagi sa pag-abli sa usa ka mysql prompt ug pag-execute sa usa ka magtiayon nga mga pangutana.Mamatikdan nimo kung giunsa ang pagtaas sa gidaghanon sa mga proseso nga nagdagan.

Sa laing paagi, mahimo nimong ablihan ang usa ka web browser ug mag-navigate sa bisan unsang gihatag nga panid nga giserbisyuhan sa Apache ug makuha nimo ang parehas nga sangputanan. Siyempre, kini nga mga pananglitan nagtuo nga ang duha nga mga serbisyo gi-install sa imong server.

3. us (oras nga nagpadagan sa mga proseso sa tiggamit nga wala mabag-o nga prayoridad), sy (oras nga nagpadagan sa mga proseso sa kernel), ni (oras nga nagpadagan sa mga proseso sa tiggamit nga adunay giusab nga prayoridad), wa (oras nga naghulat sa pagkompleto sa I/O), hi (oras nga gigugol sa pag-alagad sa hardware interrupts), si (oras nga gigugol sa pag-alagad sa software interrupts), st (oras nga gikawat gikan sa kasamtangan nga vm sa hypervisor - lamang sa virtualized palibot).

4. Paggamit sa pisikal nga memorya.

5. Ibaylo ang paggamit sa luna.

Aron masusi ang memorya sa RAM ug paggamit sa swap mahimo usab nimong gamiton ang libre nga sugo.

# free

Siyempre mahimo usab nimong gamiton ang -m (MB) o -g (GB) switch aron ipakita ang parehas nga impormasyon sa porma nga mabasa sa tawo:

# free -m

Sa bisan unsang paagi, kinahanglan nimo nga mahibal-an ang kamatuoran nga ang kernel adunay daghang memorya kutob sa mahimo ug magamit kini sa mga proseso kung gihangyo nila kini. Ilabi na, ang -/+ buffers/cache nga linya nagpakita sa aktuwal nga mga bili human niini nga I/O cache gikonsiderar.

Sa laing pagkasulti, ang gidaghanon sa memorya nga gigamit sa mga proseso ug ang kantidad nga magamit sa ubang mga proseso (sa kini nga kaso, 232 MB gigamit ug 270 MB anaa, matag usa). Kung ang mga proseso nanginahanglan niini nga panumduman, ang kernel awtomatiko nga makunhuran ang gidak-on sa cache sa I/O.

Basaha Usab: 10 Mapuslanon nga libre nga Sugo sa Pagsusi sa Paggamit sa Memorya sa Linux

Pagsusi sa mga Proseso

Sa bisan unsang oras, adunay daghang mga proseso nga nagdagan sa among sistema sa Linux. Adunay duha ka himan nga among gamiton sa pagmonitor pag-ayo sa mga proseso: ps ug pstree.

Gamit ang -e ug -f mga opsyon nga gihiusa ngadto sa usa (-ef) mahimo nimong ilista ang tanang proseso nga nagdagan karon sa imong sistema. Mahimo nimong i-pipe kini nga output ngadto sa ubang mga himan, sama sa grep (sumala sa gipatin-aw sa Part 1 sa serye sa LFCS) aron maminusan ang output sa imong gusto nga (mga) proseso:

# ps -ef | grep -i squid | grep -v grep

Ang listahan sa proseso sa ibabaw nagpakita sa mosunod nga impormasyon:

tag-iya sa proseso, PID, Parent PID (ang proseso sa ginikanan), paggamit sa processor, oras kanus-a nagsugod ang command, tty (ang ? nagpaila nga kini usa ka daemon), ang cumulated nga oras sa CPU, ug ang command nga nalangkit sa proseso.

Bisan pa, tingali dili nimo kinahanglan ang tanan nga kasayuran, ug gusto nimo ipakita ang tag-iya sa proseso, ang mando nga nagsugod niini, ang PID ug PPID niini, ug ang porsyento sa memorya nga gigamit niini karon - sa kana nga pagkasunud, ug pagsunud sa paggamit sa panumduman sa paubos nga han-ay (timan-i nga ang ps sa default gisunud sa PID).

# ps -eo user,comm,pid,ppid,%mem --sort -%mem

Diin ang minus sign sa atubangan sa %mem nagpaila sa paghan-ay sa paubos nga han-ay.

Kung sa usa ka hinungdan ang usa ka proseso nagsugod sa pagkuha sa daghang mga kapanguhaan sa sistema ug lagmit nga makadaot sa kinatibuk-ang pagpaandar sa sistema, gusto nimo nga ihunong o ihunong ang pagpatuman niini nga gipasa ang usa sa mga mosunud nga signal gamit ang programa sa pagpatay niini. Ang ubang mga rason ngano nga imong hunahunaon ang pagbuhat niini mao ang kung nagsugod ka sa usa ka proseso sa foreground apan gusto nimo nga ihunong kini ug ipadayon sa background.

Kung ang normal nga pagpatuman sa usa ka proseso nagpasabot nga walay output nga ipadala sa screen samtang kini nagdagan, mahimo nimong sugdan kini sa background (pagdugang ug ampersand sa katapusan sa command).

process_name &

o,
Kung nagsugod na kini sa pagdagan sa foreground, ihunong kini ug ipadala kini sa background nga adunay

Ctrl + Z
# kill -18 PID

Palihug timan-i nga ang matag pag-apod-apod naghatag og mga himan aron sa maayong pagpahunong/pagsugod/pagsugod/pag-reload sa komon nga mga serbisyo, sama sa serbisyo sa SysV-based nga mga sistema o systemctl sa systemd-based nga mga sistema.

Kung ang usa ka proseso dili motubag sa mga utilities, mahimo nimo kini patyon pinaagi sa kusog pinaagi sa pagpadala niini sa signal sa SIGKILL niini.

# ps -ef | grep apache
# kill -9 3821

So.. Unsay Nahitabo/Nahitabo?

Kung adunay bisan unsang matang sa pagkawala sa sistema (mapalong man kini sa kuryente, pagkapakyas sa hardware, giplano o wala giplano nga pagkabalda sa usa ka proseso, o bisan unsang abnormalidad), ang mga log sa /var/log b> ang imong labing suod nga mga higala aron mahibal-an kung unsa ang nahitabo o kung unsa ang mahimong hinungdan sa mga isyu nga imong giatubang.

# cd /var/log

Pipila sa mga butang sa /var/log kay regular nga text files, ang uban kay mga direktoryo, ug ang uban kay compressed files sa rotated (historical) logs. Gusto nimong susihon kadtong adunay pulong nga sayup sa ilang ngalan, apan ang pag-inspeksyon sa uban mahimong magamit usab.

Handurawa kini nga senaryo. Ang imong mga kliyente sa LAN dili maka-print sa mga printer sa network. Ang unang lakang sa pag-troubleshoot niini nga sitwasyon mao ang /var/log/cups nga direktoryo ug tan-awon kon unsay naa didto.

Mahimo nimong gamiton ang tail nga sugo aron ipakita ang kataposang 10 ka linya sa error_log file, o tail -f error_log para sa real-time nga pagtan-aw sa log.

# cd /var/log/cups
# ls
# tail error_log

Ang screenshot sa ibabaw naghatag pipila ka makatabang nga impormasyon aron masabtan kung unsa ang mahimong hinungdan sa imong isyu. Timan-i nga ang pagsunod sa mga lakang o pagtul-id sa dili maayo nga proseso mahimo nga dili makasulbad sa kinatibuk-ang problema, apan kung gigamit ka gikan sa sinugdanan aron masusi ang mga troso matag higayon nga adunay usa ka problema (bisan kini usa ka lokal o usa ka network) Sigurado nga naa sa husto nga dalan.

Bisan pa nga ang mga kapakyasan sa hardware mahimong malisud sa pag-troubleshoot, kinahanglan nimong susihon ang dmesg ug mga log sa mensahe ug grep alang sa mga may kalabutan nga mga pulong sa usa ka bahin sa hardware nga gituohan nga sayup.

Ang hulagway sa ubos gikuha gikan sa /var/log/messages human sa pagpangita sa pulong nga sayop gamit ang mosunod nga sugo:

# less /var/log/messages | grep -i error

Atong makita nga naa mi problema sa duha ka storage device: /dev/sdb ug /dev/sdc, nga maoy hinungdan sa isyu sa RAID array.

Konklusyon

Niini nga artikulo among gisuhid ang pipila ka mga himan nga makatabang kanimo nga kanunay nga makahibalo sa kinatibuk-ang kahimtang sa imong sistema. Dugang pa, kinahanglan nimo nga sigurohon nga ang imong operating system ug na-install nga mga pakete na-update sa ilang labing bag-o nga stable nga mga bersyon. Ug ayaw gayud, kalimti ang pagsusi sa mga troso! Unya moadto ka sa husto nga direksyon aron makit-an ang tino nga solusyon sa bisan unsang mga isyu.

Mobati nga gawasnon sa pagbilin sa imong mga komentaryo, sugyot, o mga pangutana -kon aduna kay- gamit ang porma sa ubos.