كيفية استخدام الأمر ps لمراقبة عمليات Linux

نافذة طرفية على كمبيوتر محمول يعمل بنظام Linux.

فاطماواتي أحمد زينوري / شاترستوك



احصل على لقطة للعمليات التي تعمل على كمبيوتر Linux الخاص بك باستخدام ps يأمر . حدد موقع العمليات بالاسم أو المستخدم أو حتى المحطة الطرفية بتفاصيل كثيرة أو قليلة حسب حاجتك. نوضح لك كيف.

إدارة العمليات على لينوكس

القلب النابض لجميع أنظمة التشغيل Linux و Unix الشبيهة بالنواة. من بين مسؤولياته العديدة تخصيص موارد النظام مثل ذاكرة الوصول العشوائي ووقت وحدة المعالجة المركزية. يجب أن يتم التوفيق بينها في الوقت الفعلي حتى تحصل جميع العمليات الجارية على نصيبها العادل ، وفقًا لأولوية كل مهمة.





في بعض الأحيان يمكن إغلاق المهام أو الدخول في حلقة ضيقة أو عدم الاستجابة لأسباب أخرى. أو قد يستمرون في العمل ، لكنهم يستهلكون الكثير من وقت وحدة المعالجة المركزية أو ذاكرة الوصول العشوائي ، أو يتصرفون بطريقة غير اجتماعية على حد سواء. في بعض الأحيان يجب قتل المهام رحمة لجميع المعنيين. الخطوة الأولى. بالطبع ، هو تحديد العملية المعنية.

ولكن ربما ليس لديك أي مشكلات تتعلق بالمهمة أو الأداء على الإطلاق. ربما تكون مهتمًا فقط بالعمليات التي تعمل داخل جهاز الكمبيوتر الخاص بك ، وتريد إلقاء نظرة خاطفة على الغطاء. ال ps الأمر يفي بكل من هذه الاحتياجات. فهو يوفر لك لقطة لما يحدث داخل جهاز الكمبيوتر الخاص بك فى الحال.



ps تتسم بالمرونة الكافية لتزويدك بالمعلومات التي تحتاجها بالضبط بالتنسيق الذي تريده بالضبط. في الحقيقة ، ps لديها العديد من الخيارات. الخيارات الموضحة هنا ستلبي معظم الاحتياجات الشائعة. إذا كنت بحاجة إلى التعمق في ps مما أخذناه في هذه المقالة ، ستجد أن مقدمتنا تجعل من السهل استيعاب صفحة الدليل.

عمليات الإدراج

أسهل طريقة لاستخدام ps هو إطلاقه بدون أي معلمات:

ps



الإعلانات

-e يعرض قائمة بالعمليات التي بدأها المستخدم الذي قام بتشغيل الأمر.

الأعمدة الأربعة هي:

    PID: رقم معرف العملية للعملية. TTY: اسم وحدة التحكم التي قام المستخدم بتسجيل الدخول من خلالها. زمن: مقدار وقت معالجة وحدة المعالجة المركزية الذي استغرقته العملية. CMD: اسم الأمر الذي أطلق العملية

عملية الإدراج في القائمة لجميع المستخدمين

بإضافة ps (حدد كل العمليات) يمكننا إجراء ps سرد العمليات التي بدأها جميع المستخدمين ، وليس فقط المستخدم الذي يقوم بتشغيل less يأمر. نظرًا لأن هذه القائمة ستكون طويلة ، فإننا نقوم بتوصيلها إلى less.

?

تم توجيه قائمة العمليات إلى TTY.

لدينا العديد من الإدخالات في القائمة ، لكننا نرى نفس الأعمدة الأربعة كما في السابق. الإدخالات بعلامة استفهام -H في ps العمود لم يبدأ من نافذة طرفية.

إظهار التسلسل الهرمي للعملية

في بعض الأحيان يمكن أن يساعد في اكتشاف مشكلة أو تحديد عملية معينة إذا كان بإمكانك معرفة العمليات التي أطلقت عمليات أخرى. نستخدم --forest (التسلسل الهرمي) للقيام بذلك.

ps

تشير المسافة البادئة إلى العمليات التي تعتبر أبًا للعمليات الأخرى.

الإعلانات

لإضافة المزيد من الوضوح ، يمكننا أن نسأل grep لإضافة بعض ASCII خطوط ورسم التسلسل الهرمي كشجرة. خيار القيام بذلك هو -f اختيار.

ps

هذا يجعل من السهل تتبع العمليات التي هي آباء العمليات الأخرى.

سرد العمليات بالاسم

يمكنك توجيه الإخراج من -F من خلال ps لقائمة الإدخالات التي لها أسماء تطابق مصطلح البحث . نحن هنا نبحث عن الإدخالات التي تطابق مصطلح البحث في فايرفوكس:

