11 دستورالعمل عملکرد لینوکس که باید به عنوان یک مدیر سیستم بدانید

یک مسئله مرتبط با عملکرد در دنیای فناوری اطلاعات ، همیشه چالش برانگیز است ، و اگر از ابزارهای صحیحی آگاهی نداشتید ، ناامید کننده خواهد بود.


اگر شما در یک محیط تولید به عنوان پشتیبان مشغول به کار هستید ، احتمالاً باید با مسائل مربوط به عملکرد در محیط لینوکس مقابله کنید.

آیا شما در عملکرد پشتیبانی هستید و روی سرور لینوکس کار می کنید?

بیایید برخی از پرکاربردترین ابزارهای خط فرمان لینوکس را برای تشخیص مشکلات مربوط به عملکرد مرور کنیم.

توجه داشته باشید: برخی از دستورات ذکر شده در زیر ممکن است به طور پیش فرض نصب نشوند ، بنابراین باید آنها را به صورت دستی نصب کنید.

lsof

lsof مخفف “لیست پرونده های باز” است تا به شما کمک کند تا تمام پرونده ها و مراحل باز شده را به همراه کسی که آنها را باز کرده است پیدا کنید. ابزار lsof می تواند در بعضی از سناریوها راحت باشد.

برای لیست ، تمام پرونده های باز شده توسط PID خاص

# lsof –p PID

تعداد پرونده ها را بشمارید & فرآیندهای

[[ایمیل محافظت شده] ~] # lsof -p 4271 | wc -l
34
[[ایمیل محافظت شده] ~] #

پرونده ورود به سیستم باز شده را بررسی کنید

# lsof –p | ورود به سیستم grep

شماره درگاه مورد استفاده توسط Daemon را پیدا کنید

[[ایمیل محافظت شده] ~] # lsof -i -P | grep 4271

nginx 4271 root 6u IPv4 51306 0t0 TCP *:80 (گوش کنید)

nginx 4271 root 7u IPv4 51307 0t0 TCP *:443 (گوش کنید)

[[ایمیل محافظت شده] ~] #

pidstat

از pidstat می توان برای نظارت بر وظایف مدیریت شده توسط هسته Linux استفاده کرد. عیب یابی مسئله مربوط به I / O می تواند سهولت این دستور باشد.

آمار I / O تمام PID را لیست کنید

# pidstat –d

برای جابجایی آمار I / O برای PID خاص

# pidstat –p 4271 –d

اگر در حال انجام عیب یابی در زمان واقعی برای برخی از مراحل هستید ، می توانید I / O را در یک بازه نظارت کنید. در زیر مثال برای نظارت بر هر 5 ثانیه است.

[[ایمیل محافظت شده] ~] # pidstat -p 4362 -d 5

لینوکس 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 08/13/2016 _x86_64_ (2 CPU)

07:01:30 PM UID PID kB_rd / s kB_wr / s kB_ccwr / s فرمان

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

بالا

احتمالاً یکی از پرکاربردترین دستورات در لینوکس بالا خواهد بود. از دستور بالا می توان برای نمایش اطلاعات مختصر سیستم و استفاده از جریان استفاده کرد.

فقط اجرای دستور بالا می تواند به شما نشان دهد که از CPU ، جزئیات پردازش ، تعدادی کار ، استفاده از حافظه ، تعدادی از فرآیندهای زامبی و غیره استفاده می کنید..

بالا

برای نمایش جزئیات فرآیند برای کاربر خاص

# نام کاربری برتر

برای از بین بردن فرایند ، می توانید بالا و را فشار دهید ک. این امر باعث می شود که کشته شوید تا وارد PID شوید.

بالا کشتن

روان

ps مخفف وضعیت فرایند است و به طور گسترده ای از یک دستورالعمل برای گرفتن عکس فوری از روند اجرا استفاده می کند. بسیار مفید برای فهمیدن فرآیند در حال اجرا است یا نه و اگر در حال اجراست PID را چاپ می کند.

برای پیدا کردن PID و پردازش جزئیات توسط برخی از کلمات

# ps –ef | کلمه grep

