macOS 上自動化備份 Obsidian Vault
在 macOS 上自動化備份 Obsidian Vault 的方法:使用內建的 rsync
編寫腳本,以及使用圖形化工具 FreeFileSync 設定排程。
1. 使用 rsync
編寫腳本 (macOS 內建)
rsync
是一個強大的命令行工具,用於檔案同步和備份。你可以編寫一個 Shell 腳本來自動執行備份。
步驟:
開啟「終端機」應用程式 (
/應用程式/工具程式/終端機.app
)。創建一個新的腳本檔案:
nano ~/backup_obsidian.sh
在腳本檔案中輸入以下內容(請替換為你的實際路徑):
#!/bin/bash # 設定你的 Obsidian Vault 路徑 vault_path="/Users/你的使用者名稱/你的ObsidianVault資料夾名稱" # 設定你的備份目標路徑 (例如外接硬碟上的資料夾) backup_path="/Volumes/你的外接硬碟名稱/ObsidianBackup" # 確保備份目標路徑存在,如果不存在則創建它 mkdir -p "$backup_path" # 使用 rsync 進行備份 rsync -av "$vault_path/" "$backup_path/" echo "Obsidian Vault 備份完成於 $(date)"
儲存並關閉腳本 (
Ctrl + O
,Enter
,Ctrl + X
)。使腳本可執行:
chmod +x ~/backup_obsidian.sh
設定自動執行 (使用
launchd
):
創建或編輯~/Library/LaunchAgents/com.yourname.backupobsidian.plist
檔案,內容如下(請替換你的使用者名稱和腳本路徑):<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "[http://www.apple.com/DTDs/PropertyList-1.0.dtd](http://www.apple.com/DTDs/PropertyList-1.0.dtd)"> <plist version="1.0"> <dict> <key>Label</key> <string>com.yourname.backupobsidian</string> <key>ProgramArguments</key> <array> <string>/Users/你的使用者名稱/backup_obsidian.sh</string> </array> <key>StartInterval</key> <integer>86400</integer> <key>StandardErrorPath</key> <string>/tmp/backup_obsidian.err</string> <key>StandardOutPath</key> <string>/tmp/backup_obsidian.log</string> </dict> </plist>
載入
launchd
配置:launchctl load ~/Library/LaunchAgents/com.yourname.backupobsidian.plist
2. 使用 FreeFileSync 設定排程
FreeFileSync 是一個免費的圖形化檔案同步軟體。
步驟:
下載並安裝 FreeFileSync (https://freefilesync.org/)。
開啟 FreeFileSync 並設定同步對(來源為 Obsidian Vault,目標為備份位置)。
設定同步模式(建議「更新」或「鏡像」)。
儲存設定為
.ffs_batch
檔案。設定排程 (使用 macOS 的
open
命令和launchd
):- 創建執行批次檔的腳本 (
~/run_ffs_backup.sh
):#!/bin/bash /Applications/FreeFileSync.app/Contents/MacOS/FreeFileSync "/Users/你的使用者名稱/ObsidianBackup.ffs_batch"
- 使腳本可執行 (
chmod +x ~/run_ffs_backup.sh
)。 - 使用
launchd
設定排程(創建或編輯plist
檔案,指向你的腳本)。 - 載入
launchd
配置 (launchctl load ...
)。
- 創建執行批次檔的腳本 (