۲۰ دستور کاربردی مانیتورینگ سرور های لینوکس (قسمت اول)

چگونه از خودمان در برابر باج‌افزار خطرناک WannaCry محافظت کنیم
می 30, 2017
باید در انتظار گونه‌های جدیدتر و خطرناک‌تری از بدافزارها باشیم؟
می 30, 2017

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

با توجه به گستردگی دستورات خط فرمان سیستم های تحت لینوکس، در این مقاله ۲۰ دستور از کاربردی ترین دستورات لینوکس و ابزارهای خط فرمان (Command Line) جهت مانیتور نمودن عملکرد سرویس های لینوکس مورد بررسی قرار می گیرد.

همانطور که مطلع هستید دیباگ نمودن (Debug) و رفع مشکلات سیستم های لینوکس برای اکثر مدیران سیستم و یا ادمین های شبکه با استفاده از دستورات لینوکس که مبتنی بر خط فرمان (Command Line) هستند، عملی بسیار دشوار می باشد. بعنوان ادمین سیستم لینوکس ، سراپا نگاه داشتن سرور لینوکس بدلیل داشتن محیط خط فرمان بسیار دشوار می باشد. به همین دلیل در اینجا چند مورد از دستورات کاربردی که برای سیستم های مبتنی بر لینوکس، مفید می باشند ارائه شده است.

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

دستور top – مانیتور نمودن پروسس های لینوکس

دستور top جهت مانیتور نمودن عملکرد سیستم های لینوکس/یونیکس بسیار مناسب می باشد و بسیار از مدیران سرور از این دستور استفاده می نمایند.

در واقع دستور top در لینوکس، تمامی پروسه ها و فرایندهای Real-Time ی را که فعال و یا درحال اجرا می باشند را بصورت لیستی مرتب نمایش می دهد و این لیست مرتبا به هنگام می شود.

با دستور top میتوان میزان مصرف CPU، میزان مصرف حافظه، Swap Memory، سایز Cache، سایز بافر (Buffer) پروسس ها،PID، کاربران، دستورات و…. را مشاهده نمود.

همچنین با استفاده از این دستور، امکان مشاهده پروسس هایی که بیشترین میزان مصرف حافظه و یا CPU را دارند، نیز فراهم می شود.

بطور مثال در تصویر زیر می توانید خروجی مربوط به دستور top را مشاهده نمایید.

#top

vmstat – میزان مصرف حافظه مجازی

از دیگر دستورات لینوکس دستور vmstat می باشد که جهت نمایش میزان مصرف حافظه مجازی (Virtual Memory Statistics)، رشته های هسته (kernerl threads)، دیسک ها، پروسس های سیستمی، وقفه ها (interrupts)، میزان فعالیت پردازنده، (I/O Blocks) بلوک های I/O و …. بکار می رود.

بصورت پیش فرض دستور vmstat، روی سیستم های لینوکس وجود نداشته و می بایست جهت فعال سازی آن بسته ای بنام sysstat را روی سیستم نصب نمایید.

در تصویر زیر رایج ترین کاربرد دستور vmstat، آورده شده است:

#vmstat

lsof – نمایش لیست فایل های باز

دستور کاربردی دیگر در سیستم های مبتنی بر Linux/Unix ، دستور lsof می باشد. دستور lsof، جهت نمایش لیستی از تمامی فایل ها و پروسس های باز به کار می رود.

فایل های باز شامل تمامی فایل های دیسک، سوکت های شبکه، پروسس ها، دستگاه ها (Devices) و Pipes ها می باشد.

از مهمترین موارد استفاده این دستور، زمانی است که هنگام mount/unmount کردن، دیسک نمی تواند un-mount شود و با خطایی نظیر “فایل باز است و یا در حال استفاده می باشد”، همراه است. در نتیجه با استفاده از این دستور می توانید تشخیص دهید که کدام فایل ها در حال حاضر باز می باشند.

#lsof

tcpdump – تجزیه و تحلیل بسته های شبکه

دستور tcpdump یکی از پرکاربردترین دستورات لینوکس می باشد. این دستور بعنوان تحلیل بسته های شبکه (network packet analyzer) ویا برنامه محدود کردن بسته های شبکه ای (packets sniffer program) کاربرد زیادی دارد.

همچنین امکان ذخیره سازی بسته های خاصی را در فایل ها جهت تجزیه و تحلیل در آینده نیز دارد. دستور tcpdump روی اکثر توزیع های مختلف لینوکس قابل استفاده می باشد.

#tcpdump

 

netstat – میزان مصرف شبکه

netstat دستور کاربردی جهت مانیتور کردن مقادیر ورودی و خروجی بسته های شبکه (network packets) می باشد. این دستور جهت مانیتور کردن عملکرد شبکه و برطرف کردن مشکلات احتمالی مربوطه به مدیر سرور کمک شایانی می نماید.

#netstat

htop – مانیتورینگ پروسس های لینوکس

دستور htop، دستور بسیار قدرتمند و Real Time جهت مانیتور کردن لحظه ای / آنی پروسس های لینوکس می باشد. این دستور شبیه دستور Top می باشد، با این تفاوت که قابلیت های کاربردی دیگری نظیر مشاهده عمودی ویا افقی پروسس ها، کلید های میانبر، ارائه رابط کاربرپسند جهت مدیریت پروسس ها را نیز میسر می کند.

دستور htop، از ابزار های سطح کاربری (third party tool) بوده و بطور پیش فرض روی سیستم های لینوکس نمی باشد. جهت نصب دستور htop، می بایست از بسته های مدیریتی YUM استفاده نمایید.

#Htop

 

iotop – مانیتورینگ I/O دیسک

از دیگر دستورات لینوکس، دستور iotop است که بسیار شبیه دستور Top و برنامه htop می باشد، با این تفاوت که دستور iotop با استغاده از توابع محاسباتی، جهت مانیتور کردن و نمایش دیسک I/O و پروسس های لحظه ای استفاده می کند.

این دستور بیشتر زمانی بکار می آید که بخواهیم دقیقا پروسس های خواندن/نوشتن (Read/Writes processes) را که فضای زیادی از دیسک مصرف میکنند، بیابیم.

 

iostat – میزان مصرف ورودی / خروجی ها

ioStat دستور ساده ای جهت جمع آوری و نمایش میزان مصرف دستگاه های ذخیره سازی ورودی و خروجی می باشد. این دستور غالبا جهت بررسی عملکرد دستگاه های ذخیره سازی بکار میرود و می توان با بکاربردن آن مشکلات مربوط به دیسک های لوکال، دستگاه های ورودی و خروجی، دیسک های ریموت نظیر NFS را عیب یابی نمود.

#iostat

iptraf – مانیتورینگ لحظه ای IP شبکه LAN

از دیگر دستورات لینوکس، دستور iptraf دستور منبع باز (Open Source) و مبتنی بر کنسول جهت مانیتورینگ لحظه ای IP شبکه LAN ، (Real Time IP LAN Monitoring) می باشد.

این دستور اطلاعات بسیار متنوعی نظیر ترافیک IP های ورودی به شبکه شامل TCP flag، ICMP، نقاط ضعف TCP/UDP، بسته های ارتباطی TCP و تعداد byne ها را مانیتور نموده و نمایش می دهد.

همچنین اطلاعات مفید و دقیقی از مصرف TCP، UDP، IP، ICMP، non-IP، خطاهایIP checksum ، interface activity و….. را ارائه می دهد.

 

پایان قسمت اول

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *