.\" Automatically generated by Pandoc 3.10.2 .\" .TH "bup\-midx" "1" "2026\-09\-01" "Bup 0.34+" .SH "نام (NAME)" bup-midx \- ایجاد یک ایندکس چندگانه (midx) از فایل‌های ایندکس بسته bup .SH "خلاصه دستور (SYNOPSIS)" bup midx [\-o \f[I]outfile\f[R]] <\-a|\-f|\f[I]idxnames\f[R]\&...> .SH "توضیحات (DESCRIPTION)" دستور \f[CR]bup midx\f[R] یک فایل ایندکس چندگانه (\f[CR].midx\f[R]) از یک یا چند فایل ایندکس بسته گیت (\f[CR].idx\f[R]) ایجاد می‌کند. .PP نکته: دیگر نباید نیازی به اجرای دستی این دستور داشته باشید. این دستور به طور خودکار توسط \f[CR]bup\-save\f[R](1) و دستورات مشابه اجرا می‌شود. .SH "گزینه‌ها (OPTIONS)" .TP \-o, \-\-output=\f[I]filename.midx\f[R] استفاده از نام فایل خروجی ارائه‌شده برای فایل \f[CR].midx\f[R]. مقدار پیش‌فرض به صورت خودکار ایجاد می‌شود. .TP \-a, \-\-auto تولید خودکار فایل‌های \f[CR].midx\f[R] جدید برای هر یک از فایل‌های \f[CR].idx\f[R] که مناسب باشد. .TP \-f, \-\-force اجبار به ایجاد یک فایل \f[CR].midx\f[R] جدید و منفرد شامل \f[I]تمام\f[R] فایل‌های \f[CR].idx\f[R] شما، حتی اگر فایل‌های \f[CR].midx\f[R] دیگری از قبل وجود داشته باشند. این امر موجب سریع‌ترین عملکرد پشتیبان‌گیری خواهد شد، اما ممکن است اجرای آن زمان زیادی ببرد. .TP \-\-dir=\f[I]packdir\f[R] مشخص کردن دایرکتوری حاوی فایل‌های \f[CR].idx\f[R]/\f[CR].midx\f[R] جهت پردازش. مقدار پیش‌فرض \f[CR]$BUP_DIR/objects/pack\f[R] است. .TP \-\-max\-files حداکثر تعداد فایل‌های \f[CR].idx\f[R] برای باز کردن به طور همزمان. اگر تعداد توصیف‌کننده‌های فایل (file descriptors) در دسترس شما بسیار کم است، می‌توانید از این گزینه استفاده کنید تا midx بتواند کار خود را (اگرچه احتمالاً به شکل غیربهینه) به پایان برساند، حتی اگر نتواند همه فایل‌های \f[CR].idx\f[R] شما را به طور همزمان باز کند. مقدار پیش‌فرض این گزینه برای بیشتر کاربران مناسب خواهد بود. .TP \-\-check اعتبارسنجی یک فایل \f[CR].midx\f[R] از طریق اطمینان حاصل کردن از این‌که تمامی اشیاء موجود در فایل‌های \f[CR].idx\f[R] دربرگرفته‌شده، درون \f[CR].midx\f[R] وجود دارند. ممکن است برای اشکال‌زدایی مفید باشد. .SH "مثال‌ها (EXAMPLES)" .IP .EX $ bup midx \-a Merging 21 indexes (2278559 objects). Table size: 524288 (17 bits) Reading indexes: 100.00% (2278559/2278559), done. midx\-b66d7c9afc4396187218f2936a87b865cf342672.midx .EE .SH "بحث و بررسی (DISCUSSION)" به طور پیش‌فرض، bup از فایل‌های بسته (pack) با قالب گیت استفاده می‌کند که شامل یک فایل pack (حاوی اشیاء) و یک فایل idx (حاوی فهرستی مرتب‌شده از نام‌های اشیاء و آفست‌های آن‌ها در فایل .pack) هستند. .PP فایل‌های idx معمولی راحت هستند زیرا به این معنی است که می‌توانید از \f[CR]git\f[R](1) برای دسترسی به مجموعه‌داده‌های پشتیبان خود استفاده کنید. با این حال، زمانی که تعداد زیادی بسته بسیار بزرگ داشته باشید (چیزی که معمولاً در گیت وجود ندارد، اما در bup زیاد دیده می‌شود)، فایل‌های idx می‌توانند کند شوند. .PP فایل‌های \f[CR].midx\f[R] در bup از یک فهرست مرتب‌شده واحد از تمامی اشیاء موجود در تمام فایل‌های .pack که به آن‌ها ارجاع دارد تشکیل شده‌اند. این فهرست را می‌توان با جستجوی دودویی در حدود log2(m) مرحله جستجو کرد، که در آن m تعداد کل اشیاء است. .PP جهت افزایش بیشتر سرعت جستجو، فایل‌های midx همچنین دارای یک جدول توزیع (fanout table) با اندازه متغیر هستند که n مرحله نخست جستجوی دودویی را کاهش می‌دهد. به کمک این جدول توزیع، bup می‌تواند تنها با یک بار جستجو تعیین کند که شناسه یک شیء معین (در صورت وجود) در کدام صفحه از فایل midx قرار خواهد داشت. بدین ترتیب، جستجوهای متداول تنها نیاز به بارگذاری دو صفحه خواهند داشت: یکی برای جدول توزیع، و دیگری برای شناسه شیء. .PP فایل‌های midx بیشترین کاربرد را هنگام ایجاد پشتیبان‌های جدید دارند، زیرا جستجو برای یک شیء ناموجود در مخزن، لزوماً نیازمند جستجو در \f[I]تمام\f[R] فایل‌های ایندکس است تا اطمینان حاصل شود که وجود ندارد. (جستجو برای اشیائی که وجود \f[I]دارند\f[R] را می‌توان بهینه‌سازی کرد؛ به عنوان مثال، اشیاء متوالی معمولاً در همان بسته ذخیره می‌شوند، بنابراین می‌توان ابتدا با استفاده از الگوریتم MRU همان بسته را جستجو کرد.) .SH "همچنین ببینید (SEE ALSO)" \f[CR]bup\-save\f[R](1), \f[CR]bup\-margin\f[R](1), \f[CR]bup\-memtest\f[R](1) .SH "درباره BUP (BUP)" بخشی از مجموعه \f[CR]bup\f[R](1). .SH "نویسندگان (AUTHORS)" Avery Pennarun \c .MT apenwarr@gmail.com .ME \c.