Amirhoseinsohrabi
Amirhoseinsohrabi
خواندن ۳ دقیقه·۲ سال پیش

راهنمای سریع استفاده از ابزار ps در سیستم عامل گنولینوکس


  • شما میتونید با استفاده از ps و less پردازش ها را به سادگی مانیتور کنید. حالا چرا میگم less چون ps یه پرینت میگیره و جایی هم وجود نداره واسه نمایش پردازش ها و گشتن بین اون ها
  • اینم اضافه کنم که اگه میخواین به شکل داینامیک پردازش ها رو مانیتور و مدیریت کنید از top یا btop یا htop استفاده کنید. چون این ابزار استاتیکه و کاربردای خاص خودشو داره.


بریم سراغ ابزار

  • اول از همه با استفاده از سوییچ های axu ابزار رو فراخوانی کنید و خروجی رو به less پایپ کنید تا بریم سراغ تحلیل و توضیحات ابزار

$ ps axu

  • خروجی ابزار بدون استفاده از less مثل تصویر بالاست.

پس با less تست میکنیم که بتونیم بین پردازش ها چرخ بزنیم.

  • $ ps axu | less
  • در خروجی ابزار ما ۱۱ تا ستون داریم که هرکدوم مفهوم خاص خودشونو دداره

به ترتیب از سمت چپ به راست ستون ها رو معرفی میکنم

USER : اسم یوزری هست که این پردازش رو اجرا کرده

PID : شماره هر پردازش که یکتا هم هست

%CPU : درصد زمان استفاده شدن از سی پی یو توسط پردازش
%MEM : درصد رم استفاده شدن توسط پردازش
VSZ : مقدار حافظه مجازی که اشغال شده توسط پردازش به کیلوبایت
RSS : مقدار فضای استفاده شده از swap
TTY : شماره ترمینالی که توسط آن پردازش آغاز شده است

STAT : وضعیت پردازش

START : تاریخ شروع پردازش

TIME : مدت زمانی که از سی پی یو توسط پردازش استفاده شده است

COMMAND : دستوری که باعث آغاز پردازش شده است




قبل از اینکه بریم سراغ تحلیل باید راجب نماد های مختلفی که در ستون status به ما نمایش داده میشه اطلاعات داشته باشیم

  • نماد S : پردازش در حال اجرا نیست، ولی منتظر یه رویداده، به عنوان مثال یه پکت شبکه یا .......
  • نماد R : پردازش در حال اجراست، یا آماده اجرا هست
  • نماد D : شبیه نماد S هست با این تفاوت که در D پردازش منتظر یه دیسک سخت مثل هارده
  • نماد T : به معنی توقف پردازش هست
  • نماد Z : به معنی یک پردازش از بین رفته یا زامبی است.

راجب پردازش های زامبی توی اینترنت تحقیق کنید.

  • نماد > : یک پردازش با اولویت بالا هست که کلا توجه خیلی بیشتری بهش میشه
  • نماد N : یک پردازش با اولویت پایین هست که توجه خیلی کمتری بهش میشه




حالا میتونین با استفاده از خروجی که انتقالش دادین به less بین پردازش ها جستجو کنین و با استفاده از شماره پردازش یا pid اون پردازش رو استوپ یا از بین ببرید.




به عنوان مثال میخوایم یه پردازشی که کامند اجرا شدنش هم bash بوده رو تحلیل کنیم.

از سمت چپ به راست میریم برای تحلیلش

  • یوزری که این پردازش رو اجرا کرده یوزر روت بوده
  • شماره پردازش 19651 بوده که با استفاده از این رقم میتونین پردازش رو استوپ یا از بین ببرین.
  • درصد زمان استفاده شدن سی پی یو هم ۰.۰ صدم درصد بوده چون پردازش خیلی سنگینی نبوده که سی پی یو زمان زیادی برای پردازشش صرف کنه.
  • درصد رم استفاده شده هم ۰.۱ صدم درصد از کل مقدار رم کامپیوتر من بوده که رقم بسیار کمیه
  • درصد حافظه مجازی که اشغال شده برابر با 9836 هست که میشه 78 مگابایت
  • درصد فضای اشغال شده از swap هم برابر با 3432 هست که میشه 27 مگابایت
  • شماره ترمینالی که پردازش از اونجا شروع به فعالیت کرده pts/1 هست
  • حالت پردازش هم S شده که منتظر یه رویداده مثلا دادن یه دستور تو بش یا .....
  • ساعت 17:00 به این معنی هست که این پردازش ساعت 17:00 آغاز شده
  • مدت زمان استفاده شدن از سی پی یو توسط پردازش
  • دستوری که باعث آغاز پردازش شده دستور bash بوده

حالا اگه خواستید که این پردازش رو کلا از بین ببرید با استفاده از ابزار kill و سیگنال KILL و شماره پردازش میتونین این پردازش رو از بین ببرید


بازم اگه سوالی داشتید بپرسید.

عشق هستید و ماندگار

پردازشابزار
python developer
شاید از این پست‌ها خوشتان بیاید