.\" ---------------------------------------------------------------------------- .\" Update the date below if you make any significant change. .\" ---------------------------------------------------------------------------- . .TH MULTIPATHD 8 2024-05-29 Linux . . .\" ---------------------------------------------------------------------------- .SH "نام (NAME)" .\" ---------------------------------------------------------------------------- . multipathd \- دیمن مدیریت چندمسیره دیسک‌ها . . .\" ---------------------------------------------------------------------------- .SH "خلاصه دستور (SYNOPSIS)" .\" ---------------------------------------------------------------------------- . .B multipathd .RB [\| \-d \|] .RB [\| \-s \|] .RB [\| \-v\ \c .IR verbosity \|] .RB [\| \-B \|] .RB [\| \-w \|] .LP .B multipathd .RB [\| \-v\ \c .IR verbosity \|] .B -k\fIcommand\fR .LP .B multipathd .RB [\| \-v\ \c .IR verbosity \|] .B -k .\" ---------------------------------------------------------------------------- .SH "توضیحات (DESCRIPTION)" .\" ---------------------------------------------------------------------------- . دیمن \fBmultipathd\fR وظیفه بررسی و نظارت بر مسیرهای معیوب را بر عهده دارد. هنگامی که مسیری از کار می‌افتد، نگاشت چندمسیره‌ای (multipath map) را که آن مسیر به آن تعلق دارد بازپیکربندی می‌کند تا این نگاشت حداکثر کارایی و افزونگی (redundancy) خود را بازیابد. با گزینه \fB-k\fR، برنامه \fBmultipathd\fR به عنوان ابزار کلاینت عمل کرده و دستوراتی را به نمونه در حال اجرای دیمن multipathd ارسال می‌کند (به بخش \fBدستورات (COMMANDS)\fR در ادامه مراجعه کنید). . . .\" ---------------------------------------------------------------------------- .SH "گزینه‌ها (OPTIONS)" .\" ---------------------------------------------------------------------------- . .TP .B \-d حالت پیش‌زمینه (Foreground). برنامه دیمن نمی‌شود و تمامی پیام‌ها را در خروجی استاندارد و خطای استاندارد چاپ می‌کند. . .TP .B \-s حذف برچسب‌های زمانی. از درج برچسب زمانی در ابتدای پیام‌های وقایع‌نگاری جلوگیری می‌کند. . .TP .BI \-v " level" سطح پرحرفی (verbosity). اطلاعات اضافی را در حین اجرای multipathd چاپ می‌کند. سطح ۰ به معنای چاپ تنها خطاها است. سطح ۳ یا بالاتر اطلاعات اشکال‌زدایی را نیز چاپ می‌کند. . .TP .B \-B فایل اتصالات فقط‌خواندنی. دیمن multipathd در فایل اتصالات \fIuser_friendly_names\fR نخواهد نوشت. اگر نام کاربرپسندی (\fIuser_friendly_name\fR) برای دستگاهی وجود نداشته باشد، از WWID آن به عنوان نام مستعار استفاده می‌شود. . .TP .B \-k\fIcommand\fB دیمن multipathd دستور ارائه‌شده را اجرا می‌کند (به بخش \fBدستورات (COMMANDS)\fR مراجعه کنید). اگر دستور حاوی فاصله یا نویسه‌های ویژه شل باشد، باید مانند \fImultipathd -k'show topology'\fR درون نقل‌قول قرار گیرد. فاصله‌ای بین \fB-k\fR و رشته دستور مجاز نیست. دستورات را می‌توان بدون استفاده از \fB-k\fR نیز صادر کرد. در این حالت رشته دستور نباید درون نقل‌قول قرار گیرد. آرگومان‌های دستور که شامل فاصله یا نویسه‌های خاص هستند همچنان باید درون نقل‌قول باشند، مانند \fImultipathd show paths format "%n %w"\fR. . .TP .B \-k اجرای پوسته تعاملی \fBmultipathc\fR برای ورود دستورات (به بخش \fBدستورات (COMMANDS)\fR در ادامه مراجعه کنید). . .TP .B \-n \fIنادیده‌گرفته‌شده (IGNORED)\fR. از گزینه \fIfind_multipaths\fR برای کنترل نحوه برخورد با دستگاه‌های تازه شناسایی‌شده توسط multipathd استفاده کنید. به .BR multipath.conf(5) مراجعه کنید. . .TP .B \-w از زمان کرنل 4.14 از یک رابط جدید نظرسنجی رویداد device-mapper برای به‌روزرسانی دستگاه‌های چندمسیره بر اساس dmevents استفاده می‌شود. با این فلگ می‌توانید سیستم را وادار به استفاده از روش قدیمی انتظار رویداد، مبتنی بر ایجاد یک ریسه جداگانه برای هر دستگاه کنید. . . .\" ---------------------------------------------------------------------------- .SH "ارتباط با MULTIPATHD (COMMUNICATING WITH MULTIPATHD)" .\" ---------------------------------------------------------------------------- علاوه بر واسط خط فرمان multipathd، می‌توان از کتابخانه \fBlibmpathcmd\fR برای ارسال دستورات (به بخش \fBدستورات (COMMANDS)\fR در ادامه مراجعه کنید) از سایر برنامه‌ها به دیمن multipathd استفاده کرد. به طور پیش‌فرض، multipathd هم روی سوکت فضانام انتزاعی \fI@/org/kernel/linux/storage/multipathd\fR و هم روی فایل سوکت \fI/run/multipathd.socket\fR گوش می‌دهد. کتابخانه libmpathcmd از هر یک از این سوکت‌ها برای اتصال به multipathd استفاده خواهد کرد. فایل سوکت می‌تواند برای برقراری ارتباط با multipathd از فضانام‌های مختلف مفید باشد زیرا برخلاف سوکت فضانام انتزاعی، می‌توان آن را در آن‌ها به صورت bind سوار کرد. دیمن multipathd دستورات \fBlist|show\fR را از هر کاربری می‌پذیرد. سایر دستورات باید توسط کاربر ارشد (root) صادر شوند. امکان تغییر سوکت‌هایی که multipathd به آن‌ها گوش می‌دهد وجود دارد. اگر \fImultipathd.socket\fR در حال اجرا باشد، multipathd از سوکت‌هایی که آن گوش می‌دهد استفاده خواهد کرد. حداکثر دو سوکت را می‌توان توسط \fImultipathd.socket\fR تعریف کرد و به طور پیش‌فرض روی \fI@/org/kernel/linux/storage/multipathd\fR و \fI/run/multipathd.socket\fR گوش می‌دهد. اگر \fImultipathd.socket\fR در حال اجرا نباشد، می‌توان با تنظیم متغیر محیطی \fIMULTIPATH_SOCKET_NAME\fR در هنگام راه‌اندازی multipathd، یک سوکت واحد را برای گوش دادن پیکربندی کرد. این متغیر محیطی همچنین باید تنظیم شود تا دستورات CLI multipathd (یا هر برنامه دیگری که از libmpathcmd استفاده می‌کند) با استفاده از یک سوکت غیرپیش‌فرض به دیمن متصل شوند. . . .\" ---------------------------------------------------------------------------- .SH "دستورات (COMMANDS)" .\" ---------------------------------------------------------------------------- . دستورات زیر را می‌توان در حالت تعاملی استفاده کرد: . .TP .B list|show paths نمایش مسیرهایی که multipathd در حال پایش آن‌هاست و وضعیت آنها. . .TP .B list|show paths [raw] format $format نمایش مسیرهایی که multipathd در حال پایش آنهاست، با استفاده از یک رشته قالب حاوی نویسه‌های جانشین قالب مسیر. افزودن \fIraw\fR سرصفحه‌ها و فاصله‌گذاری‌های تراز را از خروجی حذف می‌کند. . .TP .B list|show path $path نمایش آنلاین یا آفلاین بودن مسیر $path. . .TP .B list|show maps|multipaths نمایش دستگاه‌های چندمسیره‌ای که multipathd در حال پایش آن‌هاست. . .TP .B list|show maps|multipaths [raw] format $format نمایش وضعیت تمام دستگاه‌های چندمسیره تحت پایش با استفاده از رشته قالب. افزودن \fIraw\fR سرصفحه‌ها و فاصله‌گذاری‌ها را حذف می‌کند. . .TP .B list|show maps|multipaths status نمایش وضعیت تمام دستگاه‌های چندمسیره‌ای که multipathd در حال پایش آن‌هاست. . .TP .B list|show maps|multipaths stats نمایش آمارهای مربوط به تمام دستگاه‌های چندمسیره تحت نظارت. . .TP .B list|show maps|multipaths topology نمایش توپولوژی جاری دستگاه‌های چندمسیره. معادل '\fImultipath \-ll\fR'. .TP . .B list|show maps|multipaths json نمایش اطلاعات تمامی دستگاه‌های چندمسیره در قالب JSON. . .TP .B list|show topology نمایش توپولوژی جاری چندمسیره. معادل '\fImultipath \-ll\fR'. . .TP .B list|show map|multipath $map topology نمایش توپولوژی یک دستگاه چندمسیره خاص مشخص‌شده با $map (برای نمونه 36005076303ffc56200000000000010aa). این شناسه را می‌توان از '\fIlist maps\fR' به دست آورد. . .TP .B list|show map|multipath $map [raw] format $format. نمایش وضعیت دستگاه چندمسیره $map با استفاده از رشته قالب. . .TP .B list|show map|multipath $map json نمایش اطلاعات دستگاه چندمسیره $map در قالب JSON. . .TP .B list|show wildcards نمایش نویسه‌های جانشین قالب مورد استفاده در دستورات تعاملی که $format دریافت می‌کنند. . .TP .B list|show config نمایش پیکربندی جاری مورد استفاده، برگرفته از مقادیر پیش‌فرض و مقادیر مشخص‌شده در فایل پیکربندی \fI/etc/multipath.conf\fR. . .TP .B list|show config local نمایش پیکربندی جاری مشابه \fIshow config\fR، اما با محدود کردن بخش دستگاه‌ها به دستگاه‌هایی که واقعاً در سیستم وجود دارند. . .TP .B list|show blacklist نمایش قوانین فهرست سیاه (blacklist) جاری، برگرفته از مقادیر پیش‌فرض و مقادیر مشخص‌شده در \fI/etc/multipath.conf\fR. . .TP .B list|show devices نمایش تمام دستگاه‌های بلاک موجود بر اساس نام به همراه اطلاعات مربوط به حضور یا عدم حضور آن‌ها در فهرست سیاه. . .TP .B list|show status نمایش تعداد بررسی‌کننده‌های مسیر در هر وضعیت ممکن، تعداد مسیرهای تحت نظارت، و اینکه آیا multipathd در حال حاضر مشغول پردازش رویداد uevent است یا خیر. . .TP .B list|show daemon نمایش وضعیت جاری دیمن multipathd. . .TP .B reset maps|multipaths stats بازنشانی آمارهای تمامی دستگاه‌های چندمسیره. . .TP .B reset map|multipath $map stats بازنشانی آمارهای دستگاه چندمسیره $map. . .TP .B add path $path افزودن یک مسیر به فهرست مسیرهای تحت نظارت. مقدار $path همان نام فهرست‌شده در /sys/block است (مانند sda). . .TP .B remove|del path $path توقف نظارت بر یک مسیر. مقدار $path همان نام فهرست‌شده در /sys/block است (مانند sda). . .TP .B add map|multipath $map افزودن یک دستگاه چندمسیره به فهرست دستگاه‌های تحت نظارت. مقدار $map می‌تواند یک دستگاه device-mapper فهرست‌شده در /sys/block باشد (مانند dm-0) یا نام مستعار دستگاه (مانند mpath1) یا uid دستگاه چندمسیره. . .TP .B remove|del maps|multipaths حذف تمام دستگاه‌های چندمسیره. . .TP .B remove|del map|multipath $map حذف دستگاه چندمسیره $map. . .TP .B resize map|multipath $map تغییر اندازه نگاشت $map به اندازه داده‌شده. . .TP .B switch|switchgroup map|multipath $map group $group وادار کردن دستگاه چندمسیره به تغییر به یک گروه مسیر خاص. مقدار $group اندیس گروه مسیر است که از ۱ شروع می‌شود. . .TP .B reconfigure بازخوانی پیکربندی و بارگذاری مجدد تمامی دستگاه‌های چندمسیره تغییریافته. این کار هنگام شروع به کار، هنگام بازخوانی سرویس یا دریافت سیگنال SIGHUP نیز رخ می‌دهد. . .TP .B reconfigure all بازخوانی پیکربندی و بارگذاری مجدد تمامی دستگاه‌های چندمسیره صرف‌نظر از تغییر یافتن یا نیافتن آن‌ها. این کار هنگام اجرای \fImultipath -r\fR نیز رخ می‌دهد. .TP .B suspend map|multipath $map قرار دادن نگاشت $map در حالت تعلیق (suspend). . .TP .B resume map|multipath $map از سرگیری فعالیت نگاشت $map از حالت تعلیق. . .TP .B reset map|multipath $map تخصیص مجدد جدول(های) موجود device-mapper برای استفاده از دستگاه چندمسیره به جای دستگاه‌های مسیر آن. . .TP .B reload map|multipath $map بارگذاری مجدد یک دستگاه چندمسیره. . .TP .B fail path $path قرار دادن مسیر $path در وضعیت شکست‌خورده (failed). . .TP .B reinstate path $path بازگرداندن مسیر $path از وضعیت شکست‌خورده. . .TP .B disablequeueing maps|multipaths غیرفعال کردن صف‌بندی روی تمامی دستگاه‌های چندمسیره. . .TP .B restorequeueing maps|multipaths بازیابی صف‌بندی به تنظیم پیکربندی‌شده \fIno_path_retry\fR روی تمامی دستگاه‌های چندمسیره‌ای که صف‌بندی آنها قبلاً توسط دستور \fIdisablequeueing\fR غیرفعال شده بود. . .TP .B disablequeueing map|multipath $map غیرفعال کردن صف‌بندی روی نگاشت چندمسیره $map. . .TP .B restorequeueing map|multipath $map بازیابی صف‌بندی به تنظیم پیکربندی‌شده \fIno_path_retry\fR روی نگاشت چندمسیره $map. . .TP .B forcequeueing daemon وادار کردن multipathd به حالت queue_without_daemon، به طوری که صف‌بندی no_path_retry هنگام توقف دیمن غیرفعال نشود. . .TP .B restorequeueing daemon بازیابی حالت پیکربندی‌شده queue_without_daemon. . .TP .B setprstatus map|multipath $map فعال‌سازی مدیریت رزرو پایدار (persistent reservation) روی $map. . .TP .B setprstatus map|multipath $map pathlist $pathlist فعال‌سازی مدیریت رزرو پایدار روی $map و اطلاع به multipathd درباره مسیرهای ثبت‌شده، تا تلاشی برای ثبت مجدد آن‌ها انجام ندهد. . .TP .B unsetprstatus map|multipath $map غیرفعال کردن مدیریت رزرو پایدار روی $map. . .TP .B getprstatus map|multipath $map دریافت وضعیت جاری مدیریت رزرو پایدار در $map. . .TP .B getprkey map|multipath $map دریافت کلید رزرو پایدار جاری مرتبط با $map. . .TP .B setprkey map|multipath $map key $key تنظیم کلید رزرو پایدار مرتبط با $map روی $key در \fIprkeys_file\fR. . .TP .B unsetprkey map|multipath $map حذف کلید رزرو پایدار مرتبط با $map از \fIprkeys_file\fR. . .TP .B setmarginal path $path انتقال $path به یک گروه مسیر حاشیه‌ای (marginal). مسیر در گروه مسیر حاشیه‌ای باقی می‌ماند تا زمانی که \fIunsetmarginal\fR فراخوانی شود. . .TP .B unsetmarginal path $path بازگرداندن مسیر حاشیه‌ای $path به گروه مسیر عادی خود. . .TP .B unsetmarginal map $map بازگرداندن تمامی مسیرهای حاشیه‌ای در $map به گروه‌های مسیر عادی آنها. . .TP .B quit|exit پایان دادن به نشست تعاملی. . .TP .B shutdown متوقف کردن multipathd. . . .\" ---------------------------------------------------------------------------- .SH "نویسه‌های جانشین قالب‌بندی (Format Wildcards)" .\" ---------------------------------------------------------------------------- . دستورات multipathd که گزینه $format را دریافت می‌کنند نیازمند یک رشته قالب هستند. این رشته نحوه چاپ دستگاه را کنترل می‌کند و باید شامل نویسه‌های جانشین قالب باشد. هنگام چاپ دستگاه‌ها، این نویسه‌های جانشین با اطلاعات مناسب دستگاه جایگزین می‌شوند. موارد زیر پشتیبانی می‌شوند: .TP .B نویسه‌های جانشین قالب چندمسیره (Multipath format wildcards) .RS .TP .B %n نام دستگاه. .TP .B %w شناسه جهانی دستگاه WWID (یا uuid). .TP .B %d نام sysfs دستگاه (dm-). .TP .B %F تنظیم \fBfailback\fR دستگاه. .TP .B %Q تنظیم \fBno_path_retry\fR دستگاه. .TP .B %N تعداد مسیرهای فعال دستگاه. .TP .B %r تنظیم حفاظت در برابر نوشتن دستگاه (\fIro\fR یا \fIrw\fR). .TP .B %t وضعیت دستگاه در device-mapper (\fIsuspend\fR یا \fIactive\fR). .TP .B %S اندازه دستگاه، با پسوندهای \fBK\fR، \fBM\fR، \fBG\fR، \fBT\fR و \fBP\fR. .TP .B %f رشته ویژگی‌های ("features") جدول device-mapper در هسته. .TP .B %x تعداد دفعاتی که دستگاه وارد وضعیتی شده که در آن ورودی/خروجی با شکست مواجه می‌شود (نام مستعار برای \fB%4\fR). .TP .B %h رشته مدیریت‌کننده سخت‌افزار در جدول دستگاه. .TP .B %A آخرین اقدامی که multipathd روی دستگاه انجام داده است (برای اشکال‌زدایی). .TP .B %0 تعداد دفعاتی که یک مسیر در دستگاه دچار شکست شده است. .TP .B %1 تعداد دفعاتی که multipathd تغییر گروه مسیر را برای دستگاه آغاز کرده است. .TP .B %2 تعداد دفعاتی که multipathd یک جدول جدید برای دستگاه بارگذاری کرده است. .TP .B %3 تعداد تقریبی ثانیه‌هایی که multipathd بدون مسیر قابل استفاده به صف‌بندی پرداخته است. .TP .B %4 تعداد دفعاتی که دستگاه وارد وضعیت شکست ورودی/خروجی شده است (نام مستعار برای \fB%x\fR). .TP .B %s رشته سازنده/محصول برای دستگاه. .TP .B %v رشته سازنده آرایه ذخیره‌سازی برای دستگاه. .TP .B %p رشته محصول آرایه ذخیره‌سازی برای دستگاه. .TP .B %e رشته ویرایش سفت‌افزار آرایه برای دستگاه. .TP .B %G کتابخانه خارجی استفاده‌شده برای دستگاه، یا \fB--\fR برای دستگاه‌های بومی device-mapper. .TP .B %g داده‌های صفحات vpd اختصاصی سازنده برای دستگاه (مانند صفحه 0xc0 برای آرایه‌های HPE 3PAR / Primera / Alletra). .TP .B %k مقدار واقعی max_sectors_kb برای دستگاه. .RE . . .TP .B نویسه‌های جانشین قالب مسیر (Path format wildcards) .RS .TP .B %w شناسه جهانی مسیر WWID (یا uuid). .TP .B %i مشخصات Host:Channel:Id:Lun برای دستگاه‌های SCSI یا مشخصات کنترلر/فضانام برای دستگاه‌های NVMe. .TP .B %d نام sysfs مسیر. .TP .B %D شماره major:minor دستگاه. .TP .B %t وضعیت دستگاه در device-mapper (\fIactive\fR یا \fIfailed\fR). .TP .B %o وضعیت آفلاین دستگاه ("offline" یا "running"). .TP .B %T وضعیت بررسی‌کننده مسیر multipathd برای دستگاه. حالات ممکن عبارتند از: .RS .TP .I ready دستگاه آماده انجام ورودی/خروجی است. .TP .I faulty دستگاه غیرقابل استفاده است. .TP .I shaky دستگاه قادر به انجام ورودی/خروجی نیست اما برای بررسی اولویت همچنان در دسترس است. .TP .I ghost دستگاه در حالت آماده‌باش (stand-by) قرار دارد. .TP .I i/o pending بررسی‌کننده در حال تعیین وضعیت دستگاه است. .TP .I i/o timeout مهلت زمانی بررسی‌کننده مسیر به پایان رسیده و دستگاه ناموفق اعلام شده است. .TP .I delayed دستگاه قابل استفاده به نظر می‌رسد، اما برای بررسی مسیر حاشیه‌ای به تأخیر افتاده است. .TP .I undef دستگاه عضو هیچ دستگاه چندمسیره‌ای نیست یا بررسی‌کننده آن هنوز اجرا نشده است. .RE .TP .B %s رشته سازنده/محصول/ویرایش برای دستگاه. .TP .B %c نام الگوریتم بررسی مسیر دستگاه. .TP .B %C میزان پیشرفت تا اجرای بعدی بررسی‌کننده مسیر به ثانیه. .TP .B %p اولویت دستگاه. .TP .B %S اندازه دستگاه، با پسوندهای \fBK\fR، \fBM\fR، \fBG\fR، \fBT\fR و \fBP\fR. .TP .B %z شماره سریال دستگاه. .TP .B %M وضعیت حاشیه‌ای دستگاه (\fImarginal\fR یا \fInormal\fR). .TP .B %m دستگاه چندمسیره‌ای که این دستگاه مسیری از آن است، یا \fI[offline]\fR یا \fI[orphan]\fR. .TP .B %N نام جهانی گره میزبان (WWNN) دستگاه در صورت وجود. .TP .B %n نام جهانی گره هدف (WWNN) دستگاه در صورت وجود. .TP .B %R نام جهانی پورت میزبان (WWPN) دستگاه در صورت وجود. .TP .B %r نام جهانی پورت هدف (WWPN) دستگاه در صورت وجود. .TP .B %a نام آداپتور میزبان برای دستگاه (فقط دستگاه‌های SCSI). .TP .B %G کتابخانه خارجی استفاده‌شده برای دستگاه، یا \fB--\fR برای دستگاه‌های بومی. .TP .B %g داده‌های صفحات vpd اختصاصی سازنده برای دستگاه. .TP .B %0 تعداد دفعاتی که این دستگاه دچار شکست شده است. .TP .B %P پروتکل دستگاه. به .BR /etc/multipath.conf (5) مراجعه کنید. .TP .B %I وضعیت مقداردهی اولیه دستگاه (دستگاه‌های کاملاً مقداردهی‌شده به صورت \fIok\fR نشان داده می‌شوند). .TP .B %L شناسه SCSI LUN دستگاه در قالب هگزادسیمال. .TP .B %A شناسه گروه پورت هدف ALUA برای دستگاه. .TP .B %k تنظیم واقعی max_sectors_kb برای دستگاه. .RE . . .\" ---------------------------------------------------------------------------- .SH "یکپارچه‌سازی با SYSTEMD (SYSTEMD INTEGRATION)" .\" ---------------------------------------------------------------------------- . هنگامی که با پشتیبانی از systemd کامپایل شود، دو فایل سرویس systemd نصب می‌شوند: \fImultipathd.service\fR و \fImultipathd.socket\fR. در صورت فعال بودن، سرویس \fImultipathd.socket\fR به systemd دستور می‌دهد که سوکت دستور CLI را رهگیری کند تا در صورت لزوم هرگونه فراخوانی رابط CLI باعث شروع به کار دیمن شود. فایل \fImultipathd.service\fR تعاریف کنترل دیمن چندمسیره را در بر دارد. خود دیمن از رابط \fBsd_notify\fR(3) برای ارتباط با systemd استفاده می‌کند. کلیدواژه‌های واحد زیر شناسایی می‌شوند: . .TP .B WatchdogSec= واچ‌داگ داخلی systemd را فعال می‌کند. دیمن multipath از طریق \fBsd_notify\fR(3) اعلانی برای بازنشانی واچ‌داگ به systemd ارسال می‌کند. . .TP .B OOMScoreAdjust= سازوکار داخلی تنظیم OOM را بازنویسی می‌کند. . .TP .B LimitNOFILE= تنظیم پیکربندی \fImax_fds\fR را بازنویسی می‌کند. . . .\" ---------------------------------------------------------------------------- .SH "همچنین ببینید (SEE ALSO)" .\" ---------------------------------------------------------------------------- . .BR multipathc (8), .BR multipath (8), .BR kpartx (8), .BR sd_notify (3), .BR systemd.service (5). . . .\" ---------------------------------------------------------------------------- .SH "نویسندگان (AUTHORS)" .\" ---------------------------------------------------------------------------- . مجموعه \fImultipath-tools\fR توسط Christophe Varoqui و دیگران توسعه یافته است. .\" EOF