11 A Linux Performance parancsot ad arra, hogy ismerje rendszergazdaként

A hibaelhárítási teljesítménygel kapcsolatos probléma az informatikai világban mindig kihívást jelent, és ha nem volt tudomása a megfelelő eszközökről, akkor bosszantó lenne..


Ha támogatóként dolgozik egy termelési környezetben, akkor valószínűleg a Linux környezetében a teljesítménygel kapcsolatos problémákkal kell foglalkoznia.

Támogatási funkcióban vagy, és Linux kiszolgálón dolgozik?

Menjünk át a Linux által használt leggyakrabban használt parancssori segédprogramokon a teljesítménygel kapcsolatos problémák diagnosztizálására.

Jegyzet: Előfordulhat, hogy az alább felsorolt ​​néhány parancsot nem telepíti alapértelmezés szerint, ezért manuálisan kell telepíteni.

lsof

Az lsof a „nyitott fájlok listázása” kifejezést jelenti, amely segít megtalálni az összes megnyitott fájlt és folyamatot, a megnyitóval együtt. Az lsof segédprogram kényelmesen használható bizonyos esetekben.

Az összes PID által megnyitott fájl felsorolása

# lsof –p PID

Számú fájlok száma & folyamatok

[[Email protected] ~] # lsof -p 4271 | wc-l
34
[[Email protected] ~] #

Ellenőrizze a jelenleg megnyitott naplófájlt

# lsof –p | grep log

Tudja meg a démon által használt portszámot

[[Email protected] ~] # lsof -i -P | grep 4271

nginx 4271 root 6u IPv4 51306 0t0 TCP *:80 (HALLGAT)

nginx 4271 root 7u IPv4 51307 0t0 TCP *:443 (HALLGAT)

[[Email protected] ~] #

pidstat

A pidstat felhasználható a Linux kernel által kezelt feladatok figyelésére. Az I / O-val kapcsolatos problémák elhárítása megkönnyítheti ezt a parancsot.

Sorolja fel az összes PID I / O statisztikáit

# pidstat –d

Az egyes PID I / O statisztikáinak kiszorítása

# pidstat –p 4271 –d

Ha valós idejű hibaelhárítást végez valamilyen folyamatnál, akkor bizonyos időközönként ellenőrizheti az I / O-t. Az alábbiakban bemutatjuk, hogy 5 másodpercenként figyelni kell.

[[Email protected] ~] # pidstat -p 4362 -d 5

Linux 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 2016.08.13 _x86_64_ (2 CPU)

07:01:30 PM UID PID kB_rd / s kB_wr / s kB_ccwr / s parancs

07:01:35 PM 0 4362 0,00 0,00 0,00 nginx

07:01:40 PM 0 4362 0,00 0,00 0,00 nginx

07:01:45 PM 0 4362 0,00 0,00 0,00 nginx

07:01:50 PM 0 4362 0,00 0,00 0,00 nginx

felső

Valószínűleg az egyik leggyakrabban használt parancs lenne a Linuxon. A felső parancs felhasználható a rendszerösszefoglaló információk és az aktuális felhasználás megjelenítésére.

Csak a legfelsõbb parancs végrehajtásával megmutathatja a CPU kihasználtságát, a folyamatok részleteit, számos feladatot, a memória felhasználását, számos zombi folyamatot, stb..

felső

Az egyes felhasználók folyamatának részleteinek megjelenítése

# top –u felhasználónév

A folyamat megöléséhez futtassa a top elemet és nyomja meg a gombot k. A rendszer kéri, hogy írja be a megölni kívánt PID-t.

top-ölni

ps

A ps a folyamat állapotát jelenti, és széles körben használt parancs áttekintést kap a futó folyamatról. Nagyon hasznos annak megállapításához, hogy egy folyamat fut-e vagy sem, és ha fut, akkor kinyomtatja a PID-t.

A PID megismerése és a szó részleteinek feldolgozása

# ps –ef | grep szó

ps-kimenet

tcpdump

A hálózati probléma hibaelhárítása mindig kihívást jelent, és az egyik alapvető használandó parancs a tcpdump.