خروجی ps

tcpdump

عیب یابی مسئله شبکه همیشه چالش برانگیز است و یکی از دستورات اساسی برای استفاده tcpdump است.

شما می توانید استفاده کنید tcpdump برای ضبط بسته های شبکه روی یک رابط شبکه.

برای ضبط بسته ها در رابط شبکه خاص

# tcpdump –i $ رابط –w / tmp / ضبط

tcpdump-out

همانطور که در بالا مشاهده می کنید جریان ترافیک رابط “eno16777736” ضبط شده است.

برای گرفتن ترافیک شبکه بین IP منبع و مقصد

# tcpdump src $ IP و dst host $ IP

ضبط ترافیک شبکه برای بندر مقصد 443

# tcpdump dst port 443
tcpdump: نوع پیوند داده PKTAP
tcpdump: خروجی شفاف سرکوب شده ، استفاده از -v یا -vv برای رمزگشایی پروتکل کامل
گوش دادن به pktap ، پیوند نوع PKTAP (شیر پکیج) ، اندازه ضبط 262144 بایت
12: 02: 30.833845 IP 192.168.1.2.49950 > ec2-107-22-185-206.compute-1.amazonaws.com.https: پرچم ها [.] ، ack 421458229 ، برنده 4096 ، طول 0
12: 02: 32.076893 IP 192.168.1.2.49953 > 104.25.133.107.https: Flags [S]، seq 21510813، win 65535، گزینه ها [mss 1460، nop، wscale 5، nop، nop، TS val 353259990 ecr 0، sackOK، eol]، طول 0
12: 02: 32.090389 IP 192.168.1.2.49953 > 104.25.133.107.https: پرچم ها [.] ، Ack 790725431 ، برنده 8192 ، طول 0
12: 02: 32.090630 IP 192.168.1.2.49953 > 104.25.133.107.https: پرچم ها [P.] ، ثاق 0: 517 ، جوهر 1 ، برنده 8192 ، طول 517
12: 02: 32.109903 IP 192.168.1.2.49953 > 104.25.133.107.https: پرچم ها [.] ، آک 147 ، برنده 8187 ، طول 0

پرونده ضبط شده را بخوانید

# tcpdump – نام پرونده

برای مثال: برای خواندن پرونده ضبط شده در بالا

# tcpdump –r / tmp / test

iostat

iostat مخفف آمار ورودی و خروجی است و اغلب برای تشخیص مسئله عملکرد با دستگاههای ذخیره سازی استفاده می شود. شما می توانید CPU ، دستگاه را کنترل کنید & گزارش استفاده از سیستم فایل شبکه با iostat.

نمایش آمار I / O دیسک

[[ایمیل محافظت شده] ~] # iostat -d
لینوکس 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 08/13/2016 _x86_64_ (2 CPU)
دستگاه: tps kB_read / s kB_wrtn / s kB_read kB_wrtn
sda 1.82 55.81 12.63 687405 155546
[[ایمیل محافظت شده] ~] #

نمایش آمار CPU

[[ایمیل محافظت شده] ~] # iostat -c
لینوکس 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 08/13/2016 _x86_64_ (2 CPU)
avg-cpu:٪ user٪ nice٪ system٪ iowait٪ سرقت٪ بیکار
0.59 0.02 0.33 0.54 0.00 98.52
[[ایمیل محافظت شده] ~] #

دیگه

ldd مخفف لیست وابستگی های پویا برای نمایش کتابخانه های مشترک مورد نیاز کتابخانه است. دستور ldd می تواند برای تشخیص مشکل راه اندازی برنامه مفید باشد.

اگر برخی از برنامه ها به دلیل وابستگی در دسترس نیست ، می توانید کتابخانه های مشترک مورد نظر خود را پیدا کنید.

[[ایمیل محافظت شده] 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)
[[ایمیل محافظت شده] sbin] #

netstat

netstat (آمار شبکه) یک فرمان محبوب برای چاپ اتصالات شبکه ، آمار رابط و عیب یابی در شماره های مختلف مربوط به شبکه است.

برای نمایش آمار کلیه پروتکل ها

