.\" Manpage for par2 .\" Contact ike.devolder@gmail.com for mistakes. .TH par2 1 "august 2026" "1.3.0" "Parity archive utils" .SH "نام (NAME)" par2 \- ابزار بررسی صحت و ترمیم فایل سازگار با PAR 2.0 .SH "خلاصه دستور (SYNOPSIS)" .B par2 c|v|r .RI "[گزینه‌ها] <" "فایل PAR2" "> [" "فایل‌ها" "]" .br .B par2 c(reate) .RI "[گزینه‌ها] <" "فایل PAR2" "> [" "فایل‌ها" "]" .br .B par2 v(erify) .RI "[گزینه‌ها] <" "فایل PAR2" "> [" "فایل‌ها" "]" .br .B par2 r(epair) .RI "[گزینه‌ها] <" "فایل PAR2" "> [" "فایل‌ها" "]" .br همچنین: .br .B par2create .RI "[گزینه‌ها] <" "فایل PAR2" "> [" "فایل‌ها" "]" .br .B par2verify .RI "[گزینه‌ها] <" "فایل PAR2" "> [" "فایل‌ها" "]" .br .B par2repair .RI "[گزینه‌ها] <" "فایل PAR2" "> [" "فایل‌ها" "]" .br .SH "توضیحات (DESCRIPTION)" par2cmdline برنامه‌ای برای ایجاد و استفاده از فایل‌های PAR2 جهت تشخیص آسیب‌دیدگی در فایل‌های داده و در صورت لزوم، ترمیم آن‌ها است. از این ابزار می‌توان برای هر نوع فایلی استفاده کرد. .SH "گزینه‌های عمومی (GLOBAL OPTIONS)" .TP .B \-h نمایش این راهنما .TP .B \-V نمایش نسخه .TP .B \-VV نمایش نسخه و حق نشر (کپی‌رایت) .SH "گزینه‌های تمام کاربردها (OPTIONS ALL USES)" .TP .BI "\-a <" "فایل" ">" تنظیم نام بایگانی اصلی PAR2؛ هنگام ساخت (create) الزامی است و برای بررسی صحت (verify) و ترمیم (repair) اختیاری است .TP .B \-B <" "مسیر" ">" تنظیم مسیر پایه جهت استفاده به عنوان مرجع برای فایل‌های داده .TP .B \-v [\-v] افزایش پرگویی در خروجی (نمایش جزئیات بیشتر) .TP .B \-q [\-q] .RB "کاهش پرگویی در خروجی (" "\-q \-q" " خروجی را کاملاً بی‌صدا می‌کند)" .TP .B \-m میزان حافظه مصرفی (به مگابایت) (پیش‌فرض نصف کل حافظه فیزیکی است) .TP .B \-t .RB "تعداد رشته‌ها (threads) برای پردازش اصلی (پیش‌فرض به‌طور خودکار تشخیص داده می‌شود)" .TP .B \-T .RB "تعداد فایل‌هایی که به صورت موازی هش می‌شوند (پیش‌فرض ۲)" .TP .B \-\- در نظر گرفتن تمامی آرگومان‌های بعدی به عنوان نام فایل .SH "گزینه‌های بررسی یا ترمیم (OPTIONS VERIFY OR REPAIR)" .TP .B \-p پاک‌سازی فایل‌های پشتیبان و فایل‌های par در صورت بازیابی موفق یا زمانی که نیازی به بازیابی نباشد .TP .B \-O حالت فقط-تغییرنام (نادیده‌گرفتن فایل‌هایی که تطابق کامل ندارند؛ برای اصلاح سریع فایل‌های تغییرنام‌یافته مفید است) .TP .B \-N پرش از داده‌ها (یافتن بلوک‌های داده با موقعیت مکانی بسیار نادرست) .TP .B \-S محدوده مجاز پرش (فاصله +/\- از موقعیت مورد انتظار بلوک، پیش‌فرض ۶۴).SH "گزینه‌های ایجاد (OPTIONS create)" .TP .B \-b تنظیم Block\(hyCount (پیش‌فرض ۲۰۰۰ است هنگامی که هیچ‌یک از \-b یا \-s مشخص نشده باشد) .TP .B \-s .RB "تنظیم Block\(hySize (به‌طور هم‌زمان از هر دو گزینهٔ " "\-b" " و " "\-s" " استفاده نکنید)" .TP .B \-r سطح افزونگی (به درصد، پیش‌فرض ۵٪) .TP .B \-r اندازهٔ هدف افزونگی، =g(iga),m(ega),k(ilo) بایت .TP .B \-c .RB "تعداد بلوک‌های بازیابی (به‌طور هم‌زمان از هر دو گزینهٔ " "\-r" " و " "\-c" " استفاده نکنید)" .TP .B \-f نخستین Recovery\(hyBlock\(hyNumber (پیش‌فرض ۰) .TP .B \-u اندازه‌های یکنواخت برای فایل‌های بازیابی (پیش‌فرض اندازه‌های متغیر است) .TP .B \-l .RB "محدود کردن اندازهٔ فایل‌های بازیابی (به‌طور هم‌زمان از هر دو گزینهٔ " "\-u" " و " "\-l" " استفاده نکنید)" .TP .B \-n .RB "تعداد فایل‌های بازیابی (حداکثر ۳۱) (به‌طور هم‌زمان از هر دو گزینهٔ " "\-n" " و " "\-l" " استفاده نکنید)" .TP .B \-R پیمایش بازگشتی در زیردایرکتوری‌ها (فقط هنگام create کاربرد دارد) .TP .B @ پردازش فهرستی از فایل‌های مشخص‌شده در ورودی متنی (فایل) .SH "کدهای خروج (EXITCODES)" .TP .B 0 فرایند با موفقیت انجام شد .TP .B 1 ترمیم امکان‌پذیر است، بلوک‌های بازیابی کافی موجود است .TP .B 2 ترمیم امکان‌پذیر *نیست*، بلوک‌های بازیابی کافی نیستند .TP .B 3 ترکیب مشخص‌شده از پرچم‌های خط فرمان نامعتبر است .TP .B 4 داده‌های حیاتی ناکافی است، احتمالاً فایل‌های par شما آسیب دیده‌اند .TP .B 5 ترمیم کامل شد، اما فایل‌های داده همچنان آسیب‌دیده‌اند .TP .B 6 خطای ورودی/خروجی (I/O) در دسترسی به فایل رخ داد .TP .B 7 یک خطای منطقی داخلی رخ داد .TP .B 8 کمبود حافظه یا خطای حافظهٔ دیگر .SH "مثال‌ها (EXAMPLES)" با PAR 2.0 می‌توانید برای حداقل ۱ یا حداکثر ۳۲۷۶۸ فایل، فایل‌های بازیابی PAR2 ایجاد کنید. اگر می‌خواستید برای یک فایل منفرد فایل‌های بازیابی PAR1 بسازید، مجبور بودید فایل را به چندین بخش تقسیم کنید و RAR معمولاً برای این منظور استفاده می‌شد. با PAR 2.0 نیازی به تکه‌تکه کردن فایل‌ها *ندارید*. برای ایجاد فایل‌های بازیابی PAR 2 برای یک فایل دادهٔ منفرد (مثلاً فایلی با نام test.mpg)، می‌توانید از دستور زیر استفاده کنید: par2 create test.mpg اگر test.mpg یک فایل ۸۰۰ مگابایتی باشد، در این صورت در مجموع ۸ فایل PAR2 با نام‌های زیر ایجاد می‌شود (که در رایانه‌ای با پردازندهٔ ۱۵۰۰ مگاهرتز تقریباً ۶ دقیقه طول می‌کشد): test.mpg.par2 - این یک فایل نمایه فقط برای اعتبارسنجی است test.mpg.vol00+01.par2 - فایل بازیابی با ۱ بلوک بازیابی test.mpg.vol01+02.par2 - فایل بازیابی با ۲ بلوک بازیابی test.mpg.vol03+04.par2 - فایل بازیابی با ۴ بلوک بازیابی test.mpg.vol07+08.par2 - فایل بازیابی با ۸ بلوک بازیابی test.mpg.vol15+16.par2 - فایل بازیابی با ۱۶ بلوک بازیابی test.mpg.vol31+32.par2 - فایل بازیابی با ۳۲ بلوک بازیابی test.mpg.vol63+37.par2 - فایل بازیابی با ۳۷ بلوک بازیابی اندازهٔ فایل test.mpg.par2 برابر ۳۹ کیلوبایت است و سایر فایل‌ها اندازه‌ای بین ۴۴۳ کیلوبایت تا ۱۵ مگابایت دارند. این فایل‌های par2 بازیابی حداکثر ۱۰۰ خطا به مجموع ۴۰ مگابایت دادهٔ مفقود یا آسیب‌دیده از فایل اصلی test.mpg را در صورت ارسال آن و فایل‌های par2 روی UseNet ممکن می‌سازند. هنگام ارسال روی UseNet توصیه می‌شود که از گزینهٔ "\-s" برای تنظیم اندازهٔ بلوک برابر با اندازهٔ مقاله‌ای (Article size) که برای ارسال فایل داده به کار می‌برید استفاده کنید. اگر می‌خواستید فایل test.mpg را با اندازهٔ مقالهٔ ۳۰۰ کیلوبایت ارسال کنید، دستوری که تایپ می‌کردید این است: par2 create -s307200 test.mpg این کار به جای ۸ فایل، ۹ فایل PAR2 ایجاد می‌کند و آن‌ها قادر خواهند بود تا حداکثر ۱۳۴ خطا در مجموع ۴۰ مگابایت را تصحیح کنند. ایجاد فایل‌های بازیابی این بار تقریباً ۸ دقیقه طول خواهد کشید. در هر دوی این مثال‌ها، مقدار کل داده‌های بازیابی ایجاد شده ۴۰ مگابایت بود (که ۵٪ از ۸۰۰ مگابایت است). اگر مایلید مقدار بیشتر یا کمتری دادهٔ بازیابی ایجاد کنید، می‌توانید از گزینهٔ "\-r" استفاده نمایید. برای ایجاد ۱۰٪ دادهٔ بازیابی به جای پیش‌فرض ۵٪ و همچنین استفاده از اندازهٔ بلوک ۳۰۰ کیلوبایت، از دستور زیر استفاده می‌کنید: par2 create -s307200 -r10 test.mpg این دستور نیز ۹ فایل PAR2 ایجاد می‌کند، اما آن‌ها قادر خواهند بود تا حداکثر ۲۶۹ خطا در مجموع ۸۰ مگابایت را تصحیح کنند. از آنجا که دو برابر دادهٔ بازیابی ایجاد می‌شود، با یک پردازندهٔ ۱۵۰۰ مگاهرتزی این کار حدود ۱۶ دقیقه زمان خواهد برد. گزینه‌های "\-u" و "\-n" می‌توانند برای کنترل دقیق تعداد فایل‌های بازیابی ایجاد شده و نحوهٔ توزیع بلوک‌های بازیابی در میان آن‌ها به کار روند. آن‌ها بر مقدار کل داده‌های بازیابی ایجاد شده تأثیری ندارند. گزینهٔ "\-f" زمانی استفاده می‌شود که داده‌های بازیابی اضافی ایجاد می‌کنید؛ برای مثال اگر قبلاً ۱۰٪ ایجاد کرده‌اید و ۵٪ دیگر می‌خواهید، می‌توانید از دستور زیر استفاده کنید: par2 create -s307200 -r5 -f300 test.mpg این دستور همان اندازهٔ بلوک (که برای فایل‌های بازیابی اضافی الزامی است)، ۵٪ دادهٔ بازیابی، و شمارهٔ اولین بلوک را ۳۰۰ تعیین می‌کند. گزینهٔ "\-m" میزان حافظه‌ای را که par2 استفاده می‌کند کنترل می‌نماید. پیش‌فرض آن نیمی از کل حافظهٔ فیزیکی است مگر اینکه آن را تغییر دهید. ایجاد فایل‌های PAR2 برای چندین فایل داده (CREATING PAR2 FILES FOR MULTIPLE DATA FILES) هنگام ایجاد فایل‌های بازیابی PAR2 از چندین فایل داده، باید نام پایهٔ فایل را برای استفاده در فایل‌های par2 و نام تمام فایل‌های داده مشخص کنید. اگر test.mpg به چندین فایل RAR تقسیم شده بود، می‌توانستید از دستور زیر استفاده کنید: par2 create test.mpg.rar.par2 test.mpg.part*.rar نام فایل "test.mpg.rar.par2" مشخص می‌کند که می‌خواهید فایل‌های par2 چه نامیده شوند، و "test.mpg.part*.rar" باید تمام فایل‌های RAR را انتخاب کند. با گزینهٔ "\-R" همچنین می‌توانید برای یک ساختار درختی چندلایه فایل‌های بازیابی ایجاد کنید: . ├── aaaa-test.data ├── subdir1 │   └── test-0.data ├── subdir2 │   ├── test-1.data │   ├── test-2.data │   ├── test-3.data │   ├── test-4.data │   ├── test-5.data │   ├── test-6.data │   ├── test-7.data │   ├── test-8.data │   └── test-9.data └── test-a.data par2 create -R recovery.par2 * نتیجه به صورت زیر خواهد بود: . ├── aaaa-test.data ├── recovery.par2 ├── recovery.vol000+01.par2 ├── recovery.vol001+02.par2 ├── recovery.vol003+04.par2 ├── recovery.vol007+08.par2 ├── recovery.vol015+16.par2 ├── recovery.vol031+32.par2 ├── recovery.vol063+37.par2 ├── subdir1 │   └── test-0.data ├── subdir2 │   ├── test-1.data │   ├── test-2.data │   ├── test-3.data │   ├── test-4.data │   ├── test-5.data │   ├── test-6.data │   ├── test-7.data │   ├── test-8.data │   └── test-9.data └── test-a.data هشدار: مراقب بسط نویسه‌های عام شل (wildcard shell expansion) باشید. به محض اینکه بیش از یک آرگومان بدون نام ارسال کنید، اولین آرگومان به عنوان نام فایل‌های par2 استفاده خواهد شد و تحت پوشش آن‌ها قرار نخواهد گرفت. اعتبارسنجی و ترمیم (VERIFYING AND REPAIRING) هنگام استفاده از فایل‌های بازیابی par2 برای اعتبارسنجی یا ترمیم فایل‌های داده‌ای که از روی آن‌ها ساخته شده‌اند، تنها کافی است نام یکی از فایل‌های par2 را به par2 مشخص کنید. برای مثال: par2 verify test.mpg.par2 این دستور به par2 اعلام می‌کند که از اطلاعات موجود در test.mpg.par2 برای اعتبارسنجی فایل‌های داده استفاده کند. par2 به‌طور خودکار سایر فایل‌های par2 ایجاد شده را جستجو کرده و با بهره‌گیری از اطلاعات درون آن‌ها، نام فایل‌های دادهٔ اصلی را مشخص و سپس آن‌ها را اعتبارسنجی می‌کند. اگر همهٔ فایل‌های داده سالم باشند، par2 گزارش می‌دهد که نیازی به ترمیم نیست. اگر هر یک از فایل‌های داده مفقود یا آسیب‌دیده باشند، par2 جزئیات یافته‌های خود را گزارش می‌دهد. چنانچه فایل‌های بازیابی شامل تعداد کافی بلوک بازیابی برای ترمیم آسیب باشند، به شما اعلام می‌شود که ترمیم ممکن است. در غیر این صورت، دقیقاً به شما گفته خواهد شد که چه تعداد بلوک بازیابی برای ترمیم نیاز است. برای انجام ترمیم از دستور زیر استفاده کنید: par2 repair test.mpg.par2 این دستور به par2 می‌گوید تا هر فایل آسیب‌دیده یا مفقود را اعتبارسنجی و در صورت امکان ترمیم کند. اگر ترمیمی انجام شود، هر فایل ترمیم‌شده دوباره اعتبارسنجی می‌شود تا موفقیت‌آمیز بودن ترمیم تأیید گردد. فایل‌های دادهٔ با نام نادرست و ناقص (MISSNAMED AND INCOMPLETE DATA FILES) اگر هر یک از فایل‌های بازیابی یا فایل‌های داده نام نادرستی داشته باشند، par2 به‌طور خودکار آن‌ها را پیدا و اسکن نخواهد کرد. برای اینکه par2 این فایل‌ها را اسکن کند، باید هنگام اقدام به اعتبارسنجی یا ترمیم، آن‌ها را در خط فرمان درج کنید؛ به عنوان مثال: par2 r test.mpg.par2 other.mpg این دستور به par2 اعلام می‌کند که فایل other.mpg را اسکن کند تا ببیند آیا حاوی داده‌ای متعلق به فایل‌های دادهٔ اصلی است یا خیر. اگر یکی از فایل‌های اضافی مشخص‌شده به این روش تطابق کاملی با یک فایل داده داشته باشد، فرایند ترمیم نام فایل را به نام صحیح آن تغییر خواهد داد. از آنجا که par2 به گونه‌ای طراحی شده که بتواند داده‌های سالم را در یک فایل آسیب‌دیده پیدا کند، می‌تواند همین کار را با فایل‌های ناقص بارگیری‌شده از UseNet نیز انجام دهد. اگر برخی از مقالات (articles) یک فایل مفقود باشند، همچنان باید فایل را بارگیری کرده و برای اسکن روی دیسک ذخیره کنید. در صورت انجام این کار، ممکن است بتوانید در شرایطی که در حالت عادی داده‌های بازیابی کافی ندارید، ترمیم را انجام دهید. می‌توانید با دستوری مانند زیر کاری کنید که par2 تمام فایل‌های موجود در دایرکتوری جاری را اسکن کند: par2 r test.mpg.par2 * حالت فقط تغییر نام (RENAME-ONLY MODE) اگر تصادفاً تعداد زیادی از فایل‌های محافظت‌شده توسط فایل‌های PAR2 را تغییر نام داده‌اید، می‌توانید از حالت فقط تغییر نام (rename-only mode) برای شناسایی و رفع سریع آن‌ها استفاده کنید. در حالت فقط تغییر نام، par2 از فایل‌هایی که تطابق کامل ندارند (یعنی فایل‌هایی که آسیب دیده‌اند یا بلوک‌های ناهمخوان دارند) صرف‌نظر می‌کند که هنگام سر و کار داشتن با فایل‌های تغییرنام‌یافتهٔ متعدد، سرعت کار را بسیار افزایش می‌دهد. برای مثال، اگر فایل‌هایی دارید که به‌طور تصادفی تغییر نام یافته‌اند: mv file1.dat renamed_a.dat mv file2.dat renamed_b.dat mv file3.dat renamed_c.dat می‌توانید آن‌ها را به‌سرعت با دستور زیر رفع کنید: par2 r -O recovery.par2 renamed_*.dat دستور par2 تنها اولین بلوک هر فایل را اسکن می‌کند تا مشخص کند آیا تطابق کامل دارد یا خیر. اگر تطابق کامل باشد، نام فایل به نام اصلی‌اش برگردانده می‌شود. اگر تطابق کامل نباشد (مثلاً فایل آسیب دیده باشد)، بلافاصله بدون اسکن کردن کل فایل از آن صرف‌نظر خواهد شد. این ویژگی به‌ویژه زمانی مفید است که صدها گیگابایت فایل تغییرنام‌یافته داشته باشید که توسط چندین مجموعهٔ PAR2 محافظت می‌شوند، چرا که از اسکن کُند بلوک‌به‌بلوک که در غیر این صورت الزامی بود جلوگیری می‌کند. اقدامات لازم هنگام نیاز به بلوک‌های بازیابی بیشتر (WHAT TO DO WHEN YOU ARE TOLD YOU NEED MORE RECOVERY BLOCKS) اگر par2 تشخیص دهد که هر یک از فایل‌های داده آسیب دیده‌اند یا مفقود شده‌اند و متوجه شود که داده‌های بازیابی برای انجام ترمیم ناکافی است، به شما اعلام می‌شود که به تعداد معینی بلوک بازیابی نیاز دارید. می‌توانید این بلوک‌ها را با بارگیری فایل‌های بازیابی اضافی به دست آورید. برای آسان‌تر کردن کار، فایل‌های par2 نام‌هایی دارند که دقیقاً مشخص می‌کنند هر کدام شامل چند بلوک بازیابی است. با فرض اینکه از دستور زیر برای ایجاد داده‌های بازیابی استفاده شده است: par2 c -b1000 -r5 test.mpg آن‌گاه فایل‌های بازیابی ایجاد شده به این صورت نام‌گذاری خواهند شد: test.mpg.par2 test.mpg.vol00+01.par2 test.mpg.vol01+02.par2 test.mpg.vol03+04.par2 test.mpg.vol07+08.par2 test.mpg.vol15+16.par2 test.mpg.vol31+19.par2 نخستین فایل در این فهرست حاوی هیچ دادهٔ بازیابی نیست، و تنها شامل اطلاعاتی است که برای اعتبارسنجی فایل‌های داده کافی است. هر یک از فایل‌های دیگر شامل تعداد متفاوتی از بلوک‌های بازیابی هستند. عدد پس از علامت '+' تعداد بلوک‌های بازیابی، و عدد پیش از علامت '+' شمارهٔ اولین بلوک بازیابی در آن فایل است. اگر par2 به شما بگوید که به ۱۰ بلوک بازیابی نیاز دارید، آن‌گاه به "test.mpg.vol01+02.par2" و "test.mpg.vol07+08.par" نیاز خواهید داشت. البته ممکن است تصمیم بگیرید به جای آن "test.mpg.vol15+16.par2" را دریافت کنید (که در این صورت ۶ بلوک بازیابی اضافی خواهید داشت که برای ترمیم استفاده نخواهند شد). درهم‌سازی (HASHING) بخش درهم‌سازی (مراحل اعتبارسنجی و ایجاد فایل) کد را نمی‌توان بدون پردازش هم‌زمان چندین فایل موازی‌سازی کرد. مقدار پیش‌فرض ۲ فایل/رشته انتخاب خوبی برای HDDها است، استفاده از رشته‌های بیشتر می‌تواند باعث کارایی بدتر شود. برای کارایی بهتر در SSDها می‌توان از چهار رشته یا بیشتر استفاده کرد..SH "نویسندگان (AUTHORS)" Peter Brian Clements .br Marcel Partap .br Ike Devolder .br Jussi Kansanen .br