-p

في هذه الحالة ، يكون الناتج إدخالًا واحدًا للعملية التي نهتم بها. بالطبع ، إذا أطلقنا العديد من مثيلات Firefox ، فسيكون هناك أكثر من عنصر واحد يتم إرجاعه في القائمة.

إظهار المزيد من الأعمدة في الإخراج

لإضافة المزيد من الأعمدة إلى الإخراج ، استخدم -C (تنسيق كامل) الخيار.

-u

يتم تضمين مجموعة إضافية من الأعمدة في الإخراج من -t.

الأعمدة هي:

    المعرف الفريد: معرف المستخدم لصاحب هذه العملية. PID: معرف العملية للعملية. PPID: معرف العملية الأصل للعملية. ج: عدد الأطفال في العملية. تقديرات: وقت البدء. الوقت الذي بدأت فيه العملية. TTY: اسم وحدة التحكم التي قام المستخدم بتسجيل الدخول من خلالها. زمن: مقدار وقت معالجة وحدة المعالجة المركزية الذي استغرقته العملية. CMD: اسم الأمر الذي أطلق العملية.
الإعلانات

باستخدام -t (تنسيق كامل إضافي) يمكننا الحصول على المزيد من الأعمدة:

tty

تتطلب الأعمدة التي نحصل عليها هذه المرة تمرير الشاشة بشكل جانبي للكشف عنها جميعًا.

يؤدي الضغط على مفتاح السهم الأيمن إلى تحويل الشاشة إلى اليسار.

الأعمدة التي نحصل عليها الآن هي:

    المعرف الفريد: معرف المستخدم لصاحب هذه العملية. PID: معرف العملية للعملية. PPID: معرف العملية الأصل للعملية. ج: عدد الأطفال في العملية. س: الحجم في صفحات ذاكرة الوصول العشوائي لصورة العملية. RSS: حجم مجموعة المقيم. هذه هي الذاكرة الفعلية غير المبادلة التي تستخدمها العملية. PSR: المعالج الذي تسند إليه العملية. تقديرات: وقت البدء. الوقت الذي بدأت فيه العملية. TTY: اسم وحدة التحكم التي قام المستخدم بتسجيل الدخول من خلالها. زمن: مقدار وقت معالجة وحدة المعالجة المركزية الذي استغرقته العملية. CMD: اسم الأمر الذي أطلق العملية.

سرد العمليات حسب معرف العملية

بمجرد العثور على معرف العملية للعملية التي تهتم بها ، يمكنك استخدامه مع ps -t الأمر لسرد تفاصيل تلك العملية. استخدم pts/0 (حدد بواسطة معرّف العملية) لتحقيق ذلك:

pts/1

يتم سرد تفاصيل هذه العملية:

أنت غير مقيد بمعرف عملية واحد. يمكنك تقديم قائمة بمعرفات العمليات ، مفصولة بمسافات.

سرد العمليات بالأمر

ال -o (أمر) يتيح لك خيار البحث عن عملية باستخدام اسم الأمر. هذا هو اسم الأمر الذي أطلق العملية. هذا يختلف اختلافًا طفيفًا عن سطر الأوامر ، والذي قد يتضمن أسماء المسار والمعلمات أو الخيارات.

ps

يتم سرد تفاصيل عملية الغالق.

قائمة العمليات التي يملكها المستخدم

لمعرفة العمليات التي يمتلكها مستخدم معين ، استخدم pcpu (قائمة المستخدمين) الخيار:

args

الإعلانات

يتم عرض العمليات التي يملكها حساب المستخدم ماري.

سرد العمليات بالمحطة

للاطلاع على العمليات المرتبطة بـ TTY ، استخدم --sort (حدد بواسطة TTY) الخيار. يستخدم بدون رقم TTY ، - تقارير الخيار عن العمليات المرتبطة بالنافذة الطرفية الحالية.

pcpu head

ال pmem أبلغ الأمر أن هذا هو نوع تليفزيوني زائف 0. العمليات المدرجة بواسطة + كلها مرتبطة بـ TTY pmem.

إذا مررنا رقم TTY في سطر الأوامر ، يجب أن نحصل على تقرير بالعمليات المرتبطة بهذا TTY.

pid

هذه المرة جميع العمليات مرتبطة بـ TTY kill.

ذات صلة: ما هو TTY على Linux؟ (وكيفية استخدام الأمر tty)

اختيار الأعمدة لعرضها

