Previously, when no standard WSL distro was available, Method B only created an empty sparse file without ext4 formatting. This caused Ventoy to fail mounting persistence.dat on boot, dropping to initramfs. Now Method B tries docker-desktop WSL (/sbin/mkfs.ext4) before falling back to raw file. Also added ext4 magic number (0xEF53) verification step. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.8 KiB
2.8 KiB
Handoff Document — U-Claw Linux Remote Access
Current Status
- U盘已就绪:Ventoy + Ubuntu 24.04 ISO + persistence + u-claw-linux scripts
- 所有源码已推送到 GitHub main 分支
- website/guide.html 已添加快速命令参考卡片
- enable-ssh.sh 已添加到 bootable/linux-setup/
Linux 启动后需要做的事
- 从 U 盘启动 → Ventoy 菜单选 Ubuntu
- 如果首次使用,格式化持久化:
然后重启
sudo bash /media/*/Ventoy/u-claw-linux/format-persistence.sh - 连接 WiFi
- 安装 OpenClaw:
sudo bash /media/*/Ventoy/u-claw-linux/setup-openclaw.sh - 启用 SSH(让 Mac mini 远程控制):
sudo bash /media/*/Ventoy/u-claw-linux/enable-ssh.sh
SSH 连接信息
- 用户名: ubuntu (Live USB 默认用户)
- 密码: 运行 enable-ssh.sh 时设置
- IP 地址: 运行 enable-ssh.sh 后会显示,格式类似 192.168.x.x
- 前提: 两台机器在同一个 WiFi/局域网下
Mac mini Claude Code 接手方法
- 用户在 Linux 上运行
enable-ssh.sh,获取 IP 和设置密码 - 用户告诉 Mac mini 上的 Claude Code:IP 地址和密码
- Mac mini Claude Code 通过 Bash 工具执行:
或建立持久连接进行调试
ssh ubuntu@<IP> 'command'
文件位置(Linux 上)
| 路径 | 说明 |
|---|---|
/media/*/Ventoy/u-claw-linux/ |
U 盘上的脚本 |
/opt/u-claw/ |
安装后的 OpenClaw |
/opt/u-claw/start-openclaw.sh |
启动脚本 |
/opt/u-claw/data/.openclaw/openclaw.json |
配置文件 |
注意事项
- Live USB 每次重启后,除了持久化分区内的数据,其他都会重置
- SSH server 需要每次重启后重新安装(除非持久化生效)
- 持久化生效后,apt 安装的包会保留
2026-03-17 修复:persistence.dat 未格式化导致启动失败
问题
- U 盘上的
persistence.dat(20GB)是空文件,没有 ext4 文件系统 3-create-persistence.ps1因无可用标准 WSL,走了 Method B,只创建了稀疏空文件- Ventoy 启动 Ubuntu → 读 ventoy.json → 尝试挂载空的 persistence.dat → mount 失败 → 卡在 initramfs
修复过程
- 用 docker-desktop WSL 的
/sbin/mkfs.ext4格式化:- 在 WSL 内创建稀疏文件:
dd if=/dev/zero of=/tmp/persistence.dat bs=1M count=0 seek=20480 - 格式化:
/sbin/mkfs.ext4 -F -L casper-rw /tmp/persistence.dat - 复制到 C: → 移动到 E:(因为 docker-desktop WSL 无法直接访问 E: 盘)
- 在 WSL 内创建稀疏文件:
- 验证:offset 1080 处读到
53 EF(little-endian0xEF53),确认 ext4 有效
代码改进
3-create-persistence.ps1Method B 现在会尝试 docker-desktop WSL 格式化- 添加了 ext4 magic number 验证步骤
- 只有在完全没有任何 WSL 时才降级为未格式化的空文件