• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

bin_PL/H20-Jun-2020-435342

lib/App/H20-Jun-2020-6,0754,088

t/H20-Jun-2020-3,1822,790

.gitignoreH A D20-Jun-2020162 1817

.travis.ymlH A D20-Jun-2020617 3332

AUTHORSH A D20-Jun-2020105 63

Build.PLH A D20-Jun-20201 KiB3831

ChangesH A D20-Jun-202025.8 KiB546439

READMEH A D20-Jun-202028.5 KiB769572

THANKSH A D20-Jun-2020893 5249

TODOH A D20-Jun-2020374 1711

dist.iniH A D20-Jun-20201.5 KiB7561

README

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