Files
chill_notes/AI工程/Rclone管理WebDAV笔记.md
2026-04-21 19:53:31 +08:00

6.0 KiB
Executable File
Raw Permalink Blame History

Rclone 管理 WebDAV 笔记

使用 rclone 命令行工具管理 Obsidian WebDAV 服务器


实测成功!

rclone 可以连接你的 WebDAV 服务器!


安装 rclone

Linux/macOS/Windows

# 下载最新版本
curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
sudo mv rclone-*-linux-amd64/rclone /usr/local/bin/
sudo chmod +x /usr/local/bin/rclone
rm -rf rclone-*-linux-amd64*

# 验证安装
rclone --version

Docker 环境(无需安装)

# 直接下载二进制文件
wget https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
./rclone-v*-linux-amd64/rclone --version

配置 WebDAV 远程

1. 交互式配置

rclone config

# 步骤:
# n) 新建远程
# name: obsidian-webdav
# Storage: webdav
# URL: http://8.134.220.229:13803/实践积累
# vendor: other
# user: admin
# password: blackhill

2. 手动创建配置文件

mkdir -p ~/.config/rclone

cat > ~/.config/rclone/rclone.conf << 'EOF'
[obsidian-webdav]
type = webdav
url = http://8.134.220.229:13803/实践积累
vendor = other
user = admin
pass = blackhill
EOF

⚠️ 注意:某些 WebDAV 服务器不支持 Digest 认证,需要用 Basic 认证。

3. 测试连接

# 列出所有文件
rclone ls obsidian-webdav: --max-depth 5

# 列出所有文件夹
rclone lsd obsidian-webdav:

常用命令

查看文件

# 列出根目录
rclone ls obsidian-webdav:

# 列出指定目录
rclone ls obsidian-webdav:AI工程

# 递归列出所有文件
rclone ls obsidian-webdav: --max-depth 10

# 按大小排序显示
rclone ls obsidian-webdav: --max-depth 1 | sort -k1 -n

上传文件

# 上传单个文件
rclone copy /path/to/file.md obsidian-webdav:目标文件夹/

# 上传整个目录
rclone copy /path/to/folder obsidian-webdav:目标文件夹/

# 示例:上传到 AI工程 文件夹
rclone copy ~/笔记/AI工程.md obsidian-webdav:AI工程/

下载文件

# 下载单个文件
rclone copy obsidian-webdav:AI工程/code-reviewer技能.md /tmp/

# 下载整个文件夹
rclone copy obsidian-webdav:AI工程 /tmp/ai-folder/

同步本地与远程

# 同步本地文件夹到 WebDAV单向
rclone sync /path/to/local obsidian-webdav:remote --progress

# 双向同步(需要小心使用)
rclone bisync /path/to/local obsidian-webdav:remote --progress

删除文件

# 删除远程文件
rclone delete obsidian-webdav:文件夹/文件名.md

# 删除空文件夹
rclone rmdir obsidian-webdav:空文件夹/

搜索文件

# 搜索文件名包含关键字的文件
rclone ls obsidian-webdav: | grep "关键字"

# 搜索多个关键词
rclone ls obsidian-webdav: | grep -E "关键词1|关键词2"

挂载为本地目录(可选)

将 WebDAV 挂载为本地文件夹,像操作本地文件一样使用。

需要 FUSE 支持

# Debian/Ubuntu 安装 fuse
sudo apt-get install fuse

# 检查 FUSE 可用
cat /proc/filesystems | grep fuse

挂载命令

# 创建挂载点
mkdir -p ~/obsidian-webdav

# 前台运行(测试用)
rclone mount obsidian-webdav: ~/obsidian-webdav --vv

# 后台运行
rclone mount obsidian-webdav: ~/obsidian-webdav \
  --daemon \
  --vfs-cache-mode writes \
  --allow-other

# 查看挂载状态
df -h | grep obsidian

# 卸载
fusermount -uz ~/obsidian-webdav

开机自启systemd

cat > ~/.config/systemd/user/rclone-obsidian.service << 'EOF'
[Unit]
Description=rclone mount for Obsidian WebDAV
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/rclone mount obsidian-webdav: %h/obsidian-webdav \
  --vfs-cache-mode writes \
  --allow-other
ExecStop=/bin/fusermount -uz %h/obsidian-webdav
Restart=on-failure

[Install]
WantedBy=default.target
EOF

# 启用服务
systemctl --user enable rclone-obsidian.service
systemctl --user start rclone-obsidian.service

与 Obsidian Headless 配合使用

安装 rclone 后,可以配合 obsidian-headless 使用:

# 1. 挂载 WebDAV 为本地目录
rclone mount obsidian-webdav: ~/obsidian-webdav --daemon --vfs-cache-mode writes

# 2. 配置 obsidian-headless 使用该目录
echo "~/obsidian-webdav" > ~/.config/obsidian-headless/vault-path

# 3. 使用自然语言管理笔记
obs创建笔记 新想法
obs搜索笔记 关键字
obs列出所有

你的服务器配置

服务器: http://8.134.220.229:13803
路径: /实践积累
用户名: admin
密码: blackhill

常见问题

Q: 连接返回 401 Unauthorized

原因:某些 WebDAV 服务器不支持 Digest 认证

解决在配置文件中使用明文密码rclone 会自动处理)

pass = blackhill  # 不要加密

Q: 文件名中文乱码

解决:确保终端编码为 UTF-8

export LANG=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8

Q: 挂载后访问很慢

解决:使用 VFS 缓存模式

rclone mount obsidian-webdav: ~/obsidian-webdav \
  --vfs-cache-mode writes \
  --vfs-cache-max-age 168h \
  --vfs-write-back 5s

Q: 挂载占用大量内存

解决:限制缓存大小

rclone mount obsidian-webdav: ~/obsidian-webdav \
  --vfs-cache-mode writes \
  --buffer-size 256M

完整工作流示例

# 1. 配置远程
rclone config << 'EOF'
n
obsidian-webdav
webdav
http://8.134.220.229:13803/实践积累
other
admin
blackhill
y
EOF

# 2. 查看文件结构
rclone lsd obsidian-webdav:

# 3. 挂载为本地目录
mkdir -p ~/obsidian-webdav
rclone mount obsidian-webdav: ~/obsidian-webdav --daemon --vfs-cache-mode writes

# 4. 在 Obsidian 中直接使用
# 文件会自动同步到 WebDAV

# 5. 卸载
fusermount -uz ~/obsidian-webdav

参考链接