.TH mfsmaster.cfg "5" "مه 2026" "MooseFS 4.59.2-1" "این بخشی از MooseFS است" .ss 12 0 .SH "نام (NAME)" mfsmaster.cfg \- فایل پیکربندی اصلی برای \fBmfsmaster\fP .SH "توضیحات (DESCRIPTION)" فایل \fBmfsmaster.cfg\fP شامل پیکربندی پردازهٔ مستر MooseFS است. .SS "نحو (SYNTAX)" .PP نحو به صورت زیر است: .TP .IB OPTION " = " VALUE .PP خطوطی که با نویسهٔ \fB#\fP آغاز می‌شوند به عنوان توضیح نادیده گرفته می‌شوند. .SS "گزینه‌های راه‌اندازی (STARTUP OPTIONS)" تغییرات در این بخش نیازمند راه‌اندازی مجدد پردازه است. .TP .B WORKING_USER کاربری که دیمن با آن اجرا می‌شود. .TP .B WORKING_GROUP گروهی که دیمن با آن اجرا می‌شود؛ مقدار اختیاری \- در صورت خالی بودن، گروه پیش‌فرض کاربر استفاده خواهد شد. .TP .B SYSLOG_IDENT نام پردازه برای قرارگیری در پیام‌های syslog؛ پیش‌فرض mfsmaster است. .TP .B LOCK_MEMORY آیا برای جلوگیری از مبادله (swap) پردازهٔ mfsmaster از ()mlockall استفاده شود یا خیر؛ پیش‌فرض 0 است، یعنی خیر. .TP .B DISABLE_OOM_KILLER غیرفعال کردن کشنده کمبود حافظه (OOM Killer) (فقط لینوکس، پیش‌فرض 1 است). .TP .B NICE_LEVEL سطح nice برای اجرای دیمن؛ پیش‌فرض \-19 است؛ نکته: پردازه برای افزایش اولویت باید با کاربر root راه‌اندازی شود، در صورت ناموفق بودن تنظیم اولویت، پردازه همان سطح nice را که با آن شروع شده بود حفظ می‌کند. .TP .B FILE_UMASK تنظیم umask پیش‌فرض برای گروه و دیگران (کاربر مالک همواره 0 دارد)؛ پیش‌فرض 027 است \- مسدود کردن نوشتن برای گروه و مسدود کردن همه دسترسی‌ها برای دیگران. .TP .B DATA_PATH محل ذخیره‌سازی فایل‌های فراداده (متادیتا) و فایل قفل. .SS "گزینه‌های زمان اجرا (RUNTIME OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B LICENCE_FILENAME (تنها نسخه Pro) مکان یا نام جایگزین برای فایل \fBmfslicence.bin\fP. .TP .B EXPORTS_FILENAME مکان یا نام جایگزین برای فایل \fBmfsexports.cfg\fP. .TP .B TOPOLOGY_FILENAME مکان یا نام جایگزین برای فایل \fBmfstopology.cfg\fP. .TP .B INSTANCE_NAME نام اختیاری نمونهٔ MooseFS (کلاستر) که در رابط کاربری گرافیکی (GUI) نمایش داده خواهد شد (پیش‌فرض رشتهٔ خالی است). .TP .B BACK_LOGS تعداد فایل‌های گزارش تغییرات متادیتا (پیش‌فرض 50 است). .TP .B METADATA_SAVE_OFFSET آفست مورد استفاده برای گزینه‌های: METADATA_SAVE_FREQ، (تنها نسخه Pro) METADATA_DOWNLOAD_FREQ، (تنها نسخه Pro) METADATA_CRCCHECK_FREQ (به دقیقه \- پیش‌فرض 0 است)؛ قالب X:Y نیز پذیرفته می‌شود و به معنای X ساعت و Y دقیقه است، پسوند "L" را می‌توان برای اشاره به منطقهٔ زمانی محلی (سرور) به جای UTC اضافه کرد؛ در صورت ارائهٔ ساعت، مقدار باقیمانده به پیمانه (modulo) متغیرهای METADATA_SAVE_FREQ، METADATA_DOWNLOAD_FREQ و METADATA_CRCCHECK_FREQ محاسبه و استفاده خواهد شد، بخش NOTES را ببینید. .TP .B METADATA_SAVE_FREQ هر چند وقت یک‌بار (به ساعت) مستر (تک یا پیرو) متادیتا را ذخیره می‌کند (پیش‌فرض 1 است). .TP .B METADATA_DOWNLOAD_FREQ (تنها نسخه Pro) هر چند وقت یک‌بار (به ساعت) رهبر متادیتا را از پیروان بارگیری می‌کند (پیش‌فرض 0 است \- یعنی هرگز). .TP .B METADATA_CRCCHECK_FREQ (تنها نسخه Pro) هر چند وقت یک‌بار (به ساعت) رهبر سازگاری متادیتا با پیروان را بررسی می‌کند (همچنین متادیتا را ذخیره می‌کند؛ پیش‌فرض 24 است). .TP .B METADATA_DOWNLOAD_LIMIT (تنها نسخه Pro) محدودیت بارگیری متادیتا بر حسب مبی‌بایت بر ثانیه (0 یعنی بدون محدودیت، پیش‌فرض 50 است \- 50MiB/s = ~52.4MB/s). .TP .B DEPUTY_ELECTION_TIME (تنها نسخه Pro) چند ثانیه طول می‌کشد تا مستر منتخب (master-elect) در صورت عدم اتصال تعداد کافی چانک‌سرور برای تبدیل شدن به مستر رهبر، به مستر معاون (master-deputy یا مستر فقط‌خواندنی) تبدیل شود (پیش‌فرض 0 است \- یعنی هرگز). .TP .B KEEP_LEADERSHIP (تنها نسخه Pro) اگر این گزینه روی 1 تنظیم شود، این مستر پس از از دست دادن نقش رهبری به دلیل راه‌اندازی مجدد یا قطع اتصال، تلاش خواهد کرد دوباره رهبری را به دست گیرد؛ اگر کاربری عمداً رهبری را تغییر داده باشد چنین تلاشی نخواهد کرد؛ برای توضیحات تفصیلی بخش NOTES را ببینید (پیش‌فرض 0 است \- تلاشی برای به دست گرفتن رهبری نکن). .TP .B BACK_META_KEEP_PREVIOUS تعداد فایل‌های متادیتای قبلی که باید نگهداری شوند (پیش‌فرض 1 است). .TP .B CHANGELOG_PRESERVE_SECONDS چند ثانیه از گزارش‌های تغییرات باید در حافظه نگهداری شوند (پیش‌فرض 5000 است؛ این مقدار حداقل را تعیین می‌کند، مقدار واقعی به دلیل نگهداری لاگ‌ها در بلوک‌های 5k ممکن است اندکی بیشتر باشد؛ مقدار صفر ذخیره‌سازی لاگ‌های اضافی را غیرفعال می‌کند). .TP .B CHANGELOG_PRESERVE_MB چه مقدار از RAM بر حسب مگابایت می‌تواند برای حفظ گزارش‌های تغییرات در حافظه استفاده شود (پیش‌فرض 500 است؛ این مقدار حداقل را مشخص می‌کند، مقدار واقعی به دلیل نگهداری لاگ‌ها در بلوک‌های 5k ممکن است کمی بیشتر باشد؛ صفر ذخیره لاگ‌های اضافی را غیرفعال می‌کند)؛ مستر همواره تعداد کمتری از بلوک‌های 5k تعیین‌شده توسط \fBCHANGELOG_PRESERVE_SECONDS\fP و \fBCHANGELOG_PRESERVE_MB\fP را حفظ خواهد کرد، بنابراین اطمینان حاصل کنید که هر دو را به درستی تنظیم کرده‌اید. .TP .B CHANGELOG_SAVE_MODE حالت ذخیره‌سازی changelog (پیش‌فرض 0 است) .br 0 \- نوشتن در پس‌زمینه توسط پردازه‌ای دیگر (امنیت کمتر، اما در هنگام بار سنگین هارد دیسک مانع متوقف شدن مستر می‌شود) .br 1 \- نوشتن در پیش‌زمینه بدون همگام‌سازی داده‌ها (مستر منتظر ذخیره شدن هر لاگ تغییرات روی هارد دیسک می‌ماند، اما بدون همگام‌سازی \- اندکی امن‌تر از گزینهٔ پس‌زمینه، اما ممکن است باعث توقف مستر و انتظار برای تخلیه بافرهای هارد دیسک شود) .br 2 \- نوشتن در پیش‌زمینه همراه با fsync پس از هر بار نوشتن (بسیار امن، اما ممکن است مستر شما را بسیار کند کند مگر اینکه سخت‌افزار بسیار پیشرفته‌ای داشته باشید) .TP .B MISSING_LOG_CAPACITY چه تعداد چانک مفقود در مستر ذخیره خواهد شد (حداکثر تا 100*MISSING_LOG_CAPACITY بایت حافظه تخصیص داده می‌شود؛ مقدار پیش‌فرض 100000 است). .TP .B CONFIGURATION_TEST_PERIOD (تنها نسخه Pro) هر چند وقت یک‌بار (به ساعت) مستر رهبر باید آزمونی را اجرا کند که بررسی می‌کند آیا گزینه‌های پیکربندی بین ماژول‌ها سازگار هستند یا خیر (پیش‌فرض 24 است، حداکثر مقدار ممکن 168 است، مقدار 0 به معنای عدم اجرای آزمون است). .TP .B SYSLOG_MIN_LEVEL حداقل سطح پیام‌هایی که توسط مستر گزارش می‌شود؛ سطوح به ترتیب اهمیت: ERROR، WARNING، NOTICE، INFO، DEBUG (پیش‌فرض INFO است). .TP .B SYSLOG_ELEVATE_TO پیام‌های گزارش‌شده با سطحی پایین‌تر از مقدار تعیین‌شده توسط این گزینه، به این سطح ارتقا خواهند یافت (یعنی اگر \fBSYSLOG_MIN_LEVEL\fP روی DEBUG تنظیم شده باشد و \fBSYSLOG_ELEVATE_TO\fP روی NOTICE تنظیم گردد، تمام پیام‌های INFO و DEBUG با سطح NOTICE به syslog ارسال خواهند شد؛ پیش‌فرض NOTICE است). .SS "گزینه‌های اتصال فرمان (COMMAND CONNECTION OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B MATOML_LISTEN_HOST نشانی IP برای شنود اتصالات متالاگر، مسترها (تنها نسخه Pro) و سرپرست‌ها (* به معنای هر نشانی است). .TP .B MATOML_LISTEN_PORT درگاه برای شنود اتصالات متالاگر، مسترها (تنها نسخه Pro) و سرپرست‌ها. .TP .B MATOML_TIMEOUT مهلت زمانی پیش‌فرض به ثانیه برای اتصال مستر\-متالاگر (پیش‌فرض 10 است). .TP .B MATOML_FORCE_TIMEOUT مهلت زمانی اجباری به ثانیه برای اتصال مستر\-متالاگر (پیش‌فرض 0 است \- تحمیل نکردن مهلت زمانی). .SS "گزینه‌های اتصال مستر-رهبر (MASTER-LEADER CONNECTION OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B MASTER_HOST (تنها نسخه Pro) میزبان مستر MooseFS (پیش‌فرض mfsmaster است). .TP .B MASTER_RECONNECTION_DELAY (تنها نسخه Pro) تاخیر به ثانیه قبل از تلاش بعدی برای اتصال مجدد به مستر رهبر در صورت عدم اتصال (پیش‌فرض 5 است). .TP .B MATOMA_TIMEOUT (تنها نسخه Pro) مهلت زمانی به ثانیه برای اتصالات مستر\-رهبر (پیش‌فرض 10 است). .TP .B BIND_HOST (تنها نسخه Pro) نشانی محلی مورد استفاده برای اتصال به مستر رهبر (پیش‌فرض * است، یعنی نشانی محلی پیش‌فرض). .SS "گزینه‌های اتصال چانک‌سرور (CHUNKSERVER CONNECTION OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B MATOCS_LISTEN_HOST نشانی IP برای شنود اتصالات چانک‌سرور (\fB*\fP به معنای هر نشانی است). .TP .B MATOCS_LISTEN_PORT درگاه برای شنود اتصالات چانک‌سرور. .TP .B MATOCS_TIMEOUT مهلت زمانی پیش‌فرض به ثانیه برای اتصال مستر\-چانک‌سرور (پیش‌فرض 10 است). .TP .B MATOCS_FORCE_TIMEOUT مهلت زمانی اجباری به ثانیه برای اتصال مستر\-چانک‌سرور (پیش‌فرض 0 است \- تحمیل نکردن مهلت زمانی). .TP .B AUTH_CODE رشتهٔ احراز هویت اختیاری. در صورت تعریف شدن \- تنها چانک‌سرورهایی با همان AUTH_CODE مجاز به اتصال به این مستر هستند. در صورت تعریف نشدن (پیش‌فرض) \- تمام چانک‌سرورها مجاز به اتصال خواهند بود. اگر مایل به فعال‌سازی احراز هویت چانک‌سرور هستید، ابتدا AUTH_CODE را در تمامی چانک‌سرورهای خود تعریف کرده (و آن‌ها را بازخوانی/راه‌اندازی مجدد کنید)، سپس این گزینه را در مستر تعریف نموده و آن را بازخوانی/راه‌اندازی مجدد کنید. به یاد داشته باشید که پس از بازخوانی، چانک‌سرورهای متصل فعلی قطع نمی‌شوند. مقدار جدید AUTH_CODE تنها زمانی اعمال خواهد شد که چانک‌سرورها اتصال جدیدی برقرار کنند. .TP .BR REMAP_BITS ", " REMAP_SOURCE_IP_CLASS ", " REMAP_DESTINATION_IP_CLASS بازنگاشت اختیاری کلاس IP. بازنگاشت نشانی‌های IP چانک‌سرور با تطابق REMAP_BITS بیت اول IP با REMAP_BITS بیت اول REMAP_SOURCE_IP_CLASS انجام می‌شود. در طول بازنگاشت، سیستم REMAP_BITS بیت اول نشانی IP را برابر با REMAP_BITS بیت اول REMAP_DESTINATION_IP_CLASS قرار می‌دهد. برای عملکرد این قابلیت، هر سه گزینه باید تعریف شوند. .TP .BR MULTILAN_BITS ", " MULTILAN_CLASSES بازنگاشت اختیاری کلاس IP شبکه محلی (LAN). بازنگاشت نشانی‌های IP چانک‌سرورها بر اساس MULTILAN_BITS بیت اول IP کلاینت برای تمامی IPهای کلاینت که با یکی از کلاس‌های MULTILAN_CLASSES مطابقت دارند (کلاس‌ها باید با کاما از هم جدا شوند). تمامی مسترها و چانک‌سرورها باید دارای IPهای معتبر از هر یک از کلاس‌های MULTILAN_CLASSES باشند. هر دو گزینه برای عملکرد بازنگاشت باید تعریف شده باشند. .TP .BR MULTILAN_IPMAP_FILENAME مکان یا نام جایگزین برای فایل \fBmfsipmap.cfg\fP. این فایل نگاشت سفارشی اختیاری IP را تعریف می‌کند. .SS "گزینه‌های عملکردی چانک‌سرور (CHUNKSERVER WORKING OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B REPLICATIONS_DELAY_INIT تاخیر اولیه به ثانیه پیش از آغاز همانندسازی‌ها (پیش‌فرض 60 است). .TP .B REPLICATIONS_RESPECT_TOPOLOGY آیا همانندسازی‌های زیرهدف (undergoal) توپولوژی را رعایت کنند یا خیر (پیش‌فرض 0 است) .br 0 \- توپولوژی را رعایت نکن .br 1 \- یک سرور مقصد را به صورت تصادفی انتخاب کن، اما سپس بهترین سرور مبدا را برگزین .br 2 \- تلاش کن تا یک سرور مقصد در همان رک (rack) یکی از نسخه‌های موجود پیدا کرده و سپس چانک را به صورت محلی (در همان رک) همانندسازی کن .TP .B CREATIONS_RESPECT_TOPOLOGY آیا چانک‌های جدید با رعایت توپولوژی ثبت شوند یا خیر (پیش‌فرض 0 است) .br 0 \- توپولوژی را رعایت نکن .br N (N>0) \- ابتدا سعی کن چانک‌های جدید را روی سرورهایی ایجاد کنی که فاصلهٔ توپولوژیکی آن‌ها از کلاینت کمتر از N باشد؛ در صورت عدم امکان، برای نمونه به دلیل کلاس ذخیره‌سازی، مشغول بودن چانک‌سرورها یا کمبود فضا، سرورهایی با فاصله بیشتر یا مساوی N را امتحان کن .TP .B CHUNKS_UNIQUE_MODE جلوگیری از استفاده از یک IP یا رک برای نسخه‌های مختلف چانک (پیش‌فرض 0 است) .br 0 \- نادیده گرفتن IP و شناسهٔ رک (رفتار استاندارد) .br 1 \- جلوگیری از ذخیرهٔ بیش از یک نسخه روی چانک‌سرورهایی با نشانی IP یکسان .br 2 \- جلوگیری از ذخیرهٔ بیش از یک نسخه روی چانک‌سرورهایی با IP متعلق به همان شناسهٔ رک (rack id) .br \fBتوجه!\fR این پارامتر برای سازگاری با نسخه‌های پیشین در نظر گرفته شده است و نباید روی مقداری جز 0 تنظیم شود. در عوض باید از ویژگی تمایز (distinguish) در کلاس‌های ذخیره‌سازی استفاده شود. با این حال، در صورت تنظیم روی مقداری غیر از 0، هرگونه تعریف تمایز در کلاس‌های ذخیره‌سازی را بازنویسی خواهد کرد. برای اطلاعات بیشتر درباره کلاس‌های ذخیره‌سازی و قابلیت تمایز به راهنمای \fBmfsscadmin\fP\|(1) مراجعه کنید. .TP .B CHUNKS_LOOP_MAX_CPS حلقهٔ چانک‌ها نباید در هر ثانیه چانک‌های بیشتری از عدد داده‌شده را بررسی کند (پیش‌فرض 100000 است). .TP .B CHUNKS_LOOP_MIN_TIME حلقهٔ چانک‌ها نباید در ثانیه‌هایی کمتر از عدد داده‌شده به پایان برسد (پیش‌فرض 300 است). .TP .B CHUNKS_SOFT_DEL_LIMIT حداکثر حد نرم (soft) تعداد چانک‌ها برای حذف روی یک چانک‌سرور (پیش‌فرض 10 است). .TP .B CHUNKS_HARD_DEL_LIMIT حداکثر حد سخت (hard) تعداد چانک‌ها برای حذف روی یک چانک‌سرور (پیش‌فرض 25 است). .TP .B CHUNKS_WRITE_REP_LIMIT حداکثر تعداد چانک‌ها برای همانندسازی روی یک چانک‌سرور (پیش‌فرض 2,1,1,4,4 است \- بخش NOTES را ببینید). .TP .B CHUNKS_READ_REP_LIMIT حداکثر تعداد چانک‌ها برای همانندسازی از یک چانک‌سرور (پیش‌فرض 10,5,2,5,10 است \- بخش NOTES را ببینید). .TP .B CS_HEAVY_LOAD_THRESHOLD آستانهٔ بار چانک‌سرور (پیش‌فرض 150 است \- بخش NOTES را ببینید). .TP .B CS_HEAVY_LOAD_RATIO_THRESHOLD نسبت آستانه برای بار چانک‌سرور (پیش‌فرض 3.0 است \- بخش NOTES را ببینید). .TP .B CS_HEAVY_LOAD_GRACE_PERIOD تعیین می‌کند چانک‌سرورها چه مدت در حالت مهلت (grace) باقی خواهند ماند (پیش‌فرض 900 است \- بخش NOTES را ببینید). .TP .B ACCEPTABLE_PERCENTAGE_DIFFERENCE حداکثر اختلاف درصدی بین مصرف فضای چانک‌سرورها (پیش‌فرض 1 = 1% است). .TP .B PRIORITY_QUEUES_LENGTH طول صف‌های اولویت‌دار (برای چانک‌های در معرض خطر، زیرهدف و غیره \- چانک‌هایی که باید ابتدا پردازش شوند \- پیش‌فرض 1000000 است). .TP .B CS_MAINTENANCE_MODE_TIMEOUT حداکثر زمانی که سرور می‌تواند در حالت تعمیر و نگهداری (maintenance mode) باشد (مقدار پیش‌فرض 0 است \- یعنی 'برای همیشه')؛ برای قالب‌بندی مقدار، بخش TIME را ببینید. .TP .B CS_TEMP_MAINTENANCE_MODE_TIMEOUT حداکثر زمانی که سرور می‌تواند در حالت تعمیر و نگهداری «موقت» باشد (هر زمان که سرور به‌طور ملایم و ایمن متوقف شود به این حالت تغییر می‌یابد، پس از اتصال مجدد، سرور به طور خودکار به حالت عادی بازمی‌گردد؛ مقدار پیش‌فرض: 30m)؛ برای قالب‌بندی مقدار، بخش TIME را ببینید. .TP .B CS_DAYS_TO_REMOVE_UNUSED چند روز یک چانک‌سرور استفاده‌نشده (قطع‌شده) باید در ساختارهای دادهٔ مستر نگهداری شود (مقادیر مجاز: 0 تا 365؛ 0 به معنای نامحدود است؛ مقدار پیش‌فرض: 7). .SS "گزینه‌های اتصال کلاینت‌ها (CLIENTS CONNECTION OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B MATOCL_LISTEN_HOST نشانی IP برای شنود اتصالات کلاینت (mount) (\fB*\fP به معنای هر نشانی است). .TP .B MATOCL_LISTEN_PORT درگاه برای شنود اتصالات کلاینت (mount). .TP .B MATOCL_TIMEOUT مهلت زمانی پیش‌فرض به ثانیه برای اتصال مستر\-کلاینت (پیش‌فرض 10 است). .TP .B MATOCL_FORCE_TIMEOUT مهلت زمانی اجباری به ثانیه برای اتصال مستر\-کلاینت (پیش‌فرض 0 است \- تحمیل نکردن مهلت زمانی). .TP .B RESTRICT_INCOMPATIBLE_CLIENT_VERSIONS آیا MooseFS باید از اتصال کلاینت‌هایی که قادر به خواندن تمام داده‌ها نیستند (به‌ویژه داده‌های کدگذاری افزونگی/erasure encoded) جلوگیری کند یا خیر. پیش‌فرض 1 است \- جلوگیری از اتصالات. اگر این گزینه روی 0 تنظیم شود، کلاینت‌هایی که سعی در خواندن داده‌ها با قالبی که متوجه نمی‌شوند دارند، خطای خواندن برمی‌گردانند. با احتیاط استفاده شود. .SS "گزینه‌های عملکردی کلاینت‌ها (CLIENTS WORKING OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B SESSION_SUSTAIN_TIME چه مدت نشست یک کلاینت قطع‌شده حفظ شود (پیش‌فرض 1 روز است)؛ برای قالب‌بندی مقدار، بخش TIME را ببینید. .SS "گزینه‌های سیستم فایل (FILE SYSTEM OPTIONS)" تغییرات در این بخش تنها نیازمند بازخوانی (reload) پردازه است. .TP .B QUOTA_DEFAULT_GRACE_PERIOD مهلت پیش‌فرض برای سهمیه نرم (soft quota) (پیش‌فرض 7 روز است)؛ برای قالب‌بندی مقدار، بخش TIME را ببینید. .TP .B ATIME_MODE تنظیم حالت تغییر atime (پیش‌فرض 2 است: شبیه به 'relatime' \- بخش NOTES را ببینید). .TP .B KEEP_EMPTY_FILES_IN_TRASH انتقال فایل‌های خالی به سطل بازیافت (trash) پس از unlink؟ (پیش‌فرض 0 است \- حذف فوری فایل‌های خالی صرف‌نظر از تنظیمات نگهداری سطل زباله). .TP .B RESERVE_SPACE تنظیم میزان فضای رزروشده برای کاربر ارشد (superuser) (پیش‌فرض 0 است = عدم رزرو فضا برای کاربر ارشد \- بخش NOTES را ببینید). .TP .B MAX_ALLOWED_HARD_LINKS تعیین محدودیت برای تعداد پیوندهای سخت (hardlinks) مجاز برای یک شیء (پیش‌فرض 32767 است؛ مقادیر ممکن از 8 تا 65000 هستند). .TP .B INODE_REUSE_DELAY زمان تاخیری که پس از آن اینودهای (inodes) اشیاء حذف‌شده مجدداً استفاده خواهند شد. توجه داشته باشید اگر این مقدار را به کمتر از 1 روز کاهش دهید، باید اطمینان حاصل کنید که این مقدار بیشتر از هر یک از مهلت‌های زمانی زیر در تمامی کلاینت‌ها باشد: \fBmfsattrcacheto\fP، \fBmfsxattrcacheto\fP، \fBmfsentrycacheto\fP، \fBmfsdirentrycacheto\fP، \fBmfsnegentrycacheto\fP، \fBmfssymlinkcacheto\fP. (پیش‌فرض 1d است؛ مقادیر مجاز از 300 تا 3000000 ثانیه هستند)؛ برای قالب‌بندی مقدار، بخش TIME را ببینید. .TP .B DEFAULT_EC_DATA_PARTS سیستم هنگام استفاده از تعریف سبک قدیمی EC چند بخش داده باید استفاده کند (@n به جای @8+n یا @4+n؛ پیش‌فرض 8 است؛ مقادیر مجاز 4 یا 8 هستند). .SH "نکات (NOTES)" .SS "زمان (TIME)" .PP برای متغیرهای پیکربندی که زمان را بدون الزام به یک واحد منفرد و مشخص تعیین می‌کنند، زمان می‌تواند به صورت تعداد ثانیه‌ها (عدد صحیح) یا یک بازهٔ زمانی در یکی از دو قالب ممکن تعریف شود: .PP قالب نخست: #.#T که در آن T یکی از موارد زیر است: s (ثانیه‌ها)، m (دقیقه‌ها)، h (ساعت‌ها)، d (روزها) یا w (هفته‌ها)؛ کسرهای ثانیه به ثانیه‌های کامل گرد خواهند شد. .PP قالب دوم: #w#d#h#m#s، هر تعدادی از تعاریف می‌تواند حذف شود، اما تعاریف باقیمانده باید دارای ترتیب باشند (بنابراین #d#m همچنان تعریفی معتبر است، اما #m#d معتبر نیست)؛ محدوده‌ها: s و m از 0 تا 59، h از 0 تا 23، d از 0 تا 6، مقدار w نامحدود است و اولین تعریف نیز همواره نامحدود است (یعنی برای #d#h#m مقدار d نامحدود خواهد بود). .PP مثال‌ها: .PP 1.5h معادل 1h30m، معادل 90m، معادل 5400s، و معادل 5400 است. .PP 2.5d معادل 2d12h و معادل 60h است؛ 1d36h یک بازه زمانی معتبر نیست (h اولین تعریف نیست، بنابراین به محدوده 0 تا 23 محدود است). .PP 1.03m معادل 62s است (61.8 ثانیه به 62 گرد می‌شود). .SS "نکات عمومی (GENERAL NOTES)" .PP چانک‌ها در مستر درون یک حلقه آزمایش می‌شوند. سرعت (یا بسامد) توسط دو گزینه تنظیم می‌شود: \fBCHUNKS_LOOP_MIN_TIME\fP و \fBCHUNKS_LOOP_MAX_CPS\fP. گزینه نخست حداقل زمان بین تکرارهای حلقه را تعریف می‌کند و گزینه دوم حداکثر تعداد آزمایش‌های چانک در هر ثانیه را مشخص می‌سازد. معمولاً در ابتدا، هنگامی که تعداد چانک‌ها اندک است، زمان ثابت بوده و توسط \fBCHUNKS_LOOP_MIN_TIME\fP تنظیم می‌شود، اما با افزایش تعداد چانک‌ها، زمان حلقه می‌تواند طبق \fBCHUNKS_LOOP_MAX_CPS\fP افزایش یابد. .PP مثال: \fBCHUNKS_LOOP_MIN_TIME\fP روی 300 تنظیم شده است، \fBCHUNKS_LOOP_MAX_CPS\fP روی 100000 تنظیم شده و 1000000 (یک میلیون) چانک در سیستم وجود دارد. 10 = 1000000/100000، که کمتر از 300 است، بنابراین یک تکرار حلقه 300 ثانیه طول خواهد کشید. با 1000000000 (یک میلیارد) چانک، سیستم برای یک تکرار حلقه به 10000 ثانیه نیاز دارد. .PP محدودیت‌های حذف به عنوان محدودیت‌های «نرم» (soft) و «سخت» (hard) تعریف می‌شوند. هنگامی که تعداد چانک‌های آماده برای حذف از یک حلقه به حلقه دیگر افزایش می‌یابد، محدودیت فعلی می‌تواند موقتاً بالاتر از حد نرم افزایش یابد، اما هرگز فراتر از حد سخت نخواهد رفت. .PP محدودیت‌های همانندسازی به پنج دسته تقسیم می‌شوند: .IP \[bu] 2 محدودیت نخست برای چانک‌های در معرض خطر است (چانک‌هایی که فقط یک نسخه دارند) .IP \[bu] 2 محدودیت دوم برای چانک‌های زیرهدف است (چانک‌هایی با تعداد نسخه‌های کمتر از هدف تعیین‌شده) .IP \[bu] 2 محدودیت سوم برای توازن مجدد میان سرورهایی است که مصرف فضای آن‌ها نزدیک به میانگین حسابی است .IP \[bu] 2 محدودیت چهارم برای توازن مجدد میان سایر سرورهاست (مصرف فضای بسیار کم یا بسیار زیاد) .IP \[bu] 2 محدودیت پنجم برای همانندسازی‌های بازیابی ناشی از عملیات ورودی/خروجی (خواندن/نوشتن) است .PP معمولاً عدد اول باید بزرگتر یا مساوی با دومی باشد، دومی بزرگتر یا مساوی سومی، و چهارمی بزرگتر یا مساوی سومی ( 1st >= 2nd >= 3rd <= 4th ). محدودیت پنجم باید برابر یا بزرگتر از هر یک از محدودیت‌های دیگر باشد. اگر تنها یک عدد مشخص شود، تمام محدودیت‌ها روی این عدد تنظیم می‌شوند (برای سازگاری با گذشته). اگر فقط چهار عدد داده شود، عدد پنجم برابر با بیشینهٔ آن چهار عدد تعیین خواهد شد (همچنین برای سازگاری با گذشته). .PP هر زمان که بار چانک‌سرور بالاتر از \fBCS_HEAVY_LOAD_THRESHOLD\fP و به اندازهٔ \fBCS_HEAVY_LOAD_RATIO_THRESHOLD\fP برابر بیشتر از میانگین بار باشد، چانک‌سرور به حالت مهلت (grace) تغییر وضعیت می‌دهد. چانک‌سرور برای مدت \fBCS_HEAVY_LOAD_GRACE_PERIOD\fP ثانیه در حالت مهلت باقی می‌ماند. .PP پنج مقدار ممکن برای \fBATIME_MODE\fP وجود دارد (سایر مقادیر به عنوان 0 در نظر گرفته می‌شوند): .IP \[bu] 2 \fB0\fP = همواره atime را برای فایل‌ها، پوشه‌ها و پیوندهای نمادین تغییر بده. .IP \[bu] 2 \fB1\fP = همواره atime را تغییر بده اما تنها برای فایل‌ها (در مورد پوشه‌ها و پیوندهای نمادین atime را تغییر نده). .IP \[bu] 2 \fB2\fP = مقدار atime را تنها زمانی تغییر بده که کمتر از ctime یا mtime باشد و زمان فعلی به ترتیب بیشتر از ctime یا mtime باشد، همچنین هنگامی که atime فعلی قدیمی‌تر از 24 ساعت باشد آن را تغییر بده. این کار را برای تمام اشیاء هنگام دسترسی انجام بده (مانند گزینه "relatime" در لینوکس). .IP \[bu] 2 \fB3\fP = مانند مورد بالا اما تنها برای فایل‌ها. در مورد پوشه‌ها و پیوندهای نمادین atime را تغییر نده. .IP \[bu] 2 \fB4\fP = هرگز atime را در هنگام دسترسی تغییر نده (مانند گزینه "noatime"). .PP می‌توانید با استفاده از گزینهٔ \fBRESERVE_SPACE\fP فضایی را برای کاربر ارشد رزرو کنید. می‌توانید آن را بر حسب تعداد بایت‌ها، درصد کل فضا، ظرفیت بزرگ‌ترین چانک‌سرور و غیره تعریف کنید. .IP \[bu] 2 \fI#\fP یا \fI#\fP\fBB\fP = تعداد بایت‌های رزروشده برای کاربر ارشد. پیشوندهای استاندارد متریک قابل استفاده هستند \- SI و IEC (مانند k، K، M، Mi، G، Gi و غیره). .IP \[bu] 2 \fI#\fP\fB%\fP یا \fI#\fP\fB.\fP\fI#\fP\fB%\fP = درصد کل ظرفیت نمونهٔ MooseFS. .IP \[bu] 2 \fI#\fP\fBU\fP یا \fI#\fP\fB.\fP\fI#\fP\fBU\fP = مضاربی از مقدار "U"؛ مقدار U به عنوان حداکثر تعداد بایت‌های مصرف‌شدهٔ فعلی توسط یک چانک‌سرور واحد تعریف می‌شود. .IP \[bu] 2 \fI#\fP\fBC\fP یا \fI#\fP\fB.\fP\fI#\fP\fBC\fP = مضاربی از مقدار "C"؛ مقدار C به عنوان حداکثر ظرفیت کل یک چانک‌سرور واحد تعریف می‌شود. .PP هنگامی که شبکهٔ شما دارای دو (یا چند) کلاس IP باشد، ممکن است بخواهید از یک شبکه برای ارتباطات استاندارد میان ماژول‌های MFS و از یک شبکهٔ مجزا فقط برای ورودی/خروجی (I/O) استفاده کنید. این کار با تنظیم \fBREMAP_BITS\fP، \fBREMAP_SOURCE_IP_CLASS\fP و \fBREMAP_DESTINATION_IP_CLASS\fP امکان‌پذیر است. هنگامی که این گزینه‌ها را تنظیم کنید، مستر نشانی‌های IP چانک‌سرورها را در داخل تغییر داده و آن‌ها را به عنوان مکان‌های چانک ارسال می‌کند، بنابراین کلاینت‌ها برای تمامی عملیات ورودی/خروجی با استفاده از IP جدید (مقصد) به چانک‌سرورها متصل می‌شوند، اما همچنان با استفاده از IP اصلی (مبدا) با مستر ارتباط برقرار می‌کنند. همچنین چانک‌سرورها از IP اصلی برای ارتباط با مستر استفاده می‌کنند، اما در حین همانندسازی از IPهای جدید برای ارتباط میان خود بهره می‌برند. توجه داشته باشید که تمام کلاینت‌ها و چانک‌سرورها باید به هر دو شبکه دسترسی داشته باشند، اما مسترها، متالاگرها و غیره تنها نیاز به دسترسی به شبکهٔ مبدا دارند. .PP هنگامی که کلاینت‌های شما در دو یا چند شبکهٔ LAN یا VLAN مجزا قرار دارند، ممکن است بخواهید آن‌ها با استفاده از IPهای شبکهٔ خود به مسترها و چانک‌سرورها متصل شوند. این کار را می‌توان با تنظیم \fBMULTILAN_BITS\fP و \fBMULTILAN_CLASSES\fP انجام داد. هر بار که کلاینتی متصل می‌شود، مستر بررسی می‌کند که آیا اتصال از یکی از کلاس‌های LAN تعریف‌شده آمده است یا خیر، و در صورت مثبت بودن، پیش از ارسال IP چانک‌سرور به کلاینت، \fBMULTILAN_BITS\fP بیت اول هر IP چانک‌سرور را بازنگاشت می‌کند. اتصالات دریافتی از سایر نشانی‌های IP طبق معمول رفتار خواهند شد (یعنی IPهای اصلی چانک‌سرور در پاسخ ارسال می‌شوند). تمامی مسترها و چانک‌سرورها باید یک IP از هر یک از کلاس‌های تعریف‌شده در \fBMULTILAN_CLASSES\fP داشته باشند و یک ماژول (چانک‌سرور یا مستر) باید پسوند IP یکسانی در هر کلاس داشته باشد. پیکربندی مناسب DNS نیز الزامی است: کلاینت‌ها در هر LAN باید در هنگام پرس‌وجو از DNS درباره میزبان مستر، یا IP متفاوتی دریافت کنند یا از نام‌های میزبان مستر متفاوتی استفاده کنند که به IPهای کلاس خودشان ترجمه می‌شوند. برای اطلاعات بیشتر درباره نام میزبان مستر به .BR mfsmount (8) و .BR mfsbdev (8) مراجعه فرمایید. .PP دو مجموعه گزینهٔ بالا را می‌توان به همراه یکدیگر استفاده کرد. یک هدف می‌تواند ایجاد یک شبکهٔ مجزا برای همانندسازی داده‌ها میان چانک‌سرورها و در عین حال حفظ چندین شبکهٔ مجزا (LANها) برای مجموعه‌های مجزای کلاینت‌ها باشد. برای مثال، با پیکربندی زیر: .PP .nf REMAP_BITS = 24 REMAP_SOURCE_IP_CLASS = 10.0.0.0 REMAP_DESTINATION_IP_CLASS = 10.0.1.0 MULTILAN_BITS = 24 MULTILAN_CLASSES = 192.168.1.0, 192.168.2.0, 192.168.3.0, 10.0.1.0 .fi .PP تمام ترافیک شبکه از کلاینت‌های منطبق با یکی از کلاس‌های LAN در همان شبکه مدیریت خواهد شد (بنابراین کلاینتی با IP معادل 192.168.1.17 با استفاده از IPهایی با پیشوند 192.168.1 به مستر و چانک‌سرورها متصل می‌شود و کلاینتی با IP معادل 192.168.2.13 با استفاده از IPهایی با پیشوند 192.168.2 به مستر و چانک‌سرورها وصل خواهد شد)، تمام ترافیک متادیتا میان مستر و چانک‌سرورها در شبکه‌ای با پیشوند 10.0.0 اداره می‌شود و تمام ارتباطات مستقیم میان چانک‌سرورها (یعنی همانندسازی‌های چانک) در شبکه‌ای با پیشوند 10.0.1 مدیریت خواهد شد. توجه داشته باشید که هر کلاینتی از خارج کلاس‌های LAN تعریف‌شده، از طریق IPهای تعریف‌شده توسط \fBREMAP_DESTINATION_IP_CLASS\fP به چانک‌سرورها متصل خواهد شد. این همچنین پیکربندی صحیح DNS را مفروض می‌داند؛ به این معنی که اگر سرور مستر از پسوند IP معادل 1 استفاده می‌کند، کلاینتی با IP معادل 192.168.1.17 باید نام میزبان مستر را به 192.168.1.1 ترجمه کند و کلاینتی با IP معادل 192.168.2.13 باید نام میزبان مستر را به 192.168.2.1 ترجمه نماید. کلاینتی خارج از کلاس‌های LAN تعریف‌شده می‌تواند از هر یک از IPهای سرور مستر استفاده کند، اگرچه ترجیحاً 10.0.0.1 خواهد بود. .PP مسترها متادیتا را در فایلی روی دیسک محلی ذخیره می‌کنند. زمان‌های دقیق این عملیات توسط چهار متغیر تنظیم می‌شود: METADATA_SAVE_OFFSET، METADATA_SAVE_FREQ، (تنها نسخه Pro) METADATA_DOWNLOAD_FREQ، و (تنها نسخه Pro) METADATA_CRCCHECK_FREQ. .PP یک مستر منفرد، متادیتا را هر METADATA_SAVE_FREQ ساعت یک‌بار ذخیره می‌کند. نخستین ذخیره‌سازی روز در نیمه‌شب رخ می‌دهد و هر ذخیره‌سازی بعدی به اندازهٔ METADATA_SAVE_FREQ پس از مورد قبلی انجام می‌گیرد. این زمان‌بندی را می‌توان با METADATA_SAVE_OFFSET تغییر داد. تنظیم METADATA_SAVE_OFFSET با یک مقدار منفرد به معنای دقیقه خواهد بود. بنابراین تنظیمی مانند این: .PP .nf METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 15 .fi .PP به معنای ذخیره‌سازی در ساعت‌های 00:15، 02:15، 04:15 و غیره تا 22:15 خواهد بود. اگر ساعت نیز ارائه شود، در محاسبات در نظر گرفته می‌شود، اما تنها به صورت باقیمانده به پیمانه (modulo)، بنابراین: .PP .nf METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 1:15 .fi .PP دقیقاً مشابه این رفتار خواهد کرد: .PP .nf METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 5:15 .fi .PP و متادیتا را در ساعت‌های 01:15، 03:15، 05:15 و غیره ذخیره خواهد کرد. .PP تمام زمان‌های ذکرشده در بالا بر حسب UTC محاسبه می‌شوند، مگر آن‌که پسوند "L" استفاده شود. بنابراین اگر سرورهای شما در منطقه زمانی CET (برابر UTC-1) باشند، این تنظیم: .PP .nf METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 1:15 .fi .PP به این معنا خواهد بود که مستر متادیتا را در ساعت‌های 01:15، 03:15 و غیره به وقت UTC ذخیره می‌کند، که به معنای 00:15، 02:15 و غیره به وقت محلی (CET) است. برای ذخیره‌سازی در ساعت 01:15 (و هر 2 ساعت پس از آن) به وقت محلی، باید بنویسید: .PP .nf METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 1:15L .fi .PP (تنها نسخه Pro) با چند مستر، رهبر متادیتا را بر اساس تنظیم METADATA_CRCCHECK_FREQ ذخیره خواهد کرد، اما آفست را نیز در نظر می‌گیرد. بنابراین تنظیمی مانند: .PP .nf METADATA_CRCCHECK_FREQ = 12 METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 1:15 .fi .PP به این معنا خواهد بود که رهبر در ساعت‌های 01:15 و 13:15 متادیتا را ذخیره (و با پیروان مقایسه) می‌کند، در حالی که پیروان در ساعت‌های 01:15، 03:15، 05:15 و غیره ذخیره می‌کنند. .PP گزینهٔ METADATA_DOWNLOAD_FREQ بدین معناست که رهبر متادیتا را از یک پیرو بارگیری خواهد کرد و این مورد نیز METADATA_SAVE_OFFSET را دقیقاً همانند METADATA_CRCCHECK_FREQ لحاظ خواهد کرد. .PP زمان‌های اشاره‌شده در بالا بر حسب UTC محاسبه می‌شوند. بنابراین اگر سرورهای شما در منطقهٔ زمانی PST (برابر UTC-8) باشند، این تنظیم: .PP .nf METADATA_CRCCHECK_FREQ = 12 METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 1:15 .fi .PP به این معنا خواهد بود که رهبر متادیتا را در ساعت‌های 01:15 و 13:15 به وقت UTC ذخیره می‌کند، که معادل 17:15 و 05:15 (ساعت ۵:۱۵ بعدازظهر و ۵:۱۵ صبح) به وقت محلی (PST) است. برای ذخیره در ساعت‌های 01:15 و 13:15 (ساعت ۱:۱۵ صبح و ۱:۱۵ بعدازظهر) به وقت محلی، باید بنویسید: .PP .nf METADATA_CRCCHECK_FREQ = 12 METADATA_SAVE_FREQ = 2 METADATA_SAVE_OFFSET = 1:15L .fi .PP تنظیم: .PP .nf METADATA_SAVE_OFFSET = 0L .fi .PP می‌تواند برای تنظیم زمان‌های ذخیره‌سازی با منطقهٔ زمانی محلی بدون تغییر برنامهٔ پیش‌فرض ذخیرهٔ متادیتا استفاده شود. .PP گزینهٔ \fBKEEP_LEADERSHIP\fP را می‌توان برای انتخاب یک مستر در نصب نسخهٔ Pro به کار برد که هر زمان ممکن باشد نقش رهبر (LEADER) را به عهده می‌گیرد. اگر این مستر رهبری را بنا به دلایل مربوط به برخی اختلالات (قطع اتصال بیش از حد چانک‌سرورها از کلاستر، قطع اتصال این مستر از کلاستر \- ناشی از انقضای مهلت زمانی یا سایر مشکلات سخت‌افزاری) یا به دلیل راه‌اندازی مجدد پردازه (عمدی یا غیرعمدی) از دست بدهد، در سریع‌ترین زمان ممکن (به محض رسیدن به وضعیت همگام‌شدهٔ FOLLOWER) تلاش خواهد کرد نقش LEADER را بازپس گیرد. اگر کاربری با استفاده از ابزار \fBmfssupervisor\fP رهبری را تغییر داده باشد، این مستر تا زمانی که مجدداً به عنوان LEADER انتخاب شود (این امر می‌تواند به یکی از دو دلیل رخ دهد: تغییر عمدی رهبری توسط کاربر، یا شکست رهبر فعلی و انتخاب اتفاقی این سرور به عنوان رهبر جدید) یا مجدداً راه‌اندازی شود، تلاشی برای پس گرفتن رهبری نخواهد کرد. .PP تنظیم گزینهٔ \fBKEEP_LEADERSHIP\fP روی 1 برای بیش از یک سرور مستر در یک کلاستر توصیه نمی‌شود و ممکن است منجر به رفتارهای پیش‌بینی‌نشده گردد. .SH "حق نشر (COPYRIGHT)" حق نشر (C) 2026 Jakub Kruszona-Zawadzki, Saglabs SA .PP این فایل بخشی از MooseFS است. .PP نرم‌افزار MooseFS یک نرم‌افزار آزاد است؛ شما می‌توانید آن را تحت شرایط مجوز عمومی همگانی گنو (GNU GPL) که توسط بنیاد نرم‌افزارهای آزاد منتشر شده است، نسخه ۲ (تنها همین نسخه)، بازتوزیع کرده یا تغییر دهید. .PP نرم‌افزار MooseFS با این امید توزیع شده است که مفید باشد، اما بدون هیچ‌گونه ضمانت؛ حتی بدون ضمانت ضمنی قابلیت فروش یا مناسب بودن برای یک هدف خاص. برای جزئیات بیشتر به مجوز عمومی همگانی گنو مراجعه کنید. .PP شما باید به همراه این برنامه یک نسخه از مجوز عمومی همگانی گنو را دریافت کرده باشید؛ در غیر این صورت، ببینید: .SH "همچنین ببینید (SEE ALSO)" .BR mfsmaster (8), .BR mfsexports.cfg (5), .BR mfstopology.cfg (5), .BR mfsipmap.cfg (5)