.\" Automatically generated by Pandoc 3.10.2 .\" .TH "bup\-split" "1" "2026\-09\-01" "Bup 0.34+" .SH "نام (NAME)" bup\-split \- ذخیره فایل‌های مجزا در مجموعه‌های پشتیبان bup .SH "خلاصه دستور (SYNOPSIS)" bup split [\-t] [\-c] [\-n \f[I]name\f[R]] COMMON_OPTIONS .PP bup split \-b COMMON_OPTIONS .PP bup split \(encopy COMMON_OPTIONS .PP bup split \(ennoop [\-t|\-b] COMMON_OPTIONS .TP COMMON_OPTIONS [\-r \f[I]host\f[R]:\f[I]path\f[R]] [\-v] [\-q] [\-d \f[I]seconds\-since\-epoch\f[R]] [\-\-bench] [\-\-max\-pack\-size=\f[I]bytes\f[R]] [\-#] [\-\-bwlimit=\f[I]bytes\f[R]] [\-\-max\-pack\-objects=\f[I]n\f[R]] [\-\-fanout=\f[I]count\f[R]] [\-\-keep\-boundaries] [\-\-git\-ids | filenames\&...] .SH "توضیحات (DESCRIPTION)" دستور \f[CR]bup split\f[R] محتویات فایل‌های ارائه‌شده را به هم پیوند می‌دهد (یا اگر نام فایلی داده نشود، از ورودی استاندارد stdin می‌خواند)، محتوا را با استفاده از یک الگوریتم جمع کنترلی غلتان (rolling checksum) به تکه‌های حدود ۸ کیلوبایتی تقسیم می‌کند و تکه‌ها را در یک مخزن bup ذخیره می‌نماید. تکه‌هایی که قبلاً ذخیره شده‌اند مجدداً ذخیره نمی‌شوند (یعنی «حذف داده‌های تکراری» یا deduplicated می‌شوند). .PP به دلیل نحوه عملکرد جمع کنترلی غلتان، تکه‌ها در برابر تغییرات در یک فایل معین، از جمله افزودن، حذف و تغییر بایت‌ها، بسیار پایدار هستند. .PP برای مثال، اگر از \f[CR]bup split\f[R] برای پشتیبان‌گیری از یک دامپ XML از یک پایگاه داده استفاده کنید، و فایل XML از یک اجرا به اجرای بعدی کمی تغییر کند، تقریباً تمام داده‌ها همچنان بدون تغییر و تکراری شناسایی می‌شوند و اندازه هر نسخه پشتیبان پس از نسخه اول معمولاً بسیار کوچک خواهد بود. .PP روش دیگر، هدایت خروجی برنامه‌های \f[CR]tar\f[R](1) یا \f[CR]cpio\f[R](1) به \f[CR]bup split\f[R] است. هنگامی که تک تک فایل‌های موجود در tarball اندکی تغییر می‌کنند یا اضافه و حذف می‌شوند، bup همچنان باقی‌مانده tarball را به طور کارآمد پردازش می‌کند. (البته توجه داشته باشید که معمولاً \f[CR]bup save\f[R] روش کارآمدتری برای دستیابی به این هدف است). .PP برای بازیابی داده‌ها، از \f[CR]bup\-join\f[R](1) استفاده کنید. .SH "حالت‌ها (MODES)" این گزینه‌ها رفتار اصلی دستور را انتخاب می‌کنند که \-n محتمل‌ترین انتخاب است. .TP \-n, \-\-name=\f[I]name\f[R] پس از ایجاد مجموعه داده، یک شاخه گیت به نام \f[I]name\f[R] ایجاد می‌کند تا بتوان با آن نام به آن دسترسی داشت. اگر \f[I]name\f[R] از قبل وجود داشته باشد، مجموعه داده جدید از نوادگان \f[I]name\f[R] قدیمی در نظر گرفته می‌شود. (بنابراین، می‌توانید مرتباً مجموعه‌داده‌های جدید با یک نام بسازید و بعداً تاریخچه آن مجموعه داده را ببینید تا روند تغییرات در طول زمان را مشاهده کنید.) داده اصلی همچنین به عنوان یک فایل سطح بالا به نام \(lqdata\(rq در VFS در دسترس خواهد بود که از طریق \f[CR]bup fuse\f[R]، \f[CR]bup ftp\f[R] و غیره قابل دسترسی است. .TP \-t, \-\-tree شناسه درخت گیت (git tree id) حاصل از مجموعه داده را خروجی می‌دهد. .TP \-c, \-\-commit شناسه کامیت گیت (git commit id) حاصل از مجموعه داده را خروجی می‌دهد. .TP \-b, \-\-blobs مجموعه‌ای از شناسه‌های حباب گیت (git blob ids) مربوط به تکه‌های موجود در مجموعه داده را خروجی می‌دهد. ناسازگار با \-n، \-t، و \-c. .TP \-\-noop داده‌ها را می‌خواند و بر اساس الگوریتم مجموع کنترلی غلتان \(lqbupsplit\(rq آن را به بلوک‌ها تقسیم می‌کند، اما چیزی در مخزن ذخیره نمی‌کند. می‌تواند با \-b یا \-t ترکیب شود تا blobها یا شناسه‌های درخت گیت را برای مجموعه داده محاسبه (اما ذخیره نکند). این عمدتاً برای بنچمارک و اعتبارسنجی الگوریتم bupsplit مفید است. ناسازگار با \-n و \-c. .TP \-\-copy مشابه \f[CR]\-\-noop\f[R]، اما داده‌ها را در خروجی استاندارد (stdout) نیز می‌نویسد. این می‌تواند برای بنچمارک سرعت read+bupsplit+write برای مقادیر زیادی از داده‌ها مفید باشد. ناسازگار با \-n، \-t، \-c، و \-b. .SH "گزینه‌ها (OPTIONS)" .TP \-r, \-\-remote=[\f[I]user\f[R]\(at]\f[I]host\f[R]:[\f[I]path\f[R]], \-\-remote=URL تقسیم و ارسال داده‌ها به مخزن راه دور مشخص‌شده، به‌طور پیش‌فرض از طریق SSH. برای اطلاعات بیشتر بخش REMOTE OPTIONS در bup(1) را ببینید. .TP \-d, \-\-date=\f[I]seconds\-since\-epoch\f[R] تاریخ درج‌شده در کامیت را مشخص می‌کند (ثانیه‌ها از 1970\-01\-01). .TP \-q, \-\-quiet غیرفعال کردن پیام‌های پیشرفت. .TP \-v, \-\-verbose افزایش سطح پرگویی و جزئیات (می‌توان بیش از یک بار استفاده کرد). .TP \-\-git\-ids ورودی استاندارد به‌جای داده خام، فهرستی از شناسه‌های شیء گیت است. دستور \f[CR]bup split\f[R] محتوای هر شیء نام‌برده گیت را (در صورت وجود در مخزن bup) می‌خواند و آن را تقسیم می‌کند. این ممکن است برای تبدیل مخزن گیت دارای فایل‌های باینری بزرگ برای استفاده از تقسیم درهم‌سازی به سبک bup مفید باشد. این گزینه احتمالاً در ترکیب با \f[CR]\-\-keep\-boundaries\f[R] بیشترین فایده را دارد. .TP \-\-keep\-boundaries اگر چندین نام فایل در خط فرمان داده شود، آنها معمولاً به هم پیوند داده می‌شوند، گویی محتوا از یک فایل واحد آمده است. یعنی مجموعه blobها/درخت‌های تولیدشده با آنچه در صورت وجود یک فایل ورودی واحد تولید می‌شد یکسان است. اما با استفاده از \f[CR]\-\-keep\-boundaries\f[R]، هر فایل به طور جداگانه تقسیم می‌شود. شما همچنان یک درخت، کامیت یا مجموعه‌ای از blobها دریافت می‌کنید، اما هر blob فقط از یکی از فایل‌ها به دست می‌آید؛ پایان یک فایل ورودی همیشه پایان یک blob است. .TP \-\-bench چاپ زمان‌بندی‌های بنچمارک در خروجی خطای استاندارد (stderr). .TP \-\-max\-pack\-size=\f[I]bytes\f[R] هرگز فایل‌های بسته‌بندی گیت (packfiles) بزرگتر از تعداد بایت داده‌شده ایجاد نکنید. پیش‌فرض ۱ میلیارد بایت است. معمولاً دلیلی برای تغییر آن وجود ندارد. .TP \-\-max\-pack\-objects=\f[I]numobjs\f[R] هرگز فایل‌های بسته‌بندی با بیش از تعداد اشیاء مشخص‌شده نسازید. پیش‌فرض ۲۰۰ هزار شیء است. معمولاً دلیلی برای تغییر آن وجود ندارد. .TP \-\-fanout=\f[I]numobjs\f[R] هنگام تقسیم فایل‌های بسیار بزرگ، سعی کنید میانگین تعداد عناصر در درخت‌ها را روی \f[I]numobjs\f[R] نگه دارید. .TP \-\-bwlimit=\f[I]bytes/sec\f[R] بیش از \f[I]bytes/sec\f[R] بایت در ثانیه به سرور منتقل نکنید. این برای جلوگیری از بلعیدن تمام پهنای باند شبکه شما توسط پشتیبان‌گیری‌ها مناسب است. از پسوندهایی مانند k، M، یا G به ترتیب برای مضارب ۱۰۲۴، ۱۰۲۴*۱۰۲۴، ۱۰۲۴*۱۰۲۴*۱۰۲۴ استفاده کنید. .TP \-\f[I]#\f[R], \-\-compress=\f[I]#\f[R] سطح فشرده‌سازی را روی # تنظیم می‌کند (مقداری از 0 تا 9، که 9 بالاترین و 0 بدون فشرده‌سازی است). پیش‌فرض به مقادیر پیکربندی‌شده pack.compression یا core.compression، یا 1 (فشرده‌سازی سریع و شل) است. .SH "مثال‌ها (EXAMPLES)" .IP .EX $ tar \-cf \- /etc | bup split \-r myserver: \-n mybackup\-tar tar: Removing leading /\(aq from member names Indexing objects: 100% (196/196), done. $ bup join \-r myserver: mybackup\-tar | tar \-tf \- | wc \-l 1961 .EE .SH "همچنین ببینید (SEE ALSO)" \f[CR]bup\-join\f[R](1), \f[CR]bup\-index\f[R](1), \f[CR]bup\-save\f[R](1), \f[CR]bup\-on\f[R](1), \f[CR]ssh_config\f[R](5) .SH "درباره BUP (BUP)" بخشی از مجموعه \f[CR]bup\f[R](1). .SH "نویسندگان (AUTHORS)" Avery Pennarun \c .MT apenwarr@gmail.com .ME \c.