Te tudod használni tcpdump hogy rögzítse a hálózati csomagokat a hálózati felületen.

A csomagok rögzítése az adott hálózati felületen

# tcpdump –i $ felület –w / tmp / capture

tcpdump-kimenet

Mint láthatjuk a fentiekből, rögzítette a forgalom folyamatát az „eno16777736” felületen.

A forrás és a cél IP közötti hálózati forgalom rögzítése

# tcpdump src $ IP és dst host $ IP

Rögzítse a hálózati forgalmat a 443-as porthoz

# tcpdump dst port 443
tcpdump: adatkapcsolat típus a PKTAP
tcpdump: a részletes verzió kikapcsolva, a -v vagy -vv fájl használatával a teljes protokoll dekódolásához használható
hallgatás pktap-on, link típusú PKTAP (Packet Tap), 262144 bájt méretű rögzítés
12: 02: 30.833845 IP 192.168.1.2.49950 > ec2-107-22-185-206.compute-1.amazonaws.com.https: Zászlók [.], ack 421458229, győzelem 4096, hossz 0
12: 02: 32.076893 IP 192.168.1.2.49953 > 104.25.133.107.https: Zászlók [S], 21510813 számú sorozat, győzelem 65535, opciók [mss 1460, nop, wscale 5, nop, nop, TS val 353259990 ecr 0, sackOK, eol], hossz 0
12: 02: 32.090389 IP 192.168.1.2.49953 > 104.25.133.107.https: Zászlók [.], Ack 790725431, win 8192, hossz 0
12: 02: 32.090630 IP 192.168.1.2.49953 > 104.25.133.107.https: Zászlók [P.], 0: 517-es számú sorrend, 1. ack, győzelem 8192, hosszúság 517
12: 02: 32.109903 IP 192.168.1.2.49953 > 104.25.133.107.https: Zászlók [.], 147. ack, nyerj 8187, hosszúság 0

Olvassa el a rögzített fájlt

# tcpdump –r fájlnév

Például: a rögzített fájl fenti olvasása

# tcpdump –r / tmp / test

iostat

Az iostat a bemeneti-kimeneti statisztikákra vonatkozik, és ezeket gyakran használják a tárolóeszközökkel kapcsolatos teljesítményprobléma diagnosztizálására. Figyelemmel kísérheti a CPU-t, az eszközt & Jelentés a hálózati fájlrendszer felhasználásáról az iostat segítségével.

A lemez I / O statisztikáinak megjelenítése

[[Email protected] ~] # iostat -d
Linux 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 2016.08.13 _x86_64_ (2 CPU)
Eszköz: tps kB_read / s kB_wrtn / s kB_read kB_wrtn
sda 1,82 55,81 12,63 687405 155546
[[Email protected] ~] #

A CPU-statisztikák megjelenítése

[[Email protected] ~] # iostat -c
Linux 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 2016.08.13 _x86_64_ (2 CPU)
avg-cpu:% user% nice% system% iowait% steal% idle
0,59 0,02 0,33 0,54 0,00 98,52
[[Email protected] ~] #

ldd

Az ldd a dinamikus függőségek listáját jelenti, amelyek megmutatják a könyvtárhoz szükséges megosztott könyvtárakat. Az ldd parancs hasznos lehet az alkalmazás indítási problémájának diagnosztizálásában.

Ha valamelyik program nem indul az elérhető függőségek miatt, akkor a ldd segítségével megismerheti a keresett megosztott könyvtárakat.

[[Email protected] sbin] # ldd httpd
linux-vdso.so.1 => (0x00007ffe7ebb2000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fa4d451e000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fa4d42f9000)
libaprutil-1.so.0 => /lib64/libaprutil-1.so.0 (0x00007fa4d40cf000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fa4d3e98000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007fa4d3c6e000)
libdb-5.3.so => /lib64/libdb-5.3.so (0x00007fa4d38af000)
libapr-1.so.0 => /lib64/libapr-1.so.0 (0x00007fa4d3680000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa4d3464000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fa4d325f000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa4d2e9e000)
liblzma.so.5 => /lib64/liblzma.so.5 (0x00007fa4d2c79000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa4d4a10000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fa4d2a73000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007fa4d2870000)
[[Email protected] sbin] #

