SNAPPER-CONFIGS(5) مدیریت اسنپ‌شات‌های فایل‌سیستم SNAPPER-CONFIGS(5)

snapper-configs - فایل‌های پیکربندی برای تنظیمات snapper

هر فایل در مسیر /etc/snapper/configs/* یک پیکربندی snapper را شرح می‌دهد.

فهرست زیر متغیرهایی هستند که می‌توانند در فایل پیکربندی وجود داشته باشند. مقادیر بولی باید "yes" یا "no" باشند.

SUBVOLUME=path

مسیر زیرحجم (subvolume) یا نقطه اتصال (mount point).

مقدار پیش‌فرضی وجود ندارد. مقدار باید همیشه مشخص شود.

FSTYPE=value

نوع فایل‌سیستم برای زیرحجم.

مقدار پیش‌فرض "btrfs" است اما توصیه می‌شود نوع فایل‌سیستم همیشه مشخص شود.

QGROUP=qgroup

گروه سهمیه‌بندی (quota group) btrfs که برای الگوریتم‌های پاک‌سازی حساس به فضا استفاده می‌شود.

تنها در btrfs پشتیبانی می‌شود.

SPACE_LIMIT=float or size

آستانه بیشینه فضایی که اسنپ‌شات‌ها می‌توانند روی فایل‌سیستم استفاده کنند. هنگامی که اسنپ‌شات‌ها از این حد فراتر روند (خواه کسری از کل فایل‌سیستم یا مقداری مطلق باشد)، snapper در جریان عملیات پاک‌سازی اسنپ‌شات‌های قدیمی‌تر را حذف خواهد کرد. مقدار مطلق باید از لوکال C استفاده کند.

تنها در btrfs پشتیبانی می‌شود.

مقدار پیش‌فرض "0.5" (۵۰٪ کل فایل‌سیستم) است.

از نسخه 0.3.0 اضافه شده، مقدار مطلق از نسخه 0.9.0 اضافه شده است.

FREE_LIMIT=float or size

آستانه کمینه فضای خالی که باید روی فایل‌سیستم باقی بماند. هنگامی که فضای خالی به زیر این حد برسد (خواه کسری از کل فایل‌سیستم یا مقداری مطلق باشد)، snapper در جریان عملیات پاک‌سازی اسنپ‌شات‌های قدیمی‌تر را برای آزادسازی فضا حذف خواهد کرد. مقدار مطلق باید از لوکال C استفاده کند.

تنها در btrfs پشتیبانی می‌شود.

مقدار پیش‌فرض "0.2" (۲۰٪ کل فایل‌سیستم) است.

از نسخه 0.8.0 اضافه شده، مقدار مطلق از نسخه 0.9.0 اضافه شده است.

ALLOW_USERS=users

فهرستی از کاربرانی که مجاز به کار با این پیکربندی هستند. نام‌های کاربری باید با فاصله از هم جدا شوند. فاصله‌ها در نام‌های کاربری را می‌توان با یک "\" اسکیپ کرد.

همچنین بخش PERMISSIONS را در snapper(8) ببینید.

از استفاده از کاربران شبکه‌ای باید خودداری شود، زیرا در زمان قطعی شبکه می‌تواند اکثر دستورات از جمله rollback را مختل کند.

مقدار پیش‌فرض "" است اما کاربر "root" همیشه به صورت ضمنی گنجانده شده است.

ALLOW_GROUPS=groups

فهرستی از گروه‌هایی که مجاز به کار با این پیکربندی هستند. نام‌های گروه‌ها باید با فاصله از هم جدا شوند. فاصله‌ها در نام‌های گروه‌ها را می‌توان با یک "\" اسکیپ کرد.

همچنین بخش PERMISSIONS را در snapper(8) ببینید.

از استفاده از گروه‌های شبکه‌ای باید خودداری شود، زیرا در زمان قطعی شبکه می‌تواند اکثر دستورات از جمله rollback را مختل کند.

مقدار پیش‌فرض "" است.

SYNC_ACL=boolean

مشخص می‌کند که آیا snapper کاربران و گروه‌های موجود در ALLOW_USERS و ALLOW_GROUPS را با ACL دایرکتوری .snapshots همگام‌سازی کند یا خیر.

همچنین بخش PERMISSIONS را در snapper(8) ببینید.

مقدار پیش‌فرض "no" است.

از نسخه 0.2.0 اضافه شده است.

BACKGROUND_COMPARISON=boolean

مشخص می‌کند که آیا اسنپ‌شات‌های pre و post پس از ایجاد در پس‌زمینه با یکدیگر مقایسه شوند یا خیر.

مقدار پیش‌فرض "yes" است.

COMPRESSION=algorithm

الگوریتم فشرده‌سازی مورد استفاده برای ذخیره فهرست فایل‌ها را مشخص می‌کند. مقادیر مجاز "none" و "gzip" هستند. بسته به کتابخانه‌های نصب‌شده، ممکن است برخی الگوریتم‌های فشرده‌سازی در دسترس نباشند.

مقدار پیش‌فرض "gzip" است.

از نسخه 0.10.1 اضافه شده است.

NUMBER_CLEANUP=boolean

مشخص می‌کند که آیا الگوریتم پاک‌سازی بر پایه تعداد (number cleanup) برای این پیکربندی اجرا شود یا خیر.

مقدار پیش‌فرض "no" است.

NUMBER_MIN_AGE=seconds

حداقل سن اسنپ‌شات‌ها بر حسب ثانیه جهت واجد شرایط بودن برای حذف توسط الگوریتم پاک‌سازی بر پایه تعداد.

مقدار پیش‌فرض "3600" است.

NUMBER_LIMIT=number or range

مشخص می‌کند که الگوریتم پاک‌سازی بر پایه تعداد چه تعداد اسنپ‌شات را باید نگه دارد. جدیدترین اسنپ‌شات‌ها حفظ خواهند شد.

مقدار پیش‌فرض "50" است.

NUMBER_LIMIT_IMPORTANT=number or range

مشخص می‌کند که الگوریتم پاک‌سازی بر پایه تعداد چه تعداد اسنپ‌شات مهم را باید نگه دارد. اسنپ‌شات‌های مهم در داده‌های کاربری (userdata) دارای important=yes هستند. جدیدترین اسنپ‌شات‌های مهم حفظ خواهند شد.

تعداد اسنپ‌شات‌های عادی و مهم به صورت مستقل شمرده می‌شود.

مقدار پیش‌فرض "10" است.

از نسخه 0.1.8 اضافه شده است.

TIMELINE_CREATE=boolean

مشخص می‌کند که آیا اسنپ‌شات‌های ساعتی ایجاد شوند یا خیر.

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

مقدار پیش‌فرض "no" است.

TIMELINE_CLEANUP=boolean

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

مقدار پیش‌فرض "no" است.

TIMELINE_MIN_AGE=seconds

حداقل سن اسنپ‌شات‌ها بر حسب ثانیه جهت واجد شرایط بودن برای حذف توسط الگوریتم پاک‌سازی خط زمانی.

مقدار پیش‌فرض "3600" است.

TIMELINE_LIMIT_HOURLY=number or range

مشخص می‌کند که الگوریتم پاک‌سازی خط زمانی چه تعداد اسنپ‌شات ساعتی را باید نگه دارد. اسنپ‌شات ساعتی اولین اسنپ‌شات در طول یک ساعت است. جدیدترین اسنپ‌شات‌های ساعتی حفظ خواهند شد.

مقدار پیش‌فرض "10" است.

TIMELINE_LIMIT_DAILY=number or range

مشخص می‌کند که الگوریتم پاک‌سازی خط زمانی چه تعداد اسنپ‌شات روزانه را باید نگه دارد. اسنپ‌شات روزانه اولین اسنپ‌شات در طول یک روز است. جدیدترین اسنپ‌شات‌های روزانه حفظ خواهند شد.

مقدار پیش‌فرض "10" است.

TIMELINE_LIMIT_WEEKLY=number or range

مشخص می‌کند که الگوریتم پاک‌سازی خط زمانی چه تعداد اسنپ‌شات هفتگی را باید نگه دارد. اسنپ‌شات هفتگی اولین اسنپ‌شات در طول یک هفته است. جدیدترین اسنپ‌شات‌های هفتگی حفظ خواهند شد. مطابق با استاندارد ISO 8601 هفته‌ها از دوشنبه آغاز می‌شوند.

مقدار پیش‌فرض "0" است.

TIMELINE_LIMIT_MONTHLY=number or range

مشخص می‌کند که الگوریتم پاک‌سازی خط زمانی چه تعداد اسنپ‌شات ماهانه را باید نگه دارد. اسنپ‌شات ماهانه اولین اسنپ‌شات در طول یک ماه است. جدیدترین اسنپ‌شات‌های ماهانه حفظ خواهند شد.

مقدار پیش‌فرض "10" است.

TIMELINE_LIMIT_QUARTERLY=number or range

مشخص می‌کند که الگوریتم پاک‌سازی خط زمانی چه تعداد اسنپ‌شات فصلی (سه‌ماهه) را باید نگه دارد. اسنپ‌شات فصلی اولین اسنپ‌شات در طول یک فصل است. جدیدترین اسنپ‌شات‌های فصلی حفظ خواهند شد.

مقدار پیش‌فرض "0" است.

TIMELINE_LIMIT_YEARLY=number or range

مشخص می‌کند که الگوریتم پاک‌سازی خط زمانی چه تعداد اسنپ‌شات سالانه را باید نگه دارد. اسنپ‌شات سالانه اولین اسنپ‌شات در طول یک سال است. جدیدترین اسنپ‌شات‌های سالانه حفظ خواهند شد.

مقدار پیش‌فرض "10" است.

EMPTY_PRE_POST_CLEANUP=boolean

مشخص می‌کند که آیا الگوریتم پاک‌سازی پیش/پس خالی (empty-pre-post) برای این پیکربندی اجرا شود یا خیر.

مقدار پیش‌فرض "no" است.

EMPTY_PRE_POST_MIN_AGE=seconds

حداقل سن اسنپ‌شات‌ها بر حسب ثانیه جهت واجد شرایط بودن برای حذف توسط الگوریتم پاک‌سازی پیش/پس خالی.

مقدار پیش‌فرض "3600" است.

برخی از انواع مورد استفاده برای متغیرها شایسته توضیح هستند.

range

محدوده‌ای از اعداد که به صورت min-value-max-value، مانند "10-20" مشخص می‌شود.

qgroup

یک qgroup مربوط به btrfs به شکل استاندارد level-id، مانند "1/0".

مقادیر پیش‌فرض ذکر شده در اینجا مقادیری هستند که snapper در صورت عدم وجود مدخل در فایل پیکربندی از آن‌ها استفاده می‌کند. برخی از آن‌ها با مقادیر موجود در الگوی فایل پیکربندی یکسان نیستند.

http://snapper.io

Arvin Schnell <aschnell@suse.com>

snapper(8), snapperd(8)

2022-07-12 0.13.1