borg-mount(1) ابزار پشتیبان‌گیری بورگ borg-mount(1)

borg-mount - سوار کردن آرشیو یا کل مخزن به عنوان سیستم‌فایل FUSE

borg [گزینه‌های عمومی] mount [گزینه‌ها] REPOSITORY_OR_ARCHIVE MOUNTPOINT [PATH...]

این دستور یک مخزن یا یک آرشیو را به عنوان سیستم‌فایل FUSE سوار (mount) می‌کند. این قابلیت برای مرور یا بازیابی فایل‌های تکی مفید است.

هنگام بازیابی، توجه داشته باشید که پیاده‌سازی فعلی FUSE از فلگ‌های ویژه سیستم‌فایل و لیست‌های کنترل دسترسی (ACL) پشتیبانی نمی‌کند.

هنگام سوار کردن یک مخزن، نام دایرکتوری‌های سطح بالا مانند آرشیوها خواهد بود و ساختار دایرکتوری زیر آن‌ها هنگام ورود به این دایرکتوری‌ها بر حسب تقاضا از مخزن بارگذاری می‌شود؛ بنابراین مقداری تاخیر مورد انتظار است.

نکته:

بورگ پیوندهای نمادین را همان‌گونه که هستند ذخیره می‌کند. در نتیجه، هنگامی که یک آرشیو یا مخزن سوار می‌شود، پیوندهای نمادین ممکن است به مکان‌هایی خارج از نقطه اتصال (mountpoint) اشاره کنند، خواه به دلیل مطلق بودن آن‌ها باشد یا به دلیل اینکه پیوندهای نسبی به خارج از درخت سوارشده هدایت می‌شوند.

قوانین معمول تفکیک مسیر یونیکس اعمال می‌شود: بیشتر ابزارها به طور پیش‌فرض پیوندهای نمادین را دنبال می‌کنند و ممکن است به فایل‌ها یا دایرکتوری‌هایی دسترسی یابند که بخشی از آرشیو سوارشده نیستند. در نتیجه، عملیاتی که هدف آن‌ها بررسی داده‌های آرشیو شده است ممکن است در عوض به داده‌های «زنده» سیستم‌فایل میزبان دسترسی پیدا کنند.

در لینوکس، می‌توان با سوار کردن مجدد نقطه اتصال با استفاده از گزینه سوار کردن VFS به نام nosymfollow از این امر جلوگیری کرد؛ به عنوان مثال:

borg mount <repo path> <mountpoint> mount -o remount,nosymfollow <repo path> <mountpoint>

روش دیگر این است که از یک محیط ایزوله‌شده مناسب (مانند یک کانتینر یا chroot) به آرشیو سوارشده دسترسی پیدا کنید.

مگر اینکه گزینه --foreground مشخص شده باشد، این دستور در پس‌زمینه اجرا خواهد شد تا زمانی که سیستم‌فایل پیاده (unmount) شود.

نکاتی برای بهبود کارایی:

  • هنگام سوار کردن «کل مخزن»: اگر نیازی نیست وارد دایرکتوری‌های آرشیو نشوید؛ این کار مانع از بارگذاری بر حسب تقاضا می‌شود.
  • به جای کل مخزن، فقط یک آرشیو خاص را سوار کنید.
  • به جای کل آرشیو، فقط مسیرهای خاصی را در یک آرشیو معین سوار کنید.

دستور borgfs یک پوشش (wrapper) برای borg mount فراهم می‌کند. این دستور همچنین می‌تواند در ورودی‌های fstab استفاده شود:

/path/to/repo /mnt/point fuse.borgfs defaults,noauto 0 0

برای اجازه دادن به کاربر عادی جهت استفاده از ورودی‌های fstab، گزینه user را اضافه کنید:

/path/to/repo /mnt/point fuse.borgfs defaults,noauto,user 0 0

برای پیکربندی FUSE و گزینه‌های سوار کردن، صفحه راهنمای mount.fuse(8) را ببینید.

رفتار پیش‌فرض بورگ این است که از نام‌های کاربری و گروه آرشیوشده برای هر فایل استفاده کرده و آن‌ها را به شناسه‌های کاربری و گروه متناظر در سیستم نگاشت کند. در غیر این صورت، استفاده از numeric-ids باعث می‌شود شناسه‌های کاربری و گروه آرشیوشده بدون هیچ‌گونه نگاشتی استفاده شوند.

گزینه‌های سوار کردن uid و gid (پیاده‌سازی‌شده توسط بورگ) می‌توانند برای بازنویسی شناسه‌های کاربری و گروه تمام فایل‌ها استفاده شوند (مثلاً borg mount -o uid=1000,gid=1000).

صفحه راهنما به گزینه‌های سوار کردن user_id و group_id (پیاده‌سازی‌شده توسط FUSE) اشاره دارد که شناسه کاربری و گروه مالک نقطه اتصال (یعنی کاربری که عمل سوار کردن را انجام می‌دهد) را تعیین می‌کنند. این مقدار به صورت خودکار توسط libfuse (یا در صورت عدم استفاده از libfuse، توسط سیستم‌فایل) تنظیم می‌شود. با این حال، نباید این گزینه‌ها را دستی مشخص کنید. برخلاف گزینه‌های uid و gid که بر تمامی فایل‌ها تأثیر می‌گذارند، user_id و group_id بر شناسه کاربر و گروه دایرکتوری پایه سوارشده اثر می‌گذارند.

