CLUSH.CONF(5) ClusterShell User Manual CLUSH.CONF(5) نام (NAME) clush.conf - پرونده پیکربندی برای clush توضیحات (DESCRIPTION) پرونده‌های پیکربندی clush(1) در قالب ConfigParser پایتون هستند. مکان‌ها (Locations) دستور clush(1) گزینه‌های پیکربندی را از منابع زیر، به ترتیب اولویت نزولی به دست می‌آورد: 1. گزینه‌های خط فرمان 2. $CLUSTERSHELL_CFGDIR/clush.conf (فقط زمانی استفاده می‌شود که $CLUSTERSHELL_CFGDIR تعریف شده باشد) 3. پرونده پیکربندی کاربر ($XDG_CONFIG_HOME/clustershell/clush.conf، به طور پیش‌فرض $HOME/.config/clustershell/clush.conf) 4. محیط مجازی پایتون ({sys.prefix}/etc/clustershell/clush.conf) 5. نصب محلی کاربر با pip ($HOME/.local/etc/clustershell/clush.conf) 6. پرونده پیکربندی سراسری سیستم (/etc/clustershell/clush.conf) برای هر پارامتر، اولین مقدار دریافت‌شده استفاده خواهد شد. پرونده پیکربندی دارای قالبی به سبک RFC 822 شامل یک بخش اصلی است: Main تعریف گزینه‌های برنامه [Main] پارامترهای پیکربندی بخش Main در زیر توضیح داده شده‌اند. fanout اندازه پنجره لغزان (fanout) دستورات فعال برای clush. این fanout برای جلوگیری از اتصالات همزمان بیش از حد و حفظ منابع در میزبان‌های مبدا استفاده می‌شود. در حالت درختی (tree mode)، مقدار یکسانی از fanout در گره اصلی (head node) و در هر درگاه (gateway) استفاده می‌شود (مقدار fanout منتشر می‌شود). یعنی اگر مقدار fanout در گره اصلی 16 باشد، هر درگاه به طور همزمان حداکثر 16 اتصال به گره‌های هدف خود برقرار می‌کند. confdir فهرست اختیاری از مسیرهای دایرکتوری که clush باید در آن‌ها به دنبال پرونده‌های .conf بگردد؛ پرونده‌هایی که حالت‌های اجرا را تعریف می‌کنند و سپس می‌توانند با --mode فعال شوند. تمام تنظیمات دیگر پرونده پیکربندی clush که در اینجا تعریف شده‌اند ممکن است در یک حالت اجرا بازنویسی شوند. نام هر بخش حالت باید دارای پیشوند "mode:" باشد تا بخشی که یک حالت را تعریف می‌کند به وضوح مشخص شود. حالت‌های تکراری در این پرونده‌ها مجاز نیستند. پرونده‌های پیکربندی که برای کاربر فعلی قابل خواندن نباشند نادیده گرفته می‌شوند. متغیر $CFGDIR با مسیر دایرکتوری پیکربندی با بالاترین اولویت یافت‌شده (جایی که clush.conf قرار دارد) جایگزین می‌شود. مقدار پیش‌فرض confdir هم پیکربندی سراسری سیستم و هم هرگونه پیکربندی نصب‌شده کاربر را (به لطف $CFGDIR) فعال می‌کند. مسیرهای تکراری دایرکتوری نادیده گرفته می‌شوند. connect_timeout مهلت زمانی بر حسب ثانیه برای برقراری اتصال. این پارامتر به ssh ارسال می‌شود. اگر روی 0 تنظیم شود، هیچ مهلت زمانی در نظر گرفته نمی‌شود. command_prefix پیشوند دستور. معمولاً برای حالت‌های اجرای خاص استفاده می‌شود، به عنوان مثال برای پیاده‌سازی پشتیبانی از sudo(8). command_timeout مهلت زمانی بر حسب ثانیه برای تکمیل یک دستور پس از برقراری اتصال. این پارامتر به ssh ارسال می‌شود. علاوه بر این، کتابخانه ClusterShell تضمین می‌کند که هر دستوری در مدت زمان کمتر از ( connect_timeout + command_timeout ) به پایان برسد. اگر روی 0 تنظیم شود، هیچ مهلت زمانی در نظر گرفته نمی‌شود. color دستور clush می‌تواند از متغیرهای محیطی NO_COLOR، CLICOLOR و CLICOLOR_FORCE استفاده کند. NO_COLOR بر CLICOLOR_FORCE اولویت دارد که آن نیز بر CLICOLOR اولویت دارد. هنگامی که این گزینه در پرونده پیکربندی تنظیم شده باشد، متغیرهای محیطی تنها با آرگومان auto در نظر گرفته می‌شوند. color مشخص می‌کند که آیا از رنگ‌های ANSI برای احاطه کردن پیشوند/هدر گره یا nodeset با دنباله‌های فرار جهت نمایش رنگی آن‌ها در ترمینال استفاده شود یا خیر. آرگومان‌های معتبر عبارتند از never، always یا auto (که اگر خروجی یا خطای استاندارد به یک ترمینال اشاره داشته باشند از رنگ استفاده می‌کند). رنگ‌ها روی [34m (متن آبی پیش‌زمینه) برای خروجی استاندارد (stdout) و [31m (متن قرمز پیش‌زمینه) برای خطای استاندارد (stderr) تنظیم شده‌اند و قابل تغییر نیستند. fd_max حداکثر تعداد توصیف‌کننده‌های پرونده (file descriptors) باز مجاز به ازای هر فرآیند clush (محدودیت نرم منابع برای پرونده‌های باز). این محدودیت هرگز نمی‌تواند از محدودیت سیستمی (سخت) تجاوز کند. محدودیت‌های fd_max (نرم) و سیستمی (سخت) باید به اندازه کافی بالا باشند تا clush اجرا شود، هرچند مقادیر آن‌ها به مقدار fanout شما بستگی دارد. history_size تنظیم حداکثر تعداد ورودی‌های تاریخچه ذخیره‌شده در فهرست تاریخچه GNU readline. مقادیر منفی نشان‌دهنده اندازه نامحدود برای پرونده تاریخچه هستند. node_count آیا clush باید اطلاعات اضافی (تعداد گره‌ها) را در هدر بافر نمایش دهد؟ (yes/no) maxrc آیا clush باید بزرگ‌ترین کد بازگشتی دستورات را بازگرداند؟ (yes/no) password_prompt فعال‌سازی درخواست رمز عبور و ارسال رمز عبور به ورودی استاندارد (stdin)؟ (yes/no) معمولاً برای حالت‌های اجرای خاص استفاده می‌شود، مثلاً برای پیاده‌سازی پشتیبانی تعاملی از sudo(8). verbosity تنظیم سطح پرگویی (verbosity): 0 (بی‌صدا)، 1 (پیش‌فرض)، 2 (مفصل) یا بیشتر (اشکال‌زدایی). ssh_user تنظیم نام کاربر ssh برای اتصال از راه دور (پیش‌فرض این است که مقداری مشخص نشود). ssh_path تنظیم مسیر باینری ssh برای اتصال از راه دور (پیش‌فرض ssh است). ssh_options تنظیم گزینه‌های اضافی برای ارسال به دستور اصلی ssh. scp_path تنظیم مسیر باینری scp برای کپی از راه دور (پیش‌فرض scp است). scp_options تنظیم گزینه‌های اضافی برای ارسال به دستور اصلی scp. در صورت عدم تعیین، به جای آن از ssh_options استفاده می‌شود. rsh_path تنظیم مسیر باینری rsh برای اتصال از راه دور (پیش‌فرض rsh است). با تغییر این مقدار به راحتی می‌توانید از mrsh یا krsh استفاده کنید. rcp_path مشابه rsh_path برای دستور rcp (پیش‌فرض rcp است). rsh_options تنظیم گزینه‌های اضافی برای ارسال به دستور اصلی rsh/rcp. حالت‌های اجرا (Run modes) از نسخه 1.9، clush از حالت‌های اجرا (run modes) پشتیبانی می‌کند که تنظیمات ویژه clush.conf(5) با یک نام مشخص هستند. دو حالت اجرا در پرونده‌های پیکربندی نمونه ارائه شده‌اند که می‌توان آن‌ها را کپی و ویرایش کرد. آن‌ها احراز هویت مبتنی بر رمز عبور را با sshpass(1) و پشتیبانی تعاملی از sudo(8) با رمز عبور پیاده‌سازی می‌کنند. برای استفاده از یک حالت اجرا با clush --mode، یک پرونده پیکربندی در یکی از دایرکتوری‌های confdir در clush.conf(5) (معمولاً clush.conf.d) نصب کنید. تنها پرونده‌های پیکربندی که به .conf ختم می‌شوند بررسی می‌شوند. اگر کاربری که clush(1) را اجرا می‌کند دسترسی خواندن به پرونده پیکربندی را نداشته باشد، آن پرونده نادیده گرفته می‌شود. هنگامی که --mode مشخص شده باشد، می‌توانید با فعال کردن حالت اشکال‌زدایی (-d)، تمام حالت‌های اجرای موجود برای کاربر جاری را نمایش دهید. مثال‌ها (EXAMPLES) پرونده پیکربندی ساده. clush.conf [Main] fanout: 128 connect_timeout: 15 command_timeout: 0 history_size: 100 color: auto fd_max: 10240 maxrc: no node_count: yes confdir: /etc/clustershell/clush.conf.d فایل‌ها (FILES) $CLUSTERSHELL_CFGDIR/clush.conf پرونده پیکربندی سراسری clush. اگر $CLUSTERSHELL_CFGDIR تعریف نشده باشد، به جای آن از /etc/clustershell/clush.conf استفاده می‌شود. $XDG_CONFIG_HOME/clustershell/clush.conf پرونده پیکربندی کاربر برای clush. اگر $XDG_CONFIG_HOME تعریف نشده باشد، به جای آن از $HOME/.config/clustershell/clush.conf استفاده می‌شود. {sys.prefix}/etc/clustershell/clush.conf پرونده پیکربندی هنگامی که ClusterShell در یک محیط مجازی پایتون نصب شده باشد. $HOME/.local/etc/clustershell/clush.conf پرونده پیکربندی محلی کاربر برای clush (نصب پیش‌فرض برای pip --user) ~/.clush.conf پرونده پیکربندی منسوخ‌شده کاربر برای clush (از نسخه 1.9 به بعد دیگر خوانده نمی‌شود). تاریخچه (HISTORY) از نسخه 1.3 در ClusterShell، بخش External از clush.conf حذف شده است. دستورات خارجی که خروجی آن‌ها توسط clush استفاده می‌شد (-a, -g, -X) اکنون توسط خود کتابخانه مدیریت شده و در groups.conf(5) تعریف می‌شوند. همچنین ببینید (SEE ALSO) clush(1), groups.conf(5), sshpass(1), sudo(8). https://clustershell.readthedocs.io Python ConfigParser https://docs.python.org/3/library/configparser.html نویسنده (AUTHOR) Stephane Thiell حق نشر (COPYRIGHT) GNU Lesser General Public License version 2.1 or later (LGPLv2.1+) 1.10.1 2026-07-16 CLUSH.CONF(5)