| SNBK(8) | Filesystem Snapshot Management | SNBK(8) |
نام (NAME)
snbk - برنامه خط فرمانی برای پشتیبانگیری از اسنپشاتهای snapper
خلاصه دستور (SYNOPSIS)
snbk [--global-opts] command [command-arguments]
snbk {--help}
شرح (DESCRIPTION)
برنامه snbk یک برنامه خط فرمانی برای پشتیبانگیری از اسنپشاتهای snapper است. این برنامه میتواند اسنپشاتهای پشتیبان را روی فایلسیستمهای محلی و دوردست btrfs منتقل و حذف کند.
مفاهیم (CONCEPTS)
پیکربندیهای پشتیبانگیری (Backup Configurations)
به ازای هر پیکربندی snapper میتواند چندین پیکربندی پشتیبانگیری وجود داشته باشد. هر پیکربندی پشتیبانگیری، پشتیبانهای اسنپشاتهای snapper را در یک مکان، محلی یا دوردست تعریف میکند؛ برای تنظیمات ممکن snapper-backup-configs(5) را ببینید.
وضعیتهای اسنپشات (Snapshot Statuses)
هر اسنپشات دارای وضعیتی در مبدا و مقصد است. مقادیر ممکن برای مبدا عبارتند از:
(empty)
read-only
read-write
مقادیر ممکن برای مقصد عبارتند از:
(empty)
valid
invalid
legacy
بصریسازی (Visualization)
برنامه snbk دستور visualize را برای تولید گرافها در قالب DOT ابزار Graphviz به منظور بصریسازی فراهم میکند. در حال حاضر، تولید نمودارهای درختی برای اسنپشاتها در هر دو سمت مبدا و مقصد پشتیبانی میشود. خروجی دستور را میتوان به ابزارهای Graphviz هدایت (pipe) کرد تا یک تصویر تولید شود.
در اینجا نمونهای از تولید نمودار درختی برای اسنپشاتها در سمت مبدا با پیکربندی پشتیبانگیری 'root' آورده شده است:
# snbk -b root visualize source-tree | dot -T png -o root-source-tree.png
در نمودار درختی برای اسنپشاتها، یک گره دارای ویژگیهای virtual و valid است. یک گره مجازی (virtual) به این معنی است که زیرحجم (subvolume) متناظر Btrfs توسط یک اسنپشات Snapper مدیریت نمیشود. یک گره معتبر (valid) یعنی گره در هر دو سمت مبدا و مقصد وجود دارد، و میتواند به عنوان والد ارسال (send parent) معتبر Btrfs جهت کاهش فضای مصرفی دیسک در طول انتقال یا بازگردانی اسنپشات استفاده شود. گره ریشه نمودار یک گره مجازی تخصصی است که زیرحجم Btrfs نیست و نشاندهنده فایلسیستم Btrfs در مبدا یا مقصد است.
گزینههای عمومی (GLOBAL OPTIONS)
-q, --quiet
-v, --verbose
--debug
--utc
--iso
-t, --table-style style
--machine-readable format
--csvout
--jsonout
--separator character
--no-headers
-b, --backup-config name
--no-dbus
با احتیاط استفاده شود.
--target-mode name
--automatic
--version
دستورات (COMMANDS)
برنامه snbk تعدادی دستور ارائه میدهد. هر دستور گزینههای فهرستشده در بخش «گزینههای عمومی (GLOBAL OPTIONS)» را میپذیرد. این گزینهها باید قبل از نام دستور مشخص شوند. علاوه بر این، بسیاری از دستورات آرگومانهای ویژهای دارند که در این بخش فهرست شدهاند. این آرگومانهای اختصاصی دستور باید بعد از نام دستور مشخص شوند.
help
list-configs
list (ls)
transfer [number]
restore [number]
delete (remove|rm) [number]
transfer-and-delete
visualize [options] mode
-r, --rankdir rankdir
source-tree
target-tree
بازگردانی (RESTORE)
اسنپشاتها را میتوان با استفاده از دستور restore بازگرداند. روشهای بیشتری نیز برای انجام بازگردانی وجود دارد؛ برای نمونه میتوان نسخه پشتیبان را سوار (mount) کرده و سپس کپی نمود یا از rsync استفاده کرد.
در اینجا مثالی درباره نحوه استفاده دستی از btrfs send و receive برای بازگردانی یک اسنپشات در سیستم مبدا ارائه میشود. بهطور کلی استفاده از btrfs send و receive کمی پیچیده است.
هنگام استفاده از target-mode local:
# mkdir /.snapshots/42 # cp /backups/root/42/info.xml /.snapshots/42/ # btrfs send /backups/root/42/snapshot | btrfs receive /.snapshots/42
هنگام استفاده از target-mode ssh-push:
# mkdir /.snapshots/42 # scp backups.example.com:/backups/eberich/root/42/info.xml /.snapshots/42 # ssh backups.example.com btrfs send /backups/eberich/root/42/snapshot | btrfs receive /.snapshots/42
اگر سیستم مجدداً نصب شده باشد، متأسفانه معمولاً نمیتوان بهسادگی از اسنپشات بازگرداندهشده به عنوان اسنپشات پیشفرض جدید استفاده کرد، چرا که برخی فایلها، مانند /etc/fstab، احتمالاً نیاز به تغییر دارند. همچنین متأسفانه برای زیرحجمهایی غیر از root قابلیت عقبگرد (rollback) پشتیبانی نمیشود.
اگر برای سرعت بخشیدن به عملیات اسنپشاتهایی در مبدا وجود داشته باشد، میتوانید از گزینه -p برای btrfs send نیز استفاده کنید.
نکات (NOTES)
محتوای اسنپشاتهای منتقلشده نباید در سیستم مبدا تغییر داده شود. معمولاً از آنجا که اسنپشاتها فقطخواندنی هستند از این بابت اطمینان حاصل میشود. اما تغییر اسنپشاتها به حالت خواندنی-نوشتنی امکانپذیر است. این کار میتواند در آینده در طول انتقالها باعث بروز خطا شود.
دسترسیها (PERMISSIONS)
از آنجا که target-mode ssh-push به مجوزهای ریشه (root) در مقصد نیاز دارد، توصیه میشود از یک ماشین یا کانتینر اختصاصی به عنوان مقصد استفاده شود.
فایلها (FILES)
/etc/snapper/backup-configs
وضعیت خروج (EXIT STATUS)
در حالت عادی وضعیت خروج 0 است. در صورت بروز خطا وضعیت خروج 1 خواهد بود.
صفحه خانگی (HOMEPAGE)
نویسندگان (AUTHORS)
Arvin Schnell <aschnell@suse.com>
همچنین ببینید (SEE ALSO)
snapper-backup-configs(5), snapper(8), btrfs-send(8), btrfs-receive(8) rsync(1), sshfs(1)
پینوشتها (NOTES)
- 1.
- RFC 4180
| 2026-01-16 | 0.13.1 |