حرف B

عملية في الخلفية

Background Process

آخر تحديث: 2026-10-14
مستوى الشرح اختر المستوى التقني المناسب لك

الشرح المبسط

تخيل أنك في مطعم، النادل الذي يأخذ طلبك ويتحدث معك يمثل عملية في الواجهة (Foreground Process)، بينما الطباخ الذي يجهز الطعام داخل المطبخ دون أن تراه يمثل عملية في الخلفية (Background Process). في نظام لينكس (Linux)، العملية في الخلفية هي برنامج أو مهمة تعمل بصمت خلف الكواليس داخل الطرفية (Terminal)، مما يسمح لك بالاستمرار في كتابة وتنفيذ أوامر أخرى دون الحاجة لانتظار انتهاء المهمة الأولى.

الشرح التقني المتقدم

تعتبر العملية في الخلفية (Background Process) من أهم ميزات إدارة المهام في أنظمة لينكس (Linux)، حيث تسمح للمستخدم بتشغيل نصوص برمجية أو برامج تستهلك وقتا طويلا دون احتكار موجه الأوامر (Shell). يدير النظام هذه العمليات عبر آلية التحكم بالمهام (Job Control) التي يوفرها الغلاف لتنظيم سير العمل بمرونة وكفاءة.

كيفية تشغيل وإدارة العمليات في الخلفية

الطريقة الأسهل لتشغيل أمر مباشرة في الخلفية هي إضافة رمز العطف (Ampersand) في نهاية الأمر المراد تنفيذه.

مثال لتشغيل مهمة في الخلفية:

sleep 300 &

سيقوم النظام فورا بإرجاع رقم المهمة (Job ID) ورقم تعريف العملية (PID) للتعرف عليها لاحقا. وإذا قمت بتشغيل أمر بالخطأ في الواجهة وأردت نقله للخلفية دون إغلاقه، يمكنك إيقافه مؤقتا بالضغط على Ctrl+Z، ثم إعطاء أمر النقل للخلفية التالي:

bg

أوامر المراقبة والتحكم الأساسية

لمتابعة العمليات التي تعمل خلف الكواليس والتحكم بها، يوفر النظام مجموعة من الأوامر الحيوية:

  • أمر jobs: يعرض قائمة بجميع المهام الحالية المرتبطة بالطرفية (Terminal) وحالتها، سواء كانت قيد التشغيل (Running) أو متوقفة (Stopped).
  • أمر fg: يستخدم لجلب عملية من الخلفية إلى الواجهة لاستئناف التفاعل المباشر معها.
  • أمر kill: يستخدم لإنهاء العمليات المستعصية أو التي انتهت الحاجة إليها عبر تمرير رقم تعريف العملية (PID).
  • أمر nohup: يسمح باستمرار تشغيل العملية في الخلفية حتى بعد إغلاق جلسة المستخدم (Session) أو تسجيل الخروج.

ملاحظة ختامية: الصورة الكبرى (نصيحة احترافية)

عند تشغيل مهام حرجة تستغرق ساعات طويلة (مثل نقل البيانات أو تحديث النظام)، لا تعتمد فقط على الرمز &، بل يفضل دائما استخدام أدوات مخصصة مثل tmux أو دمج الأمر مع nohup لضمان عدم توقف العملية في الخلفية عند انقطاع الاتصال بالخادم (Server) بشكل مفاجئ.