Skip to content

Instantly share code, notes, and snippets.

@sunnydsouza
Forked from agmm/obsidian-ios-sync.md
Created April 22, 2024 09:33
Show Gist options
  • Save sunnydsouza/1a31368497cfc181b00ecc43ad4417dc to your computer and use it in GitHub Desktop.
Save sunnydsouza/1a31368497cfc181b00ecc43ad4417dc to your computer and use it in GitHub Desktop.
How to sync Obsidian Notes on iOS

⚠️ To prevent data loss make sure you understand how rclone sync and rclone copy work.

How to sync Obsidian Notes on iOS

  1. Download iSH from the AppStore

  2. Open iSH and install rclone and nano with the following command:

apk add rclone nano
  1. Create a new remote using
rclone config
  1. Open your .profile file to add the push and pull commands
nano ~/.profile
  1. Add the following lines to your profile
pull() {
    rclone sync -P "REMOTE_NAME:NOTES_PATH" ~/Notes
}

push() {
    rclone copy -P ~/Notes "REMOTE_NAME:NOTES_PATH"
}
  1. Create a directory to mount your notes on iSH
mkdir ~/Notes
  1. Mount the Obsidian folder on iOS to the iSH app. After running the following command a file selection dialog will appear, select your local Obsidian vault.
mount -t ios . ~/Notes
  1. Restart the shell by quitting the iSH app or executing exit.

  2. Run pull to sync the notes from your remote machine to the iOS device. Run push to upload the files on the iOS device to the remote machine.

Notes

Note that the pull command will perform an rclone sync action instead of an rclone copy. An rclone sync will make the iOS vault identical to the remote, this means that it will delete any file on the local vault that is not present on the remote.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment