Platforms overview

تطبيق Linux

يحظى Gateway بدعم كامل على Linux. ويُعد Node بيئة التشغيل الموصى بها؛ أما Bun فلا يُنصح به (بسبب مشكلات معروفة في WhatsApp/Telegram).

لا يوجد حتى الآن تطبيق مرافق أصلي لنظام Linux. نرحب بالمساهمات.

المسار السريع (VPS)

  1. ثبّت Node 24 (موصى به) أو Node 22.19+ (إصدار LTS، ولا يزال مدعومًا).
  2. npm i -g openclaw@latest
  3. openclaw onboard --install-daemon
  4. من حاسوبك المحمول: ssh -N -L 18789:127.0.0.1:18789 <user>@<host>
  5. افتح http://127.0.0.1:18789/ وصادِق باستخدام السر المشترك المُهيأ (رمز مميز افتراضيًا؛ أو كلمة مرور إذا كانت قيمة gateway.auth.mode هي "password").

دليل الخادم الكامل: خادم Linux. مثال تفصيلي خطوة بخطوة على VPS: exe.dev.

التثبيت

خدمة Gateway ‏(systemd)

ثبّتها بإحدى الطرق التالية:

bash
openclaw onboard --install-daemonopenclaw gateway installopenclaw configure   # حدد "خدمة Gateway" عند مطالبتك

لإصلاح تثبيت موجود أو ترحيله:

bash
openclaw doctor

ينشئ openclaw gateway install وحدة systemd خاصة بالمستخدم افتراضيًا. تتوفر إرشادات الخدمة الكاملة، بما في ذلك صيغة الوحدة على مستوى النظام للمضيفين المشتركين أو دائمي التشغيل، في دليل تشغيل Gateway.

اكتب وحدة يدويًا فقط لإعداد مخصص. مثال مبسط لوحدة المستخدم (~/.config/systemd/user/openclaw-gateway[-<profile>].service):

ini
[Unit]Description=OpenClaw Gateway (profile: <profile>, v<version>)After=network-online.targetWants=network-online.targetStartLimitBurst=5StartLimitIntervalSec=60 [Service]ExecStart=/usr/local/bin/openclaw gateway --port 18789Restart=alwaysRestartSec=5RestartPreventExitStatus=78TimeoutStopSec=30TimeoutStartSec=30SuccessExitStatus=0 143OOMPolicy=continueKillMode=control-group [Install]WantedBy=default.target

فعّلها:

bash
systemctl --user enable --now openclaw-gateway[-<profile>].service

ضغط الذاكرة وإنهاء العمليات بسبب نفاد الذاكرة

في Linux، تختار النواة عمليةً ضحيةً لنفاد الذاكرة (OOM) عندما تنفد ذاكرة المضيف أو الجهاز الافتراضي أو مجموعة التحكم في الحاوية. ويُعد Gateway ضحيةً غير مناسبة لأنه يدير جلسات طويلة الأمد واتصالات القنوات، لذا يوجّه OpenClaw النظام نحو إنهاء العمليات الفرعية المؤقتة أولًا متى أمكن.

بالنسبة إلى العمليات الفرعية المؤهلة التي تُنشأ على Linux، يغلّف OpenClaw الأمر بطبقة قصيرة من /bin/sh ترفع قيمة oom_score_adj الخاصة بالعملية الفرعية نفسها إلى 1000، ثم تستخدم exec لتشغيل الأمر الفعلي. لا يتطلب ذلك امتيازات: إذ يمكن للعملية دائمًا رفع درجة OOM الخاصة بها.

أسطح العمليات الفرعية المشمولة:

  • العمليات الفرعية للأوامر التي يديرها المشرف
  • العمليات الفرعية لصدفة PTY
  • العمليات الفرعية لخادم MCP عبر الإدخال والإخراج القياسيين
  • عمليات المتصفح/Chrome التي يشغّلها OpenClaw (عبر بيئة تشغيل العمليات في SDK الخاص بالـ Plugin)

يعمل هذا الغلاف على Linux فقط، ويُتخطى عندما لا يتوفر /bin/sh، أو عندما تضبط بيئة العملية الفرعية OPENCLAW_CHILD_OOM_SCORE_ADJ على 0 أو false أو no أو off.

للتحقق من عملية فرعية:

bash
cat /proc/<child-pid>/oom_score_adj

القيمة المتوقعة للعمليات الفرعية المشمولة هي 1000؛ أما عملية Gateway نفسها فتحتفظ بدرجتها العادية (عادةً 0).

يُبقي OOMPolicy=continue في وحدة systemd خدمة Gateway قيد التشغيل عندما يختار مُنهي عمليات OOM عمليةً فرعيةً مؤقتة، بدلًا من وضع علامة فشل على الوحدة بأكملها وإعادة تشغيل جميع القنوات؛ وتُبلغ العملية الفرعية أو الجلسة الفاشلة عن خطئها بنفسها.

لا يغني هذا عن الضبط المعتاد للذاكرة. إذا كان VPS أو الحاوية ينهيان العمليات الفرعية مرارًا، فارفع حد الذاكرة أو قلّل التزامن أو أضف ضوابط أقوى للموارد (MemoryMax= في systemd، أو حدود ذاكرة الحاوية).

ذو صلة

Was this useful?
On this page

On this page