باستخدام pkill (تنسيق) يمكنك تحديد الأعمدة التي تريد تضمينها في الإخراج من killall. أنت تحدد الأعمدة بالاسم. يمكن رؤية القائمة (الطويلة) لأسماء الأعمدة على ملف صفحة الرجل في القسم المعنون محددات التنسيق القياسي. في هذا المثال ، نختار تضمين وقت وحدة المعالجة المركزية (ps) وسطر الأوامر مع الوسيطات (top) في الإخراج.

top

الإخراج يتضمن فقط العمودين المطلوبين لدينا.

فرز المخرجات حسب الأعمدة

يمكنك الحصول على المخرجات مرتبة من أجلك باستخدام top اختيار. دعونا نفرز الإخراج حسب عمود وحدة المعالجة المركزية:

-H

الواصلة --forest في

ps
تعطي معلمة الفرز ترتيب فرز تنازليًا.

للاطلاع على أكثر عشر عمليات كثافة لوحدة المعالجة المركزية ، قم بتمرير الإخراج عبر

ps -e | less
يأمر :

ps -eH | less

نحصل على قائمة مصنفة ومبتورة.

إذا أضفنا المزيد من الأعمدة إلى العرض الخاص بنا ، فيمكننا الفرز حسب المزيد من الأعمدة. دعونا نضيف

ps -eH --forest | less
عمود. هذه هي النسبة المئوية لذاكرة الكمبيوتر التي تستخدمها العملية. بدون واصلة ، أو بعلامة الجمع
ps -e | grep firefox
، يكون ترتيب الفرز تصاعديًا.

ps -ef | less

نحصل على العمود الإضافي الخاص بنا ، ويتم تضمين العمود الجديد في الفرز. يتم فرز العمود الأول قبل العمود الثاني ، ويتم فرز العمود الثاني بترتيب تصاعدي لأننا لم نضع واصلة في

ps -eF | less
.

الإعلانات

لنجعلها أكثر فائدة ونضيفها في عمود معرف العملية (

ps -p 3403
) حتى نتمكن من رؤية رقم العملية لكل عملية في قائمتنا.

ps -C shutter

الآن يمكننا تحديد العمليات.

الإخراج من ps -e -o pid، pcpu، pmem، args - sort -pcpu، pmem | رئيس 10

عمليات القتل حسب معرف العملية

لقد غطينا مجموعة من الطرق لتحديد العمليات ، بما في ذلك الاسم والأمر والمستخدم والمحطة. لقد غطينا أيضًا طرقًا لتحديد العمليات من خلال سماتها الديناميكية ، مثل استخدام وحدة المعالجة المركزية والذاكرة.

لذلك ، بطريقة أو بأخرى ، يمكننا تحديد العمليات الجارية. من خلال معرفة معرف العملية الخاص بهم ، يمكننا (إذا احتجنا إلى) قتل أي من هذه العمليات باستخدام

ps -u mary
يأمر. إذا أردنا إنهاء العملية 898 ، فسنستخدم هذا التنسيق:

tty

إذا سارت الأمور على ما يرام ، يتم إنهاء العملية بصمت.

ذات صلة: كيف تقتل العمليات من Linux Terminal

عمليات القتل بالاسم

ال

ps -t
الأمر يسمح لك قتل العمليات بالاسم . تأكد من أنك حددت العملية الصحيحة! هذا الأمر سينهي العملية العليا.

ps -t 1

مرة أخرى ، لا توجد أخبار جيدة. تم إنهاء العملية بصمت.

قتل عمليات متعددة بالاسم

إذا كان لديك نسخ متعددة من عملية قيد التشغيل ، أو أن العملية أنتجت عددًا من العمليات الفرعية (مثل Google Chrome الذي يمكن أن يفعله) ، فكيف يمكنك التخلص منها؟ هذا بنفس السهولة. نستخدم

ps -e -o pcpu,args | less
يأمر.

لدينا نسختان من أفضل التشغيل:

ps -e -o pcpu,args --sort -pcpu| less

يمكننا إنهاء كلاهما مع هذا الأمر :

ps -e -o pcpu,args --sort -pcpu | head -10

الإعلانات

عدم وجود استجابة يعني عدم وجود مشاكل ، لذلك تم إنهاء كلتا العمليتين.

الإخراج من sudo killall top في نافذة termonal

احصل على عرض ديناميكي من الأعلى

الإخراج من

ps -e -o pcpu,pmem,args --sort -pcpu,pmem | head -10
هو عرض لقطة. لا يتم تحديثه. للحصول على عرض محدث للعمليات ، استخدم
ps -e -o pid,pcpu,pmem,args --sort -pcpu,pmem | head -10
يأمر. يوفر عرض ديناميكي للعمليات الجارية في جهاز الكمبيوتر الخاص بك . العرض في جزئين. توجد منطقة لوحة معلومات في الجزء العلوي من الشاشة مكونة من أسطر نصية وجدول في الجزء السفلي من الشاشة مكون من أعمدة.

