[[معرفی Obsidian Sync|Obsidian Sync]] یک کلاینت بدون رابط کاربری برای همگامسازی گاوصندوقها بدون استفاده از اپلیکیشن دسکتاپ ارائه میدهد. مناسب برای خطوط لوله CI، عاملها و جریانهای کاری خودکار. آخرین تغییرات را همگامسازی کنید یا فایلها را بهطور مداوم بهروز نگه دارید.
[[Obsidian بدون رابط کاربری]] **(بتای عمومی)** را نصب کنید تا از طریق خط فرمان و بدون اپلیکیشن دسکتاپ Obsidian با [[معرفی Obsidian Sync|Obsidian Sync]] تعامل داشته باشید. همگامسازی بدون رابط کاربری از همان [[امنیت و حریم خصوصی|حفاظتهای رمزگذاری و حریم خصوصی]] اپلیکیشن دسکتاپ استفاده میکند، از جمله رمزگذاری سرتاسری.
## آغاز سریع
> [!error] قبل از شروع از دادههای خود پشتیبان بگیرید
> 1. همیشه قبل از شروع از دادههای خود پشتیبان بگیرید تا در صورت بروز هرگونه مشکل غیرمنتظره آماده باشید.
> 2. از همگامسازی اپلیکیشن دسکتاپ و همگامسازی بدون رابط کاربری *همزمان* در یک دستگاه استفاده نکنید، زیرا ممکن است باعث تداخل دادهها شود. در هر دستگاه فقط از یک روش همگامسازی استفاده کنید.
[[Obsidian بدون رابط کاربری|Obsidian Headless]] **(بتای عمومی)** را نصب کنید:
```shell
npm install -g obsidian-headless
```
شما باید یک [[طرحها و محدودیتهای فضای ذخیرهسازی|اشتراک فعال Obsidian Sync]] داشته باشید.
```shell
# ورود
ob login
# لیست خزانههای راهدور شما
ob sync-list-remote
# راهاندازی یک گاوصندوق برای همگامسازی
cd ~/vaults/my-vault
ob sync-setup --vault "My Vault"
# اجرای یکبار همگامسازی
ob sync
# اجرای همگامسازی مداوم (نظارت بر تغییرات)
ob sync --continuous
```
## دستورات
### `ob sync-list-remote`
لیست تمام خزانههای راهدور موجود برای حساب شما، شامل گاوصندوقهای مشترک.
### `ob sync-list-local`
لیست گاوصندوقهای پیکربندیشده محلی و مسیرهای آنها.
### `ob sync-create-remote`
ساختن یک گاو صندوق راه دور جدید.
```
ob sync-create-remote --name "Vault Name" [--encryption <standard|e2ee>] [--password <password>] [--region <region>]
```
| گزینه | توضیحات |
| --- | --- |
| `--name` | نام خزانه (الزامی) |
| `--encryption` | `standard` برای رمزگذاری مدیریتشده، `e2ee` برای رمزگذاری سرتاسری |
| `--password` | گذرواژهی رمزگذاری سرتاسری (در صورت عدم وارد کردن، درخواست میشود) |
| `--region` | [[مناطق Sync|منطقه]] سرور (در صورت عدم وارد کردن، خودکار) |
### `ob sync-setup`
راهاندازی همگامسازی بین یک گاوصندوق محلی و یک گاو صندوق راه دور.
```
ob sync-setup --vault <id-or-name> [--path <local-path>] [--password <password>] [--device-name <name>] [--config-dir <name>]
```
| گزینه | توضیحات |
| --- | --- |
| `--vault` | شناسه یا نام گاو صندوق راه دور (الزامی) |
| `--path` | مسیر محلی (پیشفرض: مسیر فعلی) |
| `--password` | گذرواژهی رمزگذاری سرتاسری (در صورت عدم وارد کردن، درخواست میشود) |
| `--device-name` | نام دستگاه نمایشدادهشده در [[تاریخچهی نسخهها|تاریخچهی نسخهها همگامسازی]] |
| `--config-dir` | نام [[پوشه پیکربندی|پوشه پیکربندی]] (پیشفرض: `.obsidian`) |
### `ob sync`
اجرای همگامسازی برای یک گاوصندوق پیکربندیشده.
```
ob sync [--path <local-path>] [--continuous]
```
| گزینه | توضیحات |
| --- | --- |
| `--path` | مسیر گاوصندوق محلی (پیشفرض: مسیر فعلی) |
| `--continuous` | اجرای مداوم، نظارت بر تغییرات |
### `ob sync-config`
مشاهده یا تغییر [[تنظیمات همگامسازی و همگامسازی گزینشی|تنظیمات همگامسازی]] برای یک گاوصندوق. بدون گزینه اجرا کنید تا پیکربندی فعلی نمایش داده شود.
```
ob sync-config [--path <local-path>] [options]
```
| گزینه | توضیحات |
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--path` | مسیر گاوصندوق محلی (پیشفرض: مسیر فعلی) |
| `--mode` | حالت همگامسازی: `bidirectional` (پیشفرض)، `pull-only` (فقط بارگیری، نادیده گرفتن تغییرات محلی)، یا `mirror-remote` (فقط بارگیری، بازگرداندن تغییرات محلی) |
| `--conflict-strategy` | `merge` یا `conflict` |
| `--file-types` | انواع پیوست برای همگامسازی: `image`، `audio`، `video`، `pdf`، `unsupported` (جداشده با کاما، خالی برای پاک کردن) |
| `--configs` | دستهبندیهای پیکربندی برای همگامسازی: `app`، `appearance`، `appearance-data`، `hotkey`، `core-plugin`، `core-plugin-data`، `community-plugin`، `community-plugin-data` (جداشده با کاما، خالی برای غیرفعال کردن) |
| `--excluded-folders` | پوشههای مستثنی (جداشده با کاما، خالی برای پاک کردن) |
| `--device-name` | نام دستگاه برای شناسایی این کلاینت در تاریخچهی نسخهها همگامسازی |
| `--config-dir` | نام پوشه پیکربندی (پیشفرض: `.obsidian`) |
### `ob sync-status`
نمایش وضعیت همگامسازی و پیکربندی برای یک گاوصندوق.
```
ob sync-status [--path <local-path>]
```
### `ob sync-unlink`
قطع اتصال یک گاوصندوق از همگامسازی و حذف اعتبارنامههای ذخیرهشده.
```
ob sync-unlink [--path <local-path>]
```
## ماژولهای بومی
Obsidian Headless شامل یک افزونه بومی از پیشساختهشده برای تنظیم زمان ایجاد فایل (birthtime) در ویندوز و macOS است. این قابلیت، مهرهای زمانی اصلی ایجاد را هنگام بارگیری فایلها از سرور حفظ میکند.
این افزونه نسخه N-API 3 را هدف قرار میدهد، بنابراین باینریهای کامپایلشده از نظر ABI پایدار هستند و بدون نیاز به کامپایل مجدد در نسخههای مختلف Node.js کار میکنند.
در لینوکس، birthtime پشتیبانی نمیشود — افزونه شامل نمیشود و همگامسازی بدون آن بهطور عادی عمل میکند.
باینریهای از پیشساختهشده برای موارد زیر موجود است:
- `win32-x64`
- `win32-arm64`
- `win32-ia32`
- `darwin-x64`
- `darwin-arm64`