گزینه‌های سوار کردن اضافی پشتیبانی‌شده توسط بورگ:

  • versions: هنگامی که همراه با سوار کردن مخزن استفاده شود، یک نمای ادغام‌شده و نسخه‌بندی‌شده از فایل‌ها در آرشیوها ارائه می‌دهد. آزمایشی (EXPERIMENTAL)؛ طرح‌بندی ممکن است در آینده تغییر کند.
  • allow_damaged_files: به طور پیش‌فرض فایل‌های آسیب‌دیده (که در آن‌ها تکه‌های مفقود توسط borg check --repair با صفرهای متوالی جایگزین شده‌اند) قابل خواندن نیستند و خطای EIO (خطای ورودی/خروجی) برمی‌گردانند. این گزینه را برای خواندن چنین فایل‌هایی تنظیم کنید.
  • ignore_permissions: به دلایل امنیتی، گزینه سوار کردن default_permissions به صورت داخلی توسط بورگ اعمال می‌شود. گزینه ignore_permissions می‌تواند تعیین شود تا default_permissions اجبار نشود.

متغیر محیطی BORG_MOUNT_DATA_CACHE_ENTRIES برای کاربران پیشرفته جهت بهینه‌سازی کارایی طراحی شده است. این متغیر تعداد تکه‌های داده کش‌شده را تعیین می‌کند؛ مصرف حافظه اضافی می‌تواند تا حدود ۸ مبی‌بایت ضرب در این عدد باشد. مقدار پیش‌فرض برابر با تعداد هسته‌های پردازنده است.

هنگامی که فرآیند دیمون‌شده سیگنالی دریافت می‌کند یا متوقف می‌شود (crash)، سیستم‌فایل پیاده (unmount) نمی‌شود. پیاده‌سازی در این شرایط ممکن است باعث شود یک فرآیند فعال rsync یا مشابه آن به طور ناخواسته داده‌ها را حذف کند.

هنگام اجرا در پیش‌زمینه، ترکیب ^C/SIGINT سیستم‌فایل را به صورت تمیز پیاده می‌کند، اما سایر سیگنال‌ها یا خرابی‌ها چنین نمی‌کنند.

اشکال‌زدایی:

دستور borg mount معمولاً به صورت دیمون اجرا می‌شود و فرآیند دیمون خروجی‌های stdout/stderr را به /dev/null ارسال می‌کند. بنابراین، یا باید از گزینه -f / --foreground استفاده کنید تا در پیش‌زمینه بماند و دیمون نشود، یا از BORG_LOGGING_CONF برای پیکربندی مجدد ثبت‌کننده لاگ جهت خروجی به یک فایل استفاده نمایید.

برای مشاهده گزینه‌های عمومی دستورات بورگ، به borg-common(1) مراجعه کنید.

مخزن یا آرشیو برای سوار کردن
محل سوار کردن سیستم‌فایل
مسیرها برای استخراج؛ الگوها پشتیبانی می‌شوند

نمایش آرشیوهای چک‌پوینت در فهرست محتویات مخزن (پیش‌فرض: مخفی).
ماندن در پیش‌زمینه، دیمون نشود
گزینه‌های سوار کردن اضافی
منسوخ شده است، به جای آن از --numeric-ids استفاده کنید
استفاده از شناسه‌های عددی کاربر و گروه از آرشیو(ها)

تنها در نظر گرفتن نام‌های آرشیوی که با این پیشوند آغاز می‌شوند. (منسوخ شده)
تنها در نظر گرفتن نام‌های آرشیوی که با الگوی glob مطابقت دارند. قواعد sh: اعمال می‌شوند (بدون نیاز به استفاده واقعی از پیشوند sh:)، به «borg help patterns» مراجعه کنید.
فهرست جداشده با کاما از کلیدهای مرتب‌سازی؛ کلیدهای معتبر عبارتند از: timestamp، archive، name، id؛ پیش‌فرض: timestamp
در نظر گرفتن N آرشیو اول پس از اعمال سایر فیلترها
در نظر گرفتن N آرشیو آخر پس از اعمال سایر فیلترها

مستثنی کردن مسیرهای منطبق بر PATTERN
خواندن الگوهای استثنا از EXCLUDEFILE، یک الگو در هر خط
گنجاندن/مستثنی کردن مسیرهای منطبق بر PATTERN
خواندن الگوهای گنجاندن/استثنا از PATTERNFILE، یک الگو در هر خط
حذف تعداد مشخص‌شده از بخش‌های ابتدایی مسیر. مسیرهایی با بخش‌های کمتر بدون اعلان نادیده گرفته می‌شوند.

borg-common(1), borg-umount(1), borg-extract(1)

گروه بورگ (The Borg Collective)

2026-07-18