ابدأ

sudo kill 898
بهذا الأمر:

sudo pkill top

تحتوي الأعمدة على معلومات حول العمليات:

    PID: معرف العمليه المستعمل: اسم صاحب العملية العلاقات العامة: عملية أولوية NI: القيمة الجميلة للعملية محترم: الذاكرة الظاهرية التي تستخدمها العملية لحم: الذاكرة المقيمة التي تستخدمها العملية SHR: الذاكرة المشتركة التي تستخدمها العملية س: حالة العملية. انظر القائمة أدناه للقيم التي يمكن أن يأخذها هذا الحقل ٪وحدة المعالجة المركزية: حصة وقت وحدة المعالجة المركزية التي استهلكتها العملية منذ آخر تحديث ٪ MEM: حصة الذاكرة الفعلية المستخدمة الوقت +: إجمالي وقت وحدة المعالجة المركزية الذي تستخدمه المهمة في أجزاء من الثانية يأمر: اسم الأمر أو سطر الأوامر (الاسم ومعلمات سطر الأوامر) إذا تعذر رؤية عمود الأمر ، فاضغط على مفتاح السهم الأيمن.

يمكن أن تكون حالة العملية واحدة مما يلي:

    د: نوم متواصل ص: ادارة س: نائم تي: تتبع (توقف) مع: الاموات الاحياء

اضغط على المفتاح Q للخروج من

ps -e | grep top
.

ذات صلة: 37 أوامر لينكس مهمة يجب أن تعرفها

قبل أن تقتل عملية

تأكد من أنه الشخص الذي تبحث عنه ، وتأكد من أنه لن يسبب لك أي مشاكل. على وجه الخصوص ، يجدر التحقق مع

sudo killall top
(التسلسل الهرمي) و
top
خيارات للتأكد من عدم احتوائه على أي عمليات فرعية مهمة كنت قد نسيتها.

أوامر لينكس
الملفات قطران · الكهروضوئية · قط · تاك · chmod · سيطرة · فرق · سيد · مع · رجل · Pushd · popd · fsck · اختبار · فيما يليها · فد · باندوك · قرص مضغوط · المسار $ · awk · انضم · جي ق · يطوى · فريد · جورنال سي تي ال · ذيل · حالة · ls · fstab · رما - طرد - قذف · أقل · chgrp · تشاون · مراجعة · نظرة · سلاسل · نوع · إعادة تسمية · أزيز · بفك · تتعدد · أومونت · تثبيت · fdisk · مكفس · جمهورية مقدونيا · rmdir · رسينك · مدافع · gpg · نحن · نانو · مكدير · ال · ln · تصحيح · يتحول · rclone · أجاد · SRM
العمليات الاسم المستعار · شاشة · أعلى · لطيف · رائع · تقدم · دعامة · النظام · تمكس · chsh · التاريخ · في · حزمة · مجانا · التي · dmesg · usermod · ملاحظة · الجذور · xargs · tty · الخنصر · lsof · vmstat · نفذ الوقت · حائط · نعم · قتل · نايم · سودو · له · زمن · المجموعة · usermod · مجموعات · lshw · اغلق · اعادة التشغيل · توقف · انقطاع التيار الكهربائي · passwd · lscpu · كرونتاب · تاريخ · bg · fg
الشبكات netstat · بينغ · مسار التتبع · IP · ss · الذي هو · fail2ban · bmon · أنت · اصبع اليد · nmap · بروتوكول نقل الملفات · لفة · wget · من الذى · من أنا · في · iptables · ssh-كجن · ufw

ذات صلة: أفضل أجهزة كمبيوتر Linux المحمولة للمطورين والمتحمسين

اقرأ التالي صورة الملف الشخصي لـ Dave McKay ديف مكاي
استخدم Dave McKay أجهزة الكمبيوتر لأول مرة عندما كان الشريط الورقي المثقوب رائجًا ، وهو يقوم بالبرمجة منذ ذلك الحين. بعد أكثر من 30 عامًا في صناعة تكنولوجيا المعلومات ، أصبح الآن صحفيًا متخصصًا في مجال التكنولوجيا. خلال مسيرته المهنية ، عمل كمبرمج مستقل ، ومدير فريق تطوير برمجيات دولي ، ومدير مشروع خدمات تكنولوجيا المعلومات ، ومؤخراً كمسؤول حماية البيانات. تم نشر كتاباته على موقع howtogeek.com و cloudavvyit.com و itenterpriser.com و opensource.com. ديف هو مبشر لينكس ومدافع مفتوح المصدر.
اقرأ السيرة الذاتية الكاملة

مقالات مثيرة للاهتمام