netstat

A netstat (Network Statistics) egy népszerű parancs a hálózati kapcsolatok kinyomtatására, az interfészek statisztikájára és a különféle hálózattal kapcsolatos problémák elhárítására.

Az összes protokoll statisztikájának megjelenítése

# netstat –s

A grep segítségével megtudhatja, hogy vannak-e hibák

[[Email protected] sbin] # netstat -s | grep hiba
0 csomagfogadási hiba
0 pufferhibákat kap
0 pufferhiba küldése
[[Email protected] sbin] #

A kernel útválasztási táblázata

[[Email protected] sbin] # netstat -r
Kernel IP routing tábla
A Destination Gateway Genmask zászlói MSS Window irtt Iface
alapértelmezett átjáró 0.0.0.0 UG 0 0 0 eno16777736
172.16.179.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777736
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
[[Email protected] sbin] #

ingyenes

Ha a Linux szerver memóriája elfogy, vagy csak azt szeretné tudni, hogy mennyi memória áll rendelkezésre a rendelkezésre álló memóriából, akkor az ingyenes parancs segít.

[[Email protected] sbin] # free-g
Összes felhasznált ingyenes megosztott buff / cache elérhető
Mem: 5 0 3 0 1 4
Csere: 5 0 5
[[Email protected] sbin] #

-g azt jelenti, hogy a részleteket GB-ben mutatják be. Tehát amint láthatja, a rendelkezésre álló teljes memória 5 GB és 3 GB ingyenes.

sar

sar (System Activity Report) hasznos lesz egy jelentés összegyűjtésében, beleértve a CPU-t, a memóriát és az eszköz betöltését.

A sar parancs végrehajtásával megmutatja a rendszerhasználatot az egész napra.

sar-kimenet

Alapértelmezés szerint a felhasználási jelentést 10 perc alatt tárolja. Ha valami rövidebbre van szüksége valós időben, használhatja az alábbiak szerint.

Mutassa a CPU jelentését 3 másodpercenként háromszor

[[Email protected] sbin] # sar 3 2
Linux 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 2016.08.13 _x86_64_ (2 CPU)
11:14:02 PM CPU% felhasználó% nice% system% iowait% lopni% tétlen
11:14:05 PM mind 1,83 0,00 0,50 0,17 0,00 97,51
11:14:08 PM mind 1,50 0,00 0,17 0,00 0,00 98,33
Átlag: mind 1,67 0,00 0,33 0,08 0,00 97,92
[[Email protected] sbin] #

Jelenítse meg a memóriahasználati jelentést

# sar –r

Hálózati jelentés megjelenítése

# sar – MINDEN

IPC

Az ipcs (InterProcess kommunikációs rendszer) jelentést nyújt a szemaforról, a megosztott memóriáról & üzenet sor.

Az üzenet sor felsorolása

# ipcs –q

A szemaforok felsorolása

# ipcs –s

A megosztott memória felsorolása

# ipcs –m

Az IPC jelenlegi használati állapotának megjelenítése

[[Email protected] sbin] # ipcs -u

—— Üzenetek állapota ——–
kiosztott sorok = 0
használt fejlécek = 0
felhasznált terület = 0 byte

—— Megosztott memória állapota ——–
kiosztott szegmensek 5
oldalak hozzárendelése 2784
359 lakosú oldalak
oldalak cseréje 0
Swap teljesítmény: 0 kísérlet 0 siker

—— Szemafor állapot ——–
használt tömbök = 0
kiosztott szemaforok = 0
[[Email protected] sbin] #

Remélem, hogy a fenti parancsok segítenek a rendszergazdai feladatok különböző helyzeteiben.

Ezek csak arra szolgálnak, hogy ötletet adjon a parancsokról, és ha érdekli, akkor nézd meg ezt Linux teljesítményfigyelő és hibaelhárító tanfolyam.

CÍMKÉK:

  • Linux

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map