การย้าย OpenClaw ไปยังเครื่องใหม่¶
คู่มือนี้อธิบายการย้าย OpenClaw Gateway จากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง โดยไม่ต้องทำขั้นตอน onboarding ใหม่.
แนวคิดของการย้ายนั้นเรียบง่าย:
- คัดลอก ไดเรกทอรีสถานะ (
$OPENCLAW_STATE_DIR, ค่าเริ่มต้น:~/.openclaw/) — ซึ่งรวมคอนฟิก การยืนยันตัวตน เซสชัน และสถานะของช่องทาง - คัดลอก workspace ของคุณ (
~/.openclaw/workspace/เป็นค่าเริ่มต้น) — ซึ่งรวมไฟล์เอเจนต์ของคุณ(หน่วยความจำ พรอมป์ต์ ฯลฯ)
แต่มีจุดพลาดที่พบบ่อยเกี่ยวกับ โปรไฟล์, สิทธิ์, และ การคัดลอกไม่ครบถ้วน.
ก่อนเริ่มต้น(สิ่งที่คุณกำลังจะย้าย)¶
1. ระบุไดเรกทอรีสถานะของคุณ¶
การติดตั้งส่วนใหญ่ใช้ค่าเริ่มต้น:
- ไดเรกทอรีสถานะ:
~/.openclaw/
แต่อาจแตกต่างออกไปหากคุณใช้:
--profile <name>(มักจะกลายเป็น~/.openclaw-<profile>/)OPENCLAW_STATE_DIR=/some/path
หากไม่แน่ใจ ให้รันบนเครื่อง เก่า:
openclaw status
มองหาการอ้างถึง OPENCLAW_STATE_DIR / โปรไฟล์ ในเอาต์พุต มองหาการอ้างถึง OPENCLAW_STATE_DIR / โปรไฟล์ในเอาต์พุต หากคุณรัน Gateway หลายตัว ให้ทำซ้ำสำหรับแต่ละโปรไฟล์.
2. ระบุ workspace ของคุณ¶
ค่าเริ่มต้นที่พบบ่อย:
~/.openclaw/workspace/(workspace ที่แนะนำ)- โฟลเดอร์กำหนดเองที่คุณสร้างขึ้น
workspace ของคุณคือที่อยู่ของไฟล์อย่างเช่น MEMORY.md, USER.md, และ memory/*.md.
3. ทำความเข้าใจว่าสิ่งใดจะถูกคงไว้¶
หากคุณคัดลอก ทั้งสองอย่าง คือ state dir และ workspace คุณจะคงไว้ซึ่ง:
- การกำหนดค่า Gateway (
openclaw.json) - โปรไฟล์การยืนยันตัวตน / คีย์API / โทเคนOAuth
- ประวัติเซสชัน + สถานะเอเจนต์
- สถานะช่องทาง(เช่น การล็อกอิน/เซสชัน WhatsApp)
- ไฟล์ใน workspace ของคุณ(หน่วยความจำ บันทึก Skills ฯลฯ)
หากคุณคัดลอก เฉพาะ workspace(เช่น ผ่าน Git) คุณจะ ไม่ คงไว้ซึ่ง:
- เซสชัน
- ข้อมูลรับรอง
- การล็อกอินช่องทาง
สิ่งเหล่านี้อยู่ภายใต้ $OPENCLAW_STATE_DIR.
ขั้นตอนการย้าย(แนะนำ)¶
ขั้นตอนที่ 0 — สำรองข้อมูล(เครื่องเก่า)¶
บนเครื่อง เก่า ให้หยุด Gateway ก่อน เพื่อไม่ให้ไฟล์เปลี่ยนแปลงระหว่างการคัดลอก:
openclaw gateway stop
(ไม่บังคับแต่แนะนำ) จัดเก็บ state dir และ workspace เป็นไฟล์บีบอัด:
# Adjust paths if you use a profile or custom locations
cd ~
tar -czf openclaw-state.tgz .openclaw
tar -czf openclaw-workspace.tgz .openclaw/workspace
หากคุณมีหลายโปรไฟล์/หลาย state dir(เช่น ~/.openclaw-main, ~/.openclaw-work) ให้จัดเก็บแต่ละรายการ.
ขั้นตอนที่ 1 — ติดตั้ง OpenClaw บนเครื่องใหม่¶
บนเครื่อง ใหม่ ให้ติดตั้ง CLI(และ Node หากจำเป็น):
- ดู: Install
ในขั้นตอนนี้ การ onboarding อาจสร้าง ~/.openclaw/ ใหม่ก็ได้ ซึ่งไม่เป็นไร เพราะคุณจะเขียนทับในขั้นตอนถัดไป.
ขั้นตอนที่ 2 — คัดลอก state dir + workspace ไปยังเครื่องใหม่¶
คัดลอก ทั้งสองอย่าง:
$OPENCLAW_STATE_DIR(ค่าเริ่มต้น~/.openclaw/)- workspace ของคุณ(ค่าเริ่มต้น
~/.openclaw/workspace/)
วิธีที่ใช้บ่อย:
scpไฟล์ tarball มาแล้วแตกไฟล์rsync -aผ่าน SSH- ใช้ไดรฟ์ภายนอก
หลังจากคัดลอกแล้ว ให้ตรวจสอบว่า:
- มีการรวมไดเรกทอรีที่ซ่อนอยู่(เช่น
.openclaw/) - ความเป็นเจ้าของไฟล์ถูกต้องสำหรับผู้ใช้ที่รัน Gateway
ขั้นตอนที่ 3 — รัน Doctor(ไมเกรชัน + ซ่อมแซมบริการ)¶
บนเครื่อง ใหม่:
openclaw doctor
Doctor เป็นคำสั่งที่ “ปลอดภัยและน่าเบื่อ” มันซ่อมแซมบริการ ใช้การย้ายค่าคอนฟิก และเตือนเมื่อมีความไม่ตรงกัน
จากนั้น:
openclaw gateway restart
openclaw status
ข้อผิดพลาดที่พบบ่อย (และวิธีหลีกเลี่ยง)¶
จุดพลาด: โปรไฟล์ / state-dir ไม่ตรงกัน¶
หากคุณรัน Gateway เดิมด้วยโปรไฟล์(หรือ OPENCLAW_STATE_DIR) และ Gateway ใหม่ใช้โปรไฟล์ที่ต่างกัน คุณอาจเห็นอาการเช่น:
- การเปลี่ยนแปลงคอนฟิกไม่ถูกนำไปใช้
- ช่องทางหายไป / ถูกล็อกเอาต์
- ประวัติเซสชันว่างเปล่า
วิธีแก้ไข: รัน Gateway/บริการโดยใช้โปรไฟล์/state dir เดียวกันกับที่คุณย้ายมา แล้วรันอีกครั้ง:
openclaw doctor
จุดพลาด: คัดลอกเฉพาะ openclaw.json¶
openclaw.json อย่างเดียวไม่เพียงพอ ผู้ให้บริการจำนวนมากเก็บ state ไว้ที่:
$OPENCLAW_STATE_DIR/credentials/$OPENCLAW_STATE_DIR/agents/<agentId>/...
ควรย้ายทั้งโฟลเดอร์ $OPENCLAW_STATE_DIR เสมอ.
จุดพลาด: สิทธิ์ / ความเป็นเจ้าของไฟล์¶
หากคุณคัดลอกในฐานะ root หรือเปลี่ยนผู้ใช้ Gateway อาจไม่สามารถอ่านข้อมูลรับรอง/เซสชันได้.
วิธีแก้ไข: ตรวจสอบให้แน่ใจว่า state dir + workspace เป็นของผู้ใช้ที่รัน Gateway.
จุดพลาด: การย้ายระหว่างโหมด remote/local¶
- หาก UI(WebUI/TUI) ของคุณชี้ไปที่ Gateway แบบ remote โฮสต์ระยะไกลจะเป็นผู้ถือครองที่เก็บเซสชัน + workspace
- การย้ายแล็ปท็อปของคุณจะไม่ย้ายสถานะของ Gateway ระยะไกล
หากคุณอยู่ในโหมด remote ให้ย้ายที่ โฮสต์Gateway.
จุดพลาด: ความลับในแบ็กอัป¶
$OPENCLAW_STATE_DIR มีความลับ(คีย์API โทเคนOAuth ข้อมูลรับรอง WhatsApp) ปฏิบัติกับแบ็กอัปเสมือนความลับระดับโปรดักชัน: ปฏิบัติต่อแบ็กอัปเหมือนความลับของระบบโปรดักชัน:
- จัดเก็บแบบเข้ารหัส
- หลีกเลี่ยงการแชร์ผ่านช่องทางที่ไม่ปลอดภัย
- หมุนเวียนคีย์หากสงสัยว่ามีการรั่วไหล
เช็กลิสต์การยืนยันผล¶
บนเครื่องใหม่ ให้ยืนยันว่า:
openclaw statusแสดงว่า Gateway กำลังทำงาน- ช่องทางของคุณยังคงเชื่อมต่ออยู่(เช่น WhatsApp ไม่ต้องจับคู่ใหม่)
- แดชบอร์ดเปิดได้และแสดงเซสชันเดิม
- ไฟล์ใน workspace ของคุณ(หน่วยความจำ คอนฟิก) มีอยู่ครบ