# Sünkroniseerimine

Ülevaade sellest, kuidas Obsidian vault'i (`/home/ardo/Obsidian`) sünkroniseeritakse ja varundatakse.

## Kolm tasandit

| Tasand | Tööriist | Eesmärk | Sagedus |
|---|---|---|---|
| Sünkroonimine | Syncthing | sama vault kõigil seadmetel reaalajas | pidev |
| Versiooniajalugu | git + Gogs | iga muudatuse ajalugu ja taastamine | cron 3× päevas |
| Pilvevarukoopia | rclone → Google Drive | väljaspool võrku asuv koopia | iganädalane (hetkel välja lülitatud) |

## 1. Syncthing (seadmetevaheline sünk)

- Vault root: `/home/ardo/Obsidian` (Syncthing folder `lnezu-6ydtr`)
- Seadmed, mis vault'i jagavad (Syncthing folderi konfigist):

| Seade | Syncthing ID | Märkused |
|---|---|---|
| ohmu | `GSDQWFK-...` | Linux, see masin |
| edgar | `GDLHKGG-...` | Windows |
| nothing | `JGBETCA-...` | Android |
| huawei | `AAMJNO4-...` | telefon |
| tango | `KPKEOUZ-...` | server |
| hetzner | `QAICOJB-...` | server, vt [[Tehniline/Serverid/hetzner]] |
| suitsusaun | `CZHF5MJ-FLADRD6-TT7YUQ7-FUJZRWA-ZIXNC27-5UD4WY2-TYFVP3F-ECWOLAG` | varukoopiaserver (RPi 5), saab vault'i ohmu-lt |

- Syncthing GUI: `http://100.87.1.24:8384` (ohmu Tailscale IP)
- **suitsusaun** peerib ainult ohmu-ga (saab vault'i temalt); kaust lokaalselt: `/mnt/nvme-slot/@suitsaun/syncthing/obsidian`
- **`.stignore` reeglid** (fail `vault/.stignore`):
  - `(?d).obsidian` — iga seadme Obsidian'i konfiguratsioon on lokaalne, ei sünkroniseerita
  - `(?d).git` — git repo ainult ohmu-l, ei sünkroniseerita (muidu lähevad .git failid seadmetega konflikti)
  - `**/*-shm`, `**/*-wal`, `**/*-journal`, `**/sync-conflict-*` — SQLite ajutised ja konfliktifailid
  - `opencode.db`, `storage/` — opencode lokaalne andmebaas
- **Kontroll**: teiste seadmete vault kaustas ei tohi olla `.git` ega teiste seadmete `.obsidian` sisu.

## 2. git + Gogs (versiooniajalugu)

- Repo: `https://gogs.odamus.com/ardo/Obsidian.git` — hoidla asub [[Tehniline/Serverid/Gogs (odamus)|Gogs (odamus)]]
- Remote on HTTPS koos tunnustega (vt `.git/config` failist — parooli märkmetesse ei kirjutata)
- Haru: `master` (ka Gogs-i default haru)
- **Varundusskript**: `/home/ardo/scripts/obsidian_backup.sh`
  - commitib kõik muudatused ajatempliga (`varundus YYYY-MM-DD HH:MM`) ja pushib
  - **cron**: kell 08:00, 14:00 ja 20:00 (3× päevas)
  - logi: `/home/ardo/scripts/obsidian_backup.log`
- **`.gitignore`** (mida versioonihaldus ei puuduta):
  - `.obsidian/` — pluginad ja seadmed erinevad OS-i lõikes
  - `.trash/`, `.stfolder/`, `.stignore` — Syncthing/prügikast
  - `.opencode/`, `.smart-env/`, `.pandoc/` — tööriistade konfigid
  - `desktop.ini`, `.DS_Store`, `Thumbs.db`, `*.tmp` — platvormifailid
  - `**/*sync-conflict*`, ajutised SQLite failid
- **`.gitattributes`**: `* text=auto` — Windows'i CRLF normaliseeritakse LF-iks, diff'id jäävad puhtaks
- **Taastamine** (kui vault kõikidelt seadmetelt kaob):
  ```
  git clone https://gogs.odamus.com/ardo/Obsidian.git
  ```
  Sealt tuleb kogu ajalugu.
- **Kontroll**: `git -C /home/ardo/Obsidian log --oneline -5` — viimased commitid; `tail /home/ardo/scripts/obsidian_backup.log` — cron'i tulemused.

## 3. rclone → Google Drive (pilvevarukoopia)

- Iganädalane varukoopia kogu vault'ist: `rclone sync /home/ardo/Obsidian gdrive:rclone/tango/Obsidian`
- Cron kirje on hetkel **kommenteeritud** välja (`#45 23 * * 6`), aruanne saadeti meilile.
- Taaskäivitamine: eemalda `#` cronist.

## Muudatused

| Kuupäev | Muudatus |
|---|---|
| 2026-08-02 | Git varundus üles seatud: repo gogs-is, cron 3× päevas, `.stignore`-sse `(?d).git` lisatud, remote HTTPS-ina |
| 2026-08-11 | suitsusaun lisatud seadmete tabelisse (peer ainult ohmu-ga, kaust `/mnt/nvme-slot/@suitsaun/syncthing/obsidian`) |
