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