# netstat –s

برای فهمیدن خطایی می توانید از grep استفاده کنید

[[ایمیل محافظت شده] sbin] # netstat -s | خطای grep
0 بسته خطا دریافت می کند
0 خطاهای بافر دریافت می کنند
0 خطای بافر ارسال کنید
[[ایمیل محافظت شده] sbin] #

برای نشان دادن جدول مسیریابی هسته

[[ایمیل محافظت شده] sbin] # netstat -r
جدول مسیریابی IP هسته
مقصد Gateway Genmask Flags MSS Window irtt Iface
دروازه پیش فرض 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
[[ایمیل محافظت شده] sbin] #

رایگان

اگر سرور لینوکس شما از حافظه خالی شده است یا می خواهید دریابید که چه مقدار حافظه از حافظه موجود موجود است ، این دستور رایگان به شما کمک می کند.

[[ایمیل محافظت شده] sbin] # free -g
کل استفاده شده از buff / cache رایگان مشترک در دسترس است
Mem: 5 0 3 0 1 4
تعویض: 5 0 5
[[ایمیل محافظت شده] sbin] #

-g به معنی نشان دادن جزئیات در گیگابایت است. بنابراین همانطور که می بینید کل حافظه موجود 5 گیگابایت و 3 گیگابایت رایگان است.

سار

sar (گزارش فعالیت فعالیت سیستم) برای جمع آوری تعدادی از گزارش ها شامل CPU ، حافظه و بار دستگاه مفید خواهد بود.

فقط با اجرای فرمان sar شما را برای استفاده از سیستم برای کل روز نشان می دهد.

سار-خروجی

به طور پیش فرض ، گزارش استفاده را در 10 دقیقه ذخیره می کند. اگر در زمان واقعی به چیزی کوتاه تر احتیاج دارید ، می توانید از موارد زیر استفاده کنید.

گزارش CPU را 3 بار در هر 3 ثانیه نشان دهید

[[ایمیل محافظت شده] sbin] # سار 3 2
لینوکس 3.10.0-327.13.1.el7.x86_64 (localhost.localdomain) 08/13/2016 _x86_64_ (2 CPU)
11:14:02 PM CPU٪ user٪ nice٪ system٪ iowait٪ سرقت٪ بیکار
11:14:05 PM همه 1.83 0.00 0.50 0.17 0.00 97.51
11:14:08 PM همه 1.50 0.00 0.17 0.00 0.00 98.33
میانگین: همه 1.67 0.00 0.33 0.08 0.00 97.92
[[ایمیل محافظت شده] sbin] #

گزارش استفاده از حافظه را نشان دهید

# سار –ر

گزارش شبکه را نشان دهید

# سار – همه

ipcs

ipcs (سیستم ارتباطی InterProcess) گزارشی را در مورد حافظه مشترک ، متشکل از غرفه ارائه می دهد & صف پیام.

برای لیست صف پیام

# ipcs –q

برای فهرست بندی حروف

# ipcs –s

برای لیست کردن حافظه مشترک

# ipcs –m

برای نمایش وضعیت استفاده فعلی IPC

[[ایمیل محافظت شده] sbin] # ipcs -u

—— وضعیت پیام ——–
صف اختصاص داده شده = 0
عنوانهای استفاده شده = 0
فضای استفاده شده = 0 بایت

—— وضعیت حافظه مشترک ——–
بخش های اختصاص یافته 5
صفحات اختصاص یافته 2784
صفحات ساکن 359
صفحات مبادله 0
عملکرد مبادله: 0 تلاش 0 موفقیت دارد

—— وضعیت semaphore ——–
آرایه های استفاده شده = 0
سمفورهای اختصاصی = 0
[[ایمیل محافظت شده] sbin] #

امیدوارم دستورات فوق در موقعیت های مختلف در کار مدیریت سیستم شما کمک کنند.

اینها فقط برای شما ایده در مورد دستورات است و اگر علاقه دارید ممکن است این موضوع را بررسی کنید دوره نظارت و عیب یابی عملکرد لینوکس.

برچسب ها:

  • لینوکس

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