1NAME 2 cssh - Cluster administration tool 3 4VERSION 5 This documentation is for version: 4.16 6 7SYNOPSIS 8 cssh [-a '<command>'] [-K <seconds>] [-q] [-c '<filename>'] [-x <cols>] 9 [-C '<filename>'] [--debug [[...] || <INTEGER>]] [-d] [-e 10 '<[user@]<host>[:port]>'] [--fillscreen] [-f '<font>'] [-h] [-L '[tag]'] 11 [-H] [-o '<STRING>'] [-p <port>] [-Q] [-y <rows>] [-s] [-r '<filename>'] 12 [-t '<STRING>'] [-g] [-T '<title>'] [-u] [-?] [-A] [-l '<username>'] 13 [-v] 14 15RELATED 16 Also see the individual man pages for each of these utilities 17 18 ccon - Use 'console' as the communication method 19 crsh - Use 'rsh' as the communication method 20 csftp - Use 'sftp' as the communication method 21 ctel - Use 'telnet' as the communication method 22 23DESCRIPTION 24 The command opens an administration console and an xterm to all 25 specified hosts. Any text typed into the administration console is 26 replicated to all windows. All windows may also be typed into directly. 27 28 This tool is intended for (but not limited to) cluster administration 29 where the same configuration or commands must be run on each node within 30 the cluster. Performing these commands all at once via this tool ensures 31 all nodes are kept in sync. 32 33 Connections are opened using ssh which must be correctly installed and 34 configured. 35 36 Extra caution should be taken when editing files as lines may not 37 necessarily be in the same order; assuming line 5 is the same across all 38 servers and modifying that is dangerous. It's better to search for the 39 specific line to be changed and double-check all terminals are as 40 expected before changes are committed. 41 42 Further Notes 43 Please also see "KNOWN BUGS". 44 45 * The dotted line on any sub-menu is a tear-off, i.e. click on it and 46 the sub-menu is turned into its own window. 47 48 * Unchecking a hostname on the Hosts sub-menu will unplug the host 49 from the cluster control window, so any text typed into the console 50 is not sent to that host. Re-selecting it will plug it back in. 51 52 * If your window manager menu bars are obscured by terminal windows 53 see the "screen_reserve_XXXXX" options in the 54 $HOME/.clusterssh/config file (see "FILES"). 55 56 * If the terminals overlap too much see the "terminal_reserve_XXXXX" 57 options in the $HOME/.clusterssh/config file (see "FILES"). 58 59 * When using ClusterSSH on a large number of systems to connect to a 60 single system using an SSH utility (e.g. you issue a command to to 61 copy a file using scp from the remote computers to a single host) 62 and when these connections require authentication (i.e. you are 63 going to authenticate with a password), the sshd daemon at that 64 location may refuse connections after the number "MaxStartups" limit 65 in sshd_config is exceeded. (If this value is not set, it defaults 66 to 10). This is expected behavior; sshd uses this mechanism to 67 prevent DoS attacks from unauthenticated sources. Please tune 68 sshd_config and reload the SSH daemon, or consider using the 69 ~/.ssh/authorized_keys mechanism for authentication if you encounter 70 this problem. 71 72 * If client windows fail to open, try running: 73 74 "cssh -e {single host name}" 75 76 This will test the mechanisms used to open windows to hosts. This 77 could be due to either the "-xrm" terminal option which enables 78 "AllowSendEvents" (some terminals do not require this option, other 79 terminals have another method for enabling it - see your terminal 80 documentation) or the configuration of "ssh". 81 82OPTIONS 83 Some of these options may also be defined within the configuration file. 84 Default options are shown as appropriate. 85 86 --action '<command>', -a '<command>' 87 Run the command in each session, e.g. "-a 'vi /etc/hosts'" to drop 88 straight into a vi session. 89 90 --autoclose <seconds>, -K <seconds> 91 Number of seconds to wait before closing finished terminal windows. 92 93 --autoquit, -q 94 Toggle automatically quitting after the last client window has 95 closed (overriding the config file). 96 97 --cluster-file '<filename>', -c '<filename>' 98 Use supplied file as additional cluster file (see also "FILES"). 99 100 --cols <cols>, -x <cols> 101 Number of columns 102 103 --config-file '<filename>', -C '<filename>' 104 Use supplied file as additional configuration file (see also 105 "FILES"). 106 107 --debug [[...] || <INTEGER>] 108 Enable debugging. Either a level can be provided or the option can 109 be repeated multiple times. Maximum level is 9. 110 111 --dump-config, -d 112 Dump the current configuration in the same format used by the 113 $HOME/.clusterssh/config file. 114 115 --evaluate '<[user@]<host>[:port]>', -e '<[user@]<host>[:port]>' 116 Display and evaluate the terminal and connection arguments to 117 display any potential errors. The <hostname> is required to aid the 118 evaluation. 119 120 --fillscreen 121 Resize terminal windows to fill the whole available screen 122 123 --font '<font>', -f '<font>' 124 Specify the font to use in the terminal windows. Use standard X font 125 notation such as "5x8". 126 127 --help, -h 128 Show basic help text and exit 129 130 --list '[tag]', -L '[tag]' 131 List available cluster tags. Tag is optional. If a tag is provided 132 then hosts for that tag are listed. NOTE: format of output changes 133 when using "--quiet" or "-Q" option. 134 135 --man, -H 136 Show full help text (the man page) and exit 137 138 --options '<STRING>', -o '<STRING>' 139 Specify arguments to be passed to ssh when making the connection. 140 NOTE: options for ssh should normally be put into the ssh 141 configuration file; see "ssh_config" and $HOME/.ssh/config for more 142 details. 143 144 Default: -x -o ConnectTimeout=10 145 146 --port <port>, -p <port> 147 Specify an alternate port for connections. 148 149 --quiet, -Q 150 Do not output extra text when using some options 151 152 --rows <rows>, -y <rows> 153 Number of rows 154 155 --show-history, -s 156 Show history within console window. 157 158 --tag-file '<filename>', -r '<filename>' 159 Use supplied file as additional tag file (see also "FILES") 160 161 --term-args '<STRING>', -t '<STRING>' 162 Specify arguments to be passed to terminals being used. 163 164 --tile, -g 165 Toggle window tiling (overriding the config file). 166 167 --title '<title>', -T '<title>' 168 Specify the initial part of the title used in the console and client 169 windows. 170 171 --unique-servers, -u 172 Toggle connecting to each host only once when a hostname has been 173 specified multiple times. 174 175 --usage, -? 176 Show synopsis and exit 177 178 --use-all-a-records, -A 179 If a hostname resolves to multiple IP addresses, toggle whether or 180 not to connect to all of them, or just the first one (see also 181 config file entry). 182 183 --username '<username>', -l '<username>' 184 Specify the default username to use for connections (if different 185 from the currently logged in user). NOTE: will be overridden by 186 <user>@<host>. 187 188 --version, -v 189 Show version information and exit 190 191ARGUMENTS 192 The following arguments are supported: 193 194 [user@]<hostname>[:port] ... 195 Open an xterm to the given hostname and connect to the 196 administration console. The optional port number can be used if the 197 server is not listening on the standard port. 198 199 <tag> ... 200 Open a series of xterms defined by <tag> in one of the supplementary 201 configuration files (see "FILES"). 202 203 Note: specifying a username on a cluster tag will override any 204 usernames defined in the cluster. 205 206KEY SHORTCUTS 207 The following key shortcuts are available within the console window, and 208 all of them may be changed via the configuration files. 209 210 Control-Shift-plus 211 Open the 'Add Host(s) or Cluster(s)' dialogue box. Multiple host or 212 cluster names can be entered, separated by spaces. 213 214 Alt-n 215 Paste in the hostname part of the specific connection string to each 216 client, minus any username or port, e.g. 217 218 "scp /etc/hosts server:files/<Alt-n>.hosts" 219 220 would replace the <Alt-n> with the client's name in each window. 221 222 Alt-l 223 Paste in the hostname of the server cssh is being run on 224 225 Alt-q 226 Quit the program and close all connections and windows. 227 228 Alt-r 229 Retile all the client windows. 230 231 Alt-u 232 Paste in the username for the connection 233 234 Alt-1 235 Alt-2 236 Alt-3 237 Alt-4 238 Run the matching user defined macro on the server and send the 239 output to the client 240 241EXAMPLES 242 Open up a session to 3 servers 243 $ cssh server1 server2 server3 244 245 Open up a session to a cluster of servers identified by the tag 'farm1' 246 and give the controlling window a specific title, where the tag is 247 defined in one of the default configuration files 248 $ cssh -T 'Web Farm Cluster 1' farm1 249 250 Connect to different servers using different login names. NOTE: this can 251 also be achieved by setting up appropriate options in the configuration 252 files. Do not close the console when the last terminal exits. 253 $ cssh user1@server1 admin@server2 254 255 Open up a cluster defined in a non-default configuration file 256 $ cssh -c $HOME/cssh.extra_clusters db_cluster 257 258 Override the configured/default port to use 2022 instead 259 $ cssh -p 2022 server1 server2 260 261FILES 262 /etc/clusters, $HOME/.clusterssh/clusters 263 These files contain a list of tags to server names mappings. When 264 any name is used on the command line it is checked to see if it is a 265 tag. If it is a tag, then the tag is replaced with the list of 266 servers. The format is as follows: 267 268 <tag> [user@]<server>[:port] [user@]<server>[:port] [...] 269 270 e.g. 271 272 # List of servers in live 273 live admin1@server1 admin2@server2:2022 server3 server4 274 275 All comments (marked by a #) and blank lines are ignored. Tags may 276 be nested, but be aware of using recursive tags as they are not 277 checked for. 278 279 Servers can be defined using expansion macros: 280 281 "webservers websvr{a,b,c}" 282 283 would be expanded to 284 285 "webservers websvra websvrb websvrc" 286 287 and 288 289 "webservers websvr{6..9}" 290 291 would be expanded to 292 293 "webservers websvr6 websvr7 websvr8 websvr9" 294 295 Extra cluster files may also be specified either as an option on the 296 command line (see "cluster-file") or in the user's 297 $HOME/.clusterssh/config file (see "extra_cluster_file" 298 configuration option). 299 300 NOTE: the last tag read overwrites any pre-existing tag of that 301 name. 302 303 NOTE: there is a special cluster tag called "default" - any tags or 304 hosts included within this tag will be automatically opened if 305 nothing is specified on the command line. 306 307 /etc/tags, $HOME/.clusterssh/tags 308 Very similar to clusters files but the definition is reversed. The 309 format is: 310 311 <host> <tag> [...] 312 313 This allows one host to be specified as a member of a number of 314 tags. This format can be clearer than using clusters files. 315 316 Extra tag files may be specified either as an option (see 317 "tag-file") or within the user's $HOME/.clusterssh/config file (see 318 "extra_tag_file" configuration option). 319 320 NOTE: All tags are added together 321 322 /etc/csshrc & $HOME/.clusterssh/config 323 This file contains configuration overrides - the defaults are as 324 marked. Default options are overwritten first by the global file, 325 and then by the user file. 326 327 NOTE: values for entries do not need to be quoted unless it is 328 required for passing arguments, e.g. 329 330 "terminal_allow_send_events="-xrm '*.VT100.allowSendEvents:true'"" 331 332 should be written as 333 334 "terminal_allow_send_events=-xrm '*.VT100.allowSendEvents:true'" 335 336 auto_close = 5 337 Close terminal window after this many seconds. If set to 0 will 338 instead wait on input from the user in each window before 339 closing. See also --autoclose and --no-autoclose 340 341 auto_quit = 1 342 Automatically quit after the last client window closes. Set to 0 343 to disable. See also --autoquit 344 345 auto_wm_decoration_offsets = no 346 Enable or disable alternative algorithm for calculating terminal 347 positioning. 348 349 command_pre = 350 command_post = 351 Add extra commands around the communication method. For example: 352 353 command_pre= . $HOME/virtualenvs/default/bin/active ; 354 command_post= | ct 355 356 would allow for using Python virtual envronments and then piping 357 all shell output through "chromaterm" for syntax highlighting. 358 Note: you must use appropriate command separators/terminators to 359 keep the meaning of the command pipline (such as ";" and "|" 360 between commands). 361 362 These are not put through macro parsing. 363 364 comms = ssh 365 Sets the default communication method (initially taken from the 366 name of the program, but can be overridden here). 367 368 console_position = <null> 369 Set the initial position of the console - if empty then let the 370 window manager decide. Format is '+<x>+<y>', i.e. '+0+0' is top 371 left hand corner of the screen, '+0-70' is bottom left hand side 372 of screen (more or less). 373 374 external_command_mode = 0600 375 File mode bits for the external_command_pipe. 376 377 external_command_pipe = <null> 378 Define the full path to an external command pipe that can be 379 written to for controlling some aspects of ClusterSSH, such as 380 opening sessions to more clusters. 381 382 Commands: 383 384 "open <tag|hostname>" - open new sessions to provided tag or 385 hostname 386 387 "retile" - force window retiling 388 389 e.g.: "echo 'open localhost'" /path/to/external_command_pipe >> 390 391 external_cluster_command = <null> 392 Define the full path to an external command that can be used to 393 resolve tags to host names. This command can be written in any 394 language. The script must accept a list of tags to resolve and 395 output a list of hosts (space separated on a single line). Any 396 tags that cannot be resolved should be returned unchanged. 397 398 A non-0 exit code will be counted as an error, a warning will be 399 printed and output ignored. 400 401 If the external command is given a "-L" option it should output 402 a list of tags (space separated on a single line) it can resolve 403 404 extra_cluster_file = <null> 405 Define an extra cluster file in the format of /etc/clusters. 406 Multiple files can be specified, separated by commas. Both ~ and 407 $HOME are acceptable as a reference to the user's home 408 directory, e.g. 409 410 "extra_cluster_file = ~/clusters, $HOME/clus" 411 412 extra_tag_file = <null> 413 Define an extra tag file in the format of /etc/tags. Multiple 414 files can be specified, separated by commas. Both ~ and $HOME 415 are acceptable as a reference to the user's home directory, e.g. 416 417 "extra_tag_file = ~/tags, $HOME/tags" 418 419 key_addhost = Control-Shift-plus 420 Default key sequence to open AddHost menu. See "KEY SHORTCUTS" 421 for more information. 422 423 hide_menu = 0 424 If set to 1, hide the menu bar (File, Hosts, Send, Help) in the 425 console. 426 427 key_clientname = Alt-n 428 Default key sequence to send cssh client names to client. See 429 "KEY SHORTCUTS" for more information. 430 431 key_localname = Alt-l 432 Default key sequence to send hostname of local server to client. 433 See "KEY SHORTCUTS" for more information. 434 435 key_paste = Control-v 436 Default key sequence to paste text into the console window. See 437 "KEY SHORTCUTS" for more information. 438 439 key_quit = Control-q 440 Default key sequence to quit the program (will terminate all 441 open windows). See "KEY SHORTCUTS" for more information. 442 443 key_retilehosts = Alt-r 444 Default key sequence to retile host windows. See "KEY SHORTCUTS" 445 for more information. 446 447 key_username = Alt-u 448 Default key sequence to send username to client. See "KEY 449 SHORTCUTS" for more information. 450 451 key_user_1 = Alt-1 452 key_user_2 = Alt-2 453 key_user_3 = Alt-3 454 key_user_4 = Alt-4 455 Default key sequence to send user defined macros to client. If 456 the matching macro_user_1 macro is undefined, the sequence is 457 passed straight to the terminal. See "KEY SHORTCUTS" for more 458 information. 459 460 macro_servername = %s 461 macro_hostname = %h 462 macro_username = %u 463 macro_newline = %n 464 macro_version = %v 465 macro_user_1 = %1 466 macro_user_2 = %2 467 macro_user_3 = %3 468 macro_user_4 = %4 469 Change the replacement macro used when either using a 'Send' 470 menu item, or when pasting text into the main console. 471 472 macro_user_1_command = 473 macro_user_2_command = 474 macro_user_3_command = 475 macro_user_4_command = 476 User defined macros - the macro is run through the shell on the 477 server and the output is sent to the client. For example, 478 479 "macro_user_1_command=echo echo macro_user_1" 480 481 would send the text C<echo macro_user_1> into the terminal session. 482 483 "macro_user_1_command=env | grep CSSH" 484 485 would send the CSSH environment variables to the client. 486 487 The following environment variables are set in the shell of the 488 macro process 489 490 "CSSH_SERVERNAME" 491 "CSSH_HOSTNAME" 492 "CSSH_USERNAME" 493 "CSSH_CONNECTION_STRING" 494 "CSSH_CONNECTION_PORT" 495 "CSSH_VERSION" 496 497 macros_enabled = yes 498 Enable or disable macro replacement. Note: this affects all the 499 "macro_*" variables above. 500 501 max_addhost_menu_cluster_items = 6 502 Maximum number of entries in the 'Add Host' menu cluster list 503 before scrollbars are used 504 505 max_host_menu_items = 30 506 Maximum number of hosts to put into the host menu before 507 starting a new column 508 509 menu_host_autotearoff = 0 510 menu_send_autotearoff = 0 511 When set to non-0 will automatically tear-off the host or send 512 menu at program start 513 514 mouse_paste = Button-2 (middle mouse button) 515 Default key sequence to paste text into the console window using 516 the mouse. See "KEY SHORTCUTS" for more information. 517 518 rsh = /path/to/rsh 519 ssh = /path/to/ssh 520 telnet = /path/to/telnet 521 Set the path to the specific binary to use for the communication 522 method, else uses the first match found in $PATH 523 524 rsh_args = <blank> 525 ssh_args = "-x -o ConnectTimeout=10" 526 telnet_args = <blank> 527 Sets any arguments to be used with the communication method 528 (defaults to ssh arguments). 529 530 NOTE: The given defaults are based on OpenSSH, not commercial 531 ssh software. 532 533 NOTE: Any "generic" change to the method (e.g., specifying the 534 ssh port to use) should be done in the medium's own config file 535 (see "ssh_config" and $HOME/.ssh/config). 536 537 screen_reserve_top = 0 538 screen_reserve_bottom = 60 539 screen_reserve_left = 0 540 screen_reserve_right = 0 541 Number of pixels from the screen's side to reserve when 542 calculating screen geometry for tiling. Setting this to 543 something like 50 will help keep cssh from positioning windows 544 over your window manager's menu bar if it draws one at that side 545 of the screen. 546 547 terminal = /path/to/xterm 548 Path to the X-Windows terminal used for the client. 549 550 terminal_args = <blank> 551 Arguments to use when opening terminal windows. Otherwise takes 552 defaults from $HOME/.Xdefaults or $HOME/.Xresources file. 553 554 terminal_chdir = 0 555 When non-0, set the working directory for each terminal as per 556 'terminal_chdir_path' 557 558 terminal_chdir_path = $HOME/.clusterssh/work/%s 559 Path to use as working directory for each terminal when 560 'terminal_chdir' is enabled. The path provided is passed through 561 the macro parser (see the section above on 'macros_enabled'. 562 563 terminal_font = 6x13 564 Font to use in the terminal windows. Use standard X font 565 notation. 566 567 terminal_reserve_top = 5 568 terminal_reserve_bottom = 0 569 terminal_reserve_left = 5 570 terminal_reserve_right = 0 571 Number of pixels from the terminal's side to reserve when 572 calculating screen geometry for tiling. Setting these will help 573 keep cssh from positioning windows over your scroll and title 574 bars or otherwise overlapping the windows too much. 575 576 terminal_colorize = 1 577 If set to 1 (the default), then "-bg" and "-fg" arguments will 578 be added to the terminal invocation command-line. The terminal 579 will be colored in a pseudo-random way based on the host name; 580 while the color of a terminal is not easily predicted, it will 581 always be the same color for a given host name. After a while, 582 you will recognize hosts by their characteristic terminal color. 583 584 terminal_bg_style = dark 585 If set to "dark", the terminal background will be set to black 586 and the foreground to the pseudo-random color. If set to 587 "light", then the foreground will be black and the background 588 the pseudo-random color. If terminal_colorize is "zero", then 589 this option has no effect. 590 591 terminal_size = 80x24 592 Initial size of terminals to use. NOTE: the number of lines (24) 593 will be decreased when resizing terminals for tiling, not the 594 number of characters (80). 595 596 terminal_title_opt = -T 597 Option used with "terminal" to set the title of the window 598 599 terminal_allow_send_events = -xrm '*.VT100.allowSendEvents:true' 600 Option required by the terminal to allow XSendEvents to be 601 received 602 603 title = cssh 604 Title of windows to use for both the console and terminals. 605 606 unmap_on_redraw = no 607 Tell Tk to use the UnmapWindow request before redrawing terminal 608 windows. This defaults to "no" as it causes some problems with 609 the FVWM window manager. If you are experiencing problems with 610 redraws, you can set it to "yes" to allow the window to be 611 unmapped before it is repositioned. 612 613 use_all_a_records = 0 614 If a hostname resolves to multiple IP addresses, set to 1 to 615 connect to all of them, not just the first one found. See also 616 "--use-all-a-records"} 617 618 use_hotkeys = 1 619 Setting to 0 will disable all hotkeys. 620 621 use_natural_sort = 0 622 Windows will normally sort in alphabetical order, i.e.: host1, 623 host11, host2. Setting to this 1 will change the sort order, 624 i.e.: host1, host2, host11. NOTE: You must have the perl module 625 Sort::Naturally installed. 626 627 user = $LOGNAME 628 Sets the default user for running commands on clients. 629 630 window_tiling = 1 631 Perform window tiling (set to 0 to disable) 632 633 window_tiling_direction = right 634 Direction to tile windows, where "right" means starting top left 635 and moving right and then down, and anything else means starting 636 bottom right and moving left and then up 637 638 NOTE: The key shortcut modifiers must be in the form "Control", 639 "Alt" or "Shift", e.g. with the first letter capitalised and the 640 rest lower case. Keys may also be disabled individually by setting 641 to the word "null". 642 643 $HOME/.clusterssh/send_menu 644 This (optional) file contains items to populate the send menu. The 645 default entry could be written as: 646 647 <send_menu> 648 <menu title="Use Macros"> 649 <toggle/> 650 <accelerator>ALT-p</accelerator> 651 </menu> 652 <menu title="Remote Hostname"> 653 <command>%s</command> 654 <accelerator>ALT-n</accelerator> 655 </menu> 656 <menu title="Local Hostname"> 657 <command>%s</command> 658 <accelerator>ALT-l</accelerator> 659 </menu> 660 <menu title="Username"> 661 <command>%u</command> 662 <accelerator>ALT-u</accelerator> 663 </menu> 664 <menu title="Test Text"> 665 <command>echo "ClusterSSH Version: %v%n</command> 666 </menu> 667 </send_menu> 668 669 Submenus can also be specified as follows: 670 671 <send_menu> 672 <menu title="Default Entries"> 673 <detach>yes</detach> 674 <menu title="Hostname"> 675 <command>%s</command> 676 <accelerator>ALT-n</accelerator> 677 </menu> 678 </menu> 679 </send_menu> 680 681 Caveats: 682 683 There is currently no strict format checking of this file. 684 The format of the file may change in the future 685 If the file exists, the default entry (Hostname) is not added 686 687 The following replacement macros are available (note: these can be 688 changed in the configuration file): 689 690 %s Hostname part of the specific connection string to each client, 691 minus any username or port 692 693 %u Username part of the connection string to each client 694 695 %h Hostname of server where cssh is being run from 696 697 %n "RETURN" code 698 699 NOTE: requires XML::Simple to be installed 700 701KNOWN BUGS 702 If you have any ideas about how to fix the below bugs, please get in 703 touch and/or provide a patch. 704 705 * Swapping virtual desktops can cause a redraw of all the terminal 706 windows. This is due to a lack of distinction within Tk between 707 switching desktops and minimising/maximising windows. Until Tk can 708 tell the difference between the two events, there is no fix (apart 709 from rewriting everything directly in X). 710 711TROUBLESHOOTING 712 If you have issues running cssh, first try: 713 714 "cssh -e [user@]<hostname>[:port]" 715 716 This performs two tests to confirm cssh is able to work properly with 717 the settings provided within the $HOME/.clusterssh/config file (or 718 internal defaults). 719 720 1 Test the terminal window works with the options provided 721 722 2 Test ssh works to a host with the configured arguments 723 724 Configuration options to watch for in ssh are: 725 726 * SSH doesn't understand "-o ConnectTimeout=10" - remove the option 727 from the $HOME/.clusterssh/config file 728 729 * OpenSSH-3.8 using untrusted ssh tunnels - use "-Y" instead of "-X" 730 or use "ForwardX11Trusted yes" in $HOME/.ssh/ssh_config (if you 731 change the default ssh options from "-x" to "-X") 732 733SUPPORT AND REPORTING BUGS 734 A web site for comments, requests, bug reports and bug fixes/patches is 735 available at: <https://github.com/duncs/clusterssh> 736 737 If you require support, please run the following commands and create an 738 issue via: <https://github.com/duncs/clusterssh/issues> 739 740 "perl -V" 741 742 "perl -MTk -e 'print $Tk::VERSION,$/'" 743 744 "perl -MX11::Protocol -e 'print $X11::Protocol::VERSION,$/'" 745 746 "cat /etc/csshrc $HOME/.clusterssh/config" 747 748 Using the debug option (--debug) will turn on debugging output. Repeat 749 the option to increase the amount of debug. However, if possible please 750 only use this option with one host at a time, e.g. "cssh --debug <host>" 751 due to the amount of output produced (in both main and child windows). 752 753SEE ALSO 754 <https://github.com/duncs/clusterssh/wiki/>, "ssh", Tk::overview, 755 X11::Protocol, "perl" 756 757AUTHOR 758 Duncan Ferguson, "<duncan_j_ferguson at yahoo.co.uk>" 759 760LICENSE AND COPYRIGHT 761 Copyright 1999-2018 Duncan Ferguson. 762 763 This program is free software; you can redistribute it and/or modify it 764 under the terms of either: the GNU General Public License as published 765 by the Free Software Foundation; or the Artistic License. 766 767 See http://dev.perl.org/licenses/ for more information. 768 769