Các lỗi thường gặp khi cài đặt và chạy, kèm cách khắc phục.
Xác minh lần cuối: 2026-02-20.
Triệu chứng:
- bootstrap thoát với lỗi
cargo is not installed
Khắc phục:
./bootstrap.sh --install-rustHoặc cài từ https://rustup.rs/.
Triệu chứng:
- build thất bại do lỗi trình biên dịch hoặc
pkg-config
Khắc phục:
./bootstrap.sh --install-system-depsTriệu chứng:
cargo build --releasebị kill (signal: 9, OOM killer, hoặccannot allocate memory)- Build vẫn lỗi sau khi thêm swap vì hết dung lượng ổ đĩa
Nguyên nhân:
- RAM lúc chạy (<5MB) khác xa RAM lúc biên dịch.
- Build đầy đủ từ mã nguồn có thể cần 2 GB RAM + swap và 6+ GB dung lượng trống.
- Bật swap trên ổ nhỏ có thể tránh OOM RAM nhưng vẫn lỗi vì hết dung lượng.
Cách tốt nhất cho máy hạn chế tài nguyên:
./bootstrap.sh --prefer-prebuiltChế độ chỉ dùng binary (không build từ nguồn):
./bootstrap.sh --prebuilt-onlyNếu bắt buộc phải build từ nguồn trên máy yếu:
- Chỉ thêm swap nếu còn đủ dung lượng cho cả swap lẫn kết quả build.
- Giới hạn số luồng build:
CARGO_BUILD_JOBS=1 cargo build --release --locked- Bỏ bớt feature nặng khi không cần Matrix:
cargo build --release --locked --no-default-features --features hardware- Cross-compile trên máy mạnh hơn rồi copy binary sang máy đích.
Triệu chứng:
cargo check/cargo builddừng lâu ởChecking zeroclaw- Lặp lại thông báo
Blocking waiting for file lock on package cachehoặcbuild directory
Nguyên nhân:
- Thư viện Matrix E2EE (
matrix-sdk,ruma,vodozemac) lớn và tốn thời gian kiểm tra kiểu. - TLS + crypto native build script (
aws-lc-sys,ring) tăng thời gian biên dịch đáng kể. rusqlitevới SQLite tích hợp biên dịch mã C cục bộ.- Chạy nhiều cargo job/worktree song song gây tranh chấp file lock.
Kiểm tra nhanh:
cargo check --timings
cargo tree -dBáo cáo thời gian được ghi tại target/cargo-timings/cargo-timing.html.
Lặp nhanh hơn khi không cần kênh Matrix:
cargo check --no-default-features --features hardwareLệnh này bỏ qua channel-matrix và giảm đáng kể thời gian biên dịch.
Build với Matrix:
cargo check --no-default-features --features hardware,channel-matrixGiảm tranh chấp lock:
pgrep -af "cargo (check|build|test)|cargo check|cargo build|cargo test"Dừng các cargo job không liên quan trước khi build.
Triệu chứng:
- Cài đặt thành công nhưng shell không tìm thấy
zeroclaw
Khắc phục:
export PATH="$HOME/.cargo/bin:$PATH"
which zeroclawThêm vào shell profile nếu cần giữ lâu dài.
Kiểm tra:
zeroclaw status
zeroclaw doctorXác minh ~/.zeroclaw/config.toml:
[gateway].host(mặc định127.0.0.1)[gateway].port(mặc định3000)allow_public_bindchỉ bật khi cố ý mở truy cập LAN/public
Kiểm tra:
- Đảm bảo đã hoàn tất ghép nối (luồng
/pair) - Đảm bảo bearer token còn hiệu lực
- Chạy lại chẩn đoán:
zeroclaw doctorNguyên nhân:
- Nhiều poller dùng chung bot token
Khắc phục:
- Chỉ giữ một runtime đang chạy cho token đó
- Dừng các tiến trình
zeroclaw daemon/zeroclaw channel startthừa
Kiểm tra:
zeroclaw channel doctorSau đó xác minh thông tin xác thực và trường allowlist cho từng kênh trong config.
Kiểm tra:
zeroclaw service statusKhôi phục:
zeroclaw service stop
zeroclaw service startXem log trên Linux:
journalctl --user -u zeroclaw.service -fCả hai cách vẫn hoạt động:
curl -fsSL https://zeroclawlabs.ai/install.sh | bash
curl -fsSL https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/main/scripts/install.sh | bashinstall.sh vẫn là điểm vào tương thích, chuyển tiếp/dự phòng về hành vi bootstrap cho các tài liệu/link cũ.
Thu thập và đính kèm các thông tin sau khi tạo issue:
zeroclaw --version
zeroclaw status
zeroclaw doctor
zeroclaw channel doctorKèm thêm: hệ điều hành, cách cài đặt, và đoạn config đã ẩn bí mật.