Raspberry Pi vault from scratch

Goal: a Pi running on your home network that hosts your Obsidian vault, accessed from your laptop via this plugin. About 30 minutes including the Pi OS install.

Hardware + OS

  • Pi 4 / Pi 5 (4 GB RAM is plenty). Pi Zero 2 W works for small vaults.
  • 32 GB+ microSD or (better) a USB-attached SSD.
  • Raspberry Pi OS (Bookworm) or Ubuntu Server 22.04+ for arm64.

Flash with Raspberry Pi Imager. Under the gear icon, set:

  • Hostname: obsidian-vault.local (anything; pick something memorable)
  • Enable SSH: yes, with public-key auth using your existing public key
  • Wi-Fi credentials (or wire it ethernet)

Boot the Pi, wait ~60 seconds.

First connect from your laptop

Verify SSH works from your normal terminal first:

ssh pi@obsidian-vault.local

If that’s good, you’re done with Pi setup — the plugin needs nothing else on the remote yet. Make a vault directory:

ssh pi@obsidian-vault.local 'mkdir -p ~/notes'

Add the profile in the plugin

SettingsRemote SSHAdd profile:

FieldValue
Profile namePi vault
Hostobsidian-vault.local (or the Pi’s IP)
Port22
Usernamepi
AuthenticationSSH agent (recommended) or your private key path
Remote vault path/home/pi/notes (or ~/notes)
ModeDaemon (deploys helper on connect) (lower latency than the SFTP default)

Click Save, then connect from the command palette: “Remote SSH: Connect” → pick Pi vault.

The plugin uploads the daemon binary (~5 MB), starts it, opens a shadow vault window. First connect ~5–8 s; subsequent connects ~1 s.

Make the daemon outlive plugin reconnects

Optional, but worth it for a Pi you’ll keep on 24/7. Put the daemon under systemd so it survives plugin restarts and Pi reboots — see systemd-managed daemon.

Check it’s working from the other side

Edit a note in Obsidian, then on the Pi:

ls -lt ~/notes | head

Your latest edit should be on top with a recent mtime.

See also