المطورون
المنفذ قيد الاستخدام بالفعل على Mac
يمكن لعملية واحدة فقط الاستماع على منفذ TCP وعنوان معينين. يتوقف الخادم الثاني عندئذ مع رسالة «العنوان مستخدم بالفعل».
الأعراض
- يتوقف خادم تطوير مع ظهور «EADDRINUSE» أو «address already in use».
- يتعذر على Docker نشر منفذ لأن «port is already allocated».
- كان المنفذ متاحًا قبل تعطل المحرر أو إعادة تشغيله.
الأسباب المحتملة
- نسخة قديمة من خادمك. لا يزال خادم من تشغيل سابق يعمل في الخلفية.
- تطبيق آخر. يستخدم تطبيق آخر المنفذ نفسه. في macOS 12 والإصدارات الأحدث، يستخدم مستقبِل AirPlay المنفذين 5000 و7000.
- حاوية. تنشر حاوية قيد التشغيل المنفذ نفسه على Mac.
كيفية التحقق
ابحث عن العملية التي تستمع على المنفذ. استبدل 3000 بمنفذك.
lsof -nP -iTCP:3000 -sTCP:LISTENالنتيجة يحدد العمودان COMMAND وPID العملية.
لعرض عمليات المستخدمين الآخرين، شغّل الأمر نفسه باستخدام sudo.
sudo lsof -nP -iTCP:3000 -sTCP:LISTENيتطلب كلمة سر مسؤول.
اعرض مزيدًا من المعلومات عن العملية.
ps -p 12345 -o pid,commandابحث عن الحاويات التي تنشر المنفذ.
docker ps
كيفية الإصلاح
إذا كانت العملية تخصك، فأوقفها في نافذة Terminal الخاصة بها باستخدام Control-C.
وإلا فأرسل إليها إشارة الإنهاء. استخدم PID الخاص بها.
kill 12345إذا لم تتوقف، فاستخدم
kill -9. لن تتمكن العملية من حفظ بياناتها.إذا كانت العملية تابعة لـ macOS، فلا توقفها. اختر منفذًا آخر لخادمك.
إذا كان المنفذ 5000 أو 7000، فاقرأ المنفذ 5000 أو 7000 مستخدم على Mac: مستقبِل AirPlay.
باستخدام Kilobat
اعرض المقابس المفتوحة لعملية واحدة.
kilobat destinations --pid 12345أنهِ عملية باستخدام PID. أضف
--forceفقط إذا لم تتوقف.kilobat quit 12345
الأسئلة
لماذا لا يعرض lsof شيئًا رغم أن المنفذ مستخدم؟
يعرض lsof العمليات التي يمكنك فحصها فقط. شغّله باستخدام sudo لرؤية جميع العمليات.
ما وظيفة -n و-P؟
يمنعان lsof من تحويل العناوين إلى أسماء والمنافذ إلى أسماء خدمات. تظهر النتيجة أسرع وبالأرقام.
المصادر
- lsof(8)، صفحة دليل مثبّتة مع macOS 27.2
- kill(1) وps(1)، صفحة الدليل المثبتة مع macOS 27.2
- دعم Apple: منافذ TCP وUDP التي تستخدمها منتجات برامج Apple
تم التحقق في 29 أكتوبر 2026.