bup-margin(1) General Commands Manual bup-margin(1)

bup-margin - محاسبه حاشیه امنیت یا فضای باقیمانده در مخزن bup

bup margin [گزینه‌ها...]

دستور bup margin تمامی اشیاء موجود در مخزن bup شما را پیمایش کرده و بیشترین تعداد بیت‌های پیشوندی مشترک میان هر دو مدخل را محاسبه می‌کند. این عدد، n، نشان‌دهنده طولانی‌ترین زیرمجموعه از SHA-1 است که می‌توانید استفاده کنید و همچنان میان شناسه‌های اشیاء خود با برخورد (تداخل یا collision) مواجه شوید.

برای نمونه، در یک سیستم آزمایشی که مجموعه‌ای شامل ۱۱ میلیون شیء (۷۰ گیگابایت) داشت، bup margin مقدار ۴۵ را برگرداند. این بدان معناست که یک هش ۴۶ بیتی برای جلوگیری از تمامی برخوردها میان آن مجموعه از اشیاء کافی خواهد بود؛ یعنی هر شیء در آن مخزن را می‌توان به صورت یکتا با ۴۶ بیت نخست آن شناسایی کرد.

به نظر می‌رسد تعداد بیت‌های مورد نیاز به ازای هر دو برابر شدن تعداد اشیاء، حدود ۱ یا ۲ بیت افزایش می‌یابد. از آنجا که هش‌های SHA-1 دارای ۱۶۰ بیت هستند، این امر ۱۱۵ بیت حاشیه امنیت (margin) باقی می‌گذارد. البته از آنجا که هش‌های SHA-1 ماهیتاً تصادفی هستند، از نظر تئوری این امکان وجود دارد که با تعداد اشیاء بسیار کمتر نیز به بیت‌های بسیار بیشتری نیاز باشد.

اگر نگران احتمال وقوع برخورد در هش‌های SHA-1 هستید، می‌توانید با اجرای گاه‌به‌گاه bup margin مخزن خود را پایش کنید تا ببینید آیا به شکلی خطرناک به ۱۶۰ بیت نزدیک می‌شوید یا خیر.

آفست (موقعیت) درون هر فایل ایندکس که یک شیء خاص در آن ظاهر می‌شود را تخمین می‌زند، و حداکثر انحراف پاسخ صحیح از تخمین را گزارش می‌دهد. این گزینه به صورت بالقوه برای تنظیم دقیق الگوریتم جستجوی درون‌یابی (interpolation search) مفید است.
از فایل‌های .midx استفاده نمی‌کند؛ فقط از فایل‌های .idx استفاده می‌کند. این گزینه فقط زمانی که به همراه --predict به کار رود واقعاً کاربردی است.

$ bup margin
Reading indexes: 100.00% (1612581/1612581), done.
40
40 matching prefix bits
1.94 bits per doubling
120 bits (61.86 doublings) remaining
4.19338e+18 times larger is possible
Everyone on earth could have 625878182 data sets
like yours, all in one repository, and we would
expect 1 object collision.
$ bup margin --predict
PackIdxList: using 1 index.
Reading indexes: 100.00% (1612581/1612581), done.
915 of 1612581 (0.057%)

bup-midx(1), bup-save(1)

بخشی از مجموعه bup(1).

Avery Pennarun apenwarr@gmail.com.

2026-09-01 Bup 0.34+