# rclone / Docker / FileBrowser 排查命令手册
> 整理自 2026-09-16 的排查过程,涵盖 rclone 挂载、卸载、Docker 容器查询、FileBrowser 路径定位等。
---
## 一、rclone 挂载相关
### 1. 挂载远程到本地
```bash
rclone mount 远程名:/ /mnt/挂载点 --daemon --vfs-cache-mode minimal
| 参数 | 作用 |
|---|---|
远程名:/ |
rclone config 里配好的远程,:/ 表示根目录 |
/mnt/挂载点 |
本地挂载目录 |
--daemon |
后台运行 |
--vfs-cache-mode |
缓存模式:off / minimal / writes / full |
推荐完整命令:
rclone mount 远程名:/ /mnt/挂载点 \
--daemon \
--vfs-cache-mode full \
--vfs-cache-max-size 10G \
--vfs-cache-max-age 24h \
--allow-other \
--log-file /var/log/rclone.log \
--log-level INFO
2. 查看挂载状态
mount | grep rclone # 所有 rclone 挂载
mount | grep /mnt/挂载点 # 指定挂载点
findmnt /mnt/挂载点 # 更清晰的输出
ps aux | grep rclone | grep -v grep # 查进程
3. 卸载挂载点
fusermount -uz /mnt/挂载点 # 优先
umount -l /mnt/挂载点 # 上面失败时用
pkill -9 -f "rclone mount 远程名" # 杀残留进程
判断是否卸载干净:
mount | grep /mnt/挂载点 # 无输出 = 干净
ps aux | grep rclone | grep -v grep # 无输出 = 进程也没了
4. rclone 配置管理
rclone config # 交互式配置
rclone config delete 远程名 # 删除远程配置
rclone listremotes # 列出所有远程
rclone lsd 远程名:/ # 列目录(验证连接)
5. 用 rclone 查文件(比挂载点遍历快)
rclone lsd 远程名:/ # 只列目录
rclone lsf 远程名:/ --recursive # 递归列文件(相对路径)
rclone lsl 远程名:/ --recursive # 递归列文件(含大小时间)
rclone size 远程名:/ # 统计总大小
rclone lsf 远程名:/ --recursive --include "*.mp4" # 只找 mp4
导出文件索引到本地:
rclone lsf 远程名:/ --recursive > /root/index.txt
rclone lsl 远程名:/ --recursive > /root/index.txt
6. rclone 复制/移动(比挂载点 cp 更稳)
rclone copy 远程名:/文件 /root/ # 从远程下载
rclone copy /root/文件 远程名:/目录 # 上传到远程
rclone copy 远程名:/a 远程名:/b # 远程内部复制
rclone move 远程名:/a 远程名:/b # 远程内部移动
rclone copy 远程名:/文件 /root/ -P # 显示进度
二、Docker 容器查询
1. 查看容器
docker ps # 运行中的容器
docker ps -a # 所有容器(含停止)
docker ps -a | grep 关键词 # 按名字过滤
docker images # 镜像列表
2. 查容器挂载路径(最常用)
docker inspect 容器名或ID --format '{{ range .Mounts }}{{ .Source }} -> {{ .Destination }}{{ "\n" }}{{ end }}'
输出示例:
/home/docker/filebrowser/config -> /config
/home/docker/filebrowser/data -> /data
左边是宿主机路径,右边是容器内路径。
不用 --format 的写法:
docker inspect 容器名 | grep -A 20 "Mounts"
3. 查容器其他信息
# 查启动命令
docker inspect 容器名 --format '{{ .Config.Cmd }} {{ .Config.Entrypoint }}'
# 查环境变量
docker inspect 容器名 --format '{{ range .Config.Env }}{{ . }}{{ "\n" }}{{ end }}'
# 查网络和 IP
docker inspect 容器名 --format '{{ range $net, $conf := .NetworkSettings.Networks }}{{ $net }} {{ $conf.IPAddress }}{{ "\n" }}{{ end }}'
# 查完整 JSON(格式化)
docker inspect 容器名 | python3 -m json.tool
4. 容器操作
docker start 容器名
docker stop 容器名
docker restart 容器名
docker rm -f 容器名 # 删除容器
docker logs 容器名 # 看日志
docker logs -f 容器名 # 实时看日志
docker exec -it 容器名 sh # 进容器
docker stats --no-stream # 看资源占用
三、FileBrowser 相关
容器信息(本次实例)
| 项 | 值 |
|---|---|
| 容器 ID | ca3d6c66a290 |
| 镜像 | hurlenko/filebrowser |
| 端口 | 0.0.0.0:8092->8080/tcp |
| 宿主机文件目录 | /home/docker/filebrowser/data |
| 宿主机配置目录 | /home/docker/filebrowser/config |
挂载关系
/home/docker/filebrowser/data -> /data # 上传的文件
/home/docker/filebrowser/config -> /config # 数据库、配置
常用操作
# 看上传的文件
ls -lh /home/docker/filebrowser/data
# 直接往里面丢文件,FileBrowser 里就能看到
cp 你的文件 /home/docker/filebrowser/data/
四、Linux 通用技巧
1. 管道 + 过滤(最常用)
命令 | grep 关键词 # 从输出里找
命令 | grep -i 关键词 # 忽略大小写
命令 | grep -A 20 关键词 # 显示匹配行及后 20 行
命令 | grep -B 20 关键词 # 显示匹配行及前 20 行
命令 | grep -C 20 关键词 # 前后各 20 行
2. 输出截取
命令 | head -n 20 # 前 20 行
命令 | tail -n 20 # 后 20 行
tail -f 日志文件 # 实时看日志
命令 | wc -l # 统计行数
3. 排序去重
命令 | sort # 排序
命令 | sort -u # 排序去重
命令 | sort -h # 按人类可读大小排序
4. 进程查找
ps aux | grep 关键词 | grep -v grep # grep -v 排除自身
五、重要原则
- 对 rclone 挂载点,别用
find/du,会疯狂发请求,用rclone lsf/rclone size - 删目录前,必须确认挂载已卸载:
mount | grep 挂载点无输出才能删 docker inspect+--format是查容器一切的关键- 命令拆开跑:先跑前半段,确认对了再接管道
- 不懂就
--help或man
六、本次结论速查
| 你的问题 | 答案 |
|---|---|
| p.alist 挂载删了吗 | 已卸载,mount 无输出 |
| FileBrowser 上传目录 | /home/docker/filebrowser/data |
| FileBrowser 配置目录 | /home/docker/filebrowser/config |
| 查文件大小用什么 | rclone size,别用 du |
| 挂载点查文件用什么 | rclone lsf,别用 find |
这就是完整的 Markdown 文档。你可以直接全选复制,保存成 `rclone-docker-命令手册.md`。
需要我再补充哪一块?比如:
- 把 `grep` / `sed` / `awk` 三剑客单独展开
- 加一个 Docker 排查专题
- 加一个 rclone 优化参数详解