Platforms overview
برنامهٔ لینوکس
Gateway در Linux بهطور کامل پشتیبانی میشود. Node محیط اجرای توصیهشده است؛ Bun توصیه نمیشود (بهدلیل مشکلات شناختهشده با WhatsApp/Telegram).
هنوز برنامه همراه بومی برای Linux وجود ندارد. از مشارکتها استقبال میشود.
مسیر سریع (VPS)
- Node 24 (توصیهشده) یا Node 22.19+ (نسخه LTS که همچنان پشتیبانی میشود) را نصب کنید.
npm i -g openclaw@latestopenclaw onboard --install-daemon- از لپتاپ خود اجرا کنید:
ssh -N -L 18789:127.0.0.1:18789 <user>@<host> http://127.0.0.1:18789/را باز کنید و با راز مشترک پیکربندیشده احراز هویت کنید (بهطور پیشفرض توکن؛ اگرgateway.auth.modeبرابر"password"باشد، گذرواژه).
راهنمای کامل سرور: سرور Linux. نمونه گامبهگام VPS: exe.dev.
نصب
- شروع به کار
- نصب و بهروزرسانیها
- اختیاری: Bun (آزمایشی)، Nix، Docker
سرویس Gateway (systemd)
با یکی از روشهای زیر نصب کنید:
openclaw onboard --install-daemonopenclaw gateway installopenclaw configure # هنگام درخواست، "Gateway service" را انتخاب کنیدنصب موجود را تعمیر یا مهاجرت دهید:
openclaw doctoropenclaw gateway install بهطور پیشفرض یک واحد کاربر در systemd ایجاد میکند. راهنمای
کامل سرویس، از جمله نوع واحد سطح سیستم برای میزبانهای اشتراکی یا
همیشهروشن، در راهنمای عملیاتی Gateway قرار دارد.
فقط برای راهاندازی سفارشی، واحد را بهصورت دستی بنویسید. نمونه حداقلی واحد کاربر
(~/.config/systemd/user/openclaw-gateway[-<profile>].service):
[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آن را فعال کنید:
systemctl --user enable --now openclaw-gateway[-<profile>].serviceفشار حافظه و خاتمههای OOM
در Linux، هنگامی که حافظه میزبان، ماشین مجازی یا cgroup کانتینر تمام شود، هسته یک قربانی OOM انتخاب میکند. Gateway قربانی مناسبی نیست، زیرا مالک نشستهای بلندمدت و اتصالهای کانال است؛ بنابراین OpenClaw تا حد امکان فرایندهای فرزند موقتی را در اولویت خاتمه قرار میدهد.
برای اجرای فرایندهای فرزند واجد شرایط در Linux، OpenClaw فرمان را در یک لایه کوتاه
/bin/sh قرار میدهد که مقدار oom_score_adj خود فرایند فرزند را به 1000 افزایش میدهد و سپس
فرمان واقعی را با exec اجرا میکند. این کار به دسترسی ویژه نیاز ندارد: یک فرایند همیشه میتواند
امتیاز OOM خودش را افزایش دهد.
سطوح فرایند فرزند تحت پوشش:
- فرایندهای فرزند فرمان که توسط ناظر مدیریت میشوند
- فرایندهای فرزند پوسته PTY
- فرایندهای فرزند سرور stdio در MCP
- فرایندهای مرورگر/Chrome که OpenClaw راهاندازی میکند (از طریق محیط اجرای فرایند در SDK افزونه)
این پوشش فقط مخصوص Linux است و هنگامی که /bin/sh در دسترس نباشد، یا محیط
فرایند فرزند مقدار OPENCLAW_CHILD_OOM_SCORE_ADJ را روی 0، false، no یا
off تنظیم کند، اعمال نمیشود.
یک فرایند فرزند را بررسی کنید:
cat /proc/<child-pid>/oom_score_adjمقدار مورد انتظار برای فرایندهای فرزند تحت پوشش 1000 است؛ خود فرایند Gateway
امتیاز عادیاش را حفظ میکند (معمولاً 0).
گزینه OOMPolicy=continue در واحد systemd باعث میشود هنگامی که OOM killer
یک فرایند فرزند موقتی را انتخاب میکند، سرویس Gateway فعال بماند؛ بهجای اینکه کل
واحد ناموفق علامتگذاری شود و همه کانالها از نو راهاندازی شوند. فرایند فرزند/نشست ناموفق،
خطای خودش را گزارش میکند.
این قابلیت جایگزین تنظیم عادی حافظه نمیشود. اگر یک VPS یا کانتینر بهطور مکرر
فرایندهای فرزند را خاتمه میدهد، محدودیت حافظه را افزایش دهید، همزمانی را کاهش دهید یا کنترلهای
منابع قویتری اضافه کنید (MemoryMax= در systemd، محدودیتهای حافظه کانتینر).