mirror of
https://github.com/duncs/clusterssh.git
synced 2025-07-02 01:21:14 +00:00
Correct MANIFEST and remove unused files
This commit is contained in:
parent
0b9d1dbb97
commit
7efebc30b9
3 changed files with 7 additions and 818 deletions
12
MANIFEST
12
MANIFEST
|
@ -1,4 +1,5 @@
|
||||||
AUTHORS
|
AUTHORS
|
||||||
|
bin_PL/_build_docs
|
||||||
bin_PL/ccon
|
bin_PL/ccon
|
||||||
bin_PL/crsh
|
bin_PL/crsh
|
||||||
bin_PL/cscp.x
|
bin_PL/cscp.x
|
||||||
|
@ -6,14 +7,15 @@ bin_PL/cssh
|
||||||
bin_PL/ctel
|
bin_PL/ctel
|
||||||
Build.PL
|
Build.PL
|
||||||
Changes
|
Changes
|
||||||
lib/App/ClusterSSH.pm
|
|
||||||
lib/App/ClusterSSH/Base.pm
|
lib/App/ClusterSSH/Base.pm
|
||||||
lib/App/ClusterSSH/Cluster.pm
|
lib/App/ClusterSSH/Cluster.pm
|
||||||
lib/App/ClusterSSH/Config.pm
|
lib/App/ClusterSSH/Config.pm
|
||||||
|
lib/App/ClusterSSH/Getopt.pm
|
||||||
lib/App/ClusterSSH/Helper.pm
|
lib/App/ClusterSSH/Helper.pm
|
||||||
lib/App/ClusterSSH/Host.pm
|
lib/App/ClusterSSH/Host.pm
|
||||||
lib/App/ClusterSSH/L10N.pm
|
|
||||||
lib/App/ClusterSSH/L10N/en.pm
|
lib/App/ClusterSSH/L10N/en.pm
|
||||||
|
lib/App/ClusterSSH/L10N.pm
|
||||||
|
lib/App/ClusterSSH.pm
|
||||||
Makefile.PL
|
Makefile.PL
|
||||||
MANIFEST
|
MANIFEST
|
||||||
MANIFEST.SKIP
|
MANIFEST.SKIP
|
||||||
|
@ -23,8 +25,8 @@ README
|
||||||
t/00-load.t
|
t/00-load.t
|
||||||
t/01l10n.t
|
t/01l10n.t
|
||||||
t/02base.t
|
t/02base.t
|
||||||
t/10host.t
|
|
||||||
t/10host_ssh_config
|
t/10host_ssh_config
|
||||||
|
t/10host.t
|
||||||
t/15config.t
|
t/15config.t
|
||||||
t/15config.t.file1
|
t/15config.t.file1
|
||||||
t/15config.t.file2
|
t/15config.t.file2
|
||||||
|
@ -40,8 +42,8 @@ t/80clusterssh.t
|
||||||
t/boilerplate.t
|
t/boilerplate.t
|
||||||
t/changes.t
|
t/changes.t
|
||||||
t/external_cluster_command
|
t/external_cluster_command
|
||||||
|
THANKS
|
||||||
t/manifest.t
|
t/manifest.t
|
||||||
|
TODO
|
||||||
t/pod-coverage.t
|
t/pod-coverage.t
|
||||||
t/pod.t
|
t/pod.t
|
||||||
THANKS
|
|
||||||
TODO
|
|
||||||
|
|
|
@ -1,808 +0,0 @@
|
||||||
#!/usr/bin/perl
|
|
||||||
|
|
||||||
=pod
|
|
||||||
|
|
||||||
=head1 NAME
|
|
||||||
|
|
||||||
cssh - Cluster administration tool
|
|
||||||
|
|
||||||
=head1 SYNOPSIS
|
|
||||||
|
|
||||||
S<< cssh [options] [[user@]<server>[:port]|<tag>] [...] >>
|
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
|
||||||
|
|
||||||
The command opens an administration console and an xterm to all specified
|
|
||||||
hosts. Any text typed into the administration console is replicated to
|
|
||||||
all windows. All windows may also be typed into directly.
|
|
||||||
|
|
||||||
This tool is intended for (but not limited to) cluster administration where
|
|
||||||
the same configuration or commands must be run on each node within the
|
|
||||||
cluster. Performing these commands all at once via this tool ensures all
|
|
||||||
nodes are kept in sync.
|
|
||||||
|
|
||||||
Connections are opened via ssh, so a correctly installed and configured
|
|
||||||
ssh installation is required. If, however, the program is called by "crsh"
|
|
||||||
then the rsh protocol is used (and the communications channel is insecure),
|
|
||||||
or by "ctel" then telnet is used, or by "ccon" then console is used.
|
|
||||||
|
|
||||||
Extra caution should be taken when editing system files such as
|
|
||||||
/etc/inet/hosts as lines may not necessarily be in the same order. Assuming
|
|
||||||
line 5 is the same across all servers and modifying that is dangerous.
|
|
||||||
It's better to search for the specific line to be changed and double-check
|
|
||||||
before changes are committed.
|
|
||||||
|
|
||||||
=head2 Further Notes
|
|
||||||
|
|
||||||
Please also see L</KNOWN BUGS>.
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
The dotted line on any sub-menu is a tear-off, i.e. click on it
|
|
||||||
and the sub-menu is turned into its own window.
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
Unchecking a hostname on the Hosts sub-menu will unplug the host from the
|
|
||||||
cluster control window, so any text typed into the console is not sent to
|
|
||||||
that host. Re-selecting it will plug it back in.
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
If your window manager menu bars are obscured by terminal windows see
|
|
||||||
the C<screen_reserve_XXXXX> options in the F<$HOME/.clusterssh/config> file (see L</"FILES">).
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
If the terminals overlap too much see the C<terminal_reserve_XXXXX>
|
|
||||||
options in the F<$HOME/.clusterssh/config> file (see L</"FILES">).
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
When using cssh on a large number of systems to connect back to a single
|
|
||||||
system (e.g. you issue a command to the cluster to scp a file from a given
|
|
||||||
location) and when these connections require authentication (i.e. you are
|
|
||||||
going to authenticate with a password), the sshd daemon at that location
|
|
||||||
may refuse connects after the number specified by MaxStartups in
|
|
||||||
sshd_config is exceeded. (If this value is not set, it defaults to 10.)
|
|
||||||
This is expected behavior; sshd uses this mechanism to prevent DoS attacks
|
|
||||||
from unauthenticated sources. Please tune sshd_config and reload the SSH
|
|
||||||
daemon, or consider using the F<~/.ssh/authorized_keys> mechanism for
|
|
||||||
authentication if you encounter this problem.
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
If client windows fail to open, try running:
|
|
||||||
|
|
||||||
C<< cssh -e {single host name} >>
|
|
||||||
|
|
||||||
This will test the mechanisms used to open windows to hosts. This could
|
|
||||||
be due to either the C<-xrm> terminal option which enables C<AllowSendEvents>
|
|
||||||
(some terminals do not require this option, other terminals have another
|
|
||||||
method for enabling it - see your terminal documentation) or the
|
|
||||||
C<ConnectTimeout> ssh option (see the configuration option C<-o> or file
|
|
||||||
C<$HOME/.clusterssh/config> below to resolve this).
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 OPTIONS
|
|
||||||
|
|
||||||
Some of these options may also be defined within the configuration file.
|
|
||||||
Default options are shown as appropriate.
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item --action '<command>', -a '<command>'
|
|
||||||
|
|
||||||
Run the command in each session, e.g. C<-a 'vi /etc/hosts'> to drop straight
|
|
||||||
into a vi session.
|
|
||||||
|
|
||||||
=item --autoclose <seconds>, -K <seconds>
|
|
||||||
|
|
||||||
Number of seconds to wait before closing finished terminal windows.
|
|
||||||
|
|
||||||
=item --autoquit, -q
|
|
||||||
|
|
||||||
Enable automatically quiting after the last client window has closed
|
|
||||||
(overriding the config file). See also --no-autoquit
|
|
||||||
|
|
||||||
=item --cluster-file '<filename>', -c '<filename>'
|
|
||||||
|
|
||||||
Use supplied file as additional cluster file (see also L</"FILES">).
|
|
||||||
|
|
||||||
=item --config-file '<filename>', -C '<filename>'
|
|
||||||
|
|
||||||
Use supplied file as additional configuration file (see also L</"FILES">).
|
|
||||||
|
|
||||||
=item --debug [[...] || <INTEGER>]
|
|
||||||
|
|
||||||
Enable debugging. Either a level can be provided or the option can be
|
|
||||||
repeated multiple times. Maximum level is 4.
|
|
||||||
|
|
||||||
=item --evaluate '<[user@]<host>[:port]>', -e '<[user@]<host>[:port]>'
|
|
||||||
|
|
||||||
Display and evaluate the terminal and connection arguments to display any
|
|
||||||
potential errors. The <hostname> is required to aid the evaluation.
|
|
||||||
|
|
||||||
=item --font '<font>', -f '<font>'
|
|
||||||
|
|
||||||
Specify the font to use in the terminal windows. Use standard X font notation such as "5x8".
|
|
||||||
|
|
||||||
=item --help, -h
|
|
||||||
|
|
||||||
Show help text and exit
|
|
||||||
|
|
||||||
=item --list, -L
|
|
||||||
|
|
||||||
List available cluster tags.
|
|
||||||
|
|
||||||
=item --man, -H
|
|
||||||
|
|
||||||
Show full help text (the man page) and exit
|
|
||||||
|
|
||||||
=item --no-autoquit, -Q
|
|
||||||
|
|
||||||
Disable automatically quiting after the last client window has
|
|
||||||
closed (overriding the config file). See also --autoquit
|
|
||||||
|
|
||||||
=item --no-tile, -G
|
|
||||||
|
|
||||||
Disable window tiling (overriding the config file). See also --tile.
|
|
||||||
|
|
||||||
=item --options '<STRING>', -o '<STRING>'
|
|
||||||
|
|
||||||
Specify arguments to be passed to ssh when making the connection. B<NOTE:>
|
|
||||||
options for ssh should normally be put into the ssh configuration file;
|
|
||||||
see C<ssh_config> and F<$HOME/.ssh/config> for more details.
|
|
||||||
|
|
||||||
Default: -x -o ConnectTimeout=10
|
|
||||||
|
|
||||||
=item --output-config, -u
|
|
||||||
|
|
||||||
Output the current configuration in the same format used by the
|
|
||||||
F<$HOME/.clusterssh/config> file.
|
|
||||||
|
|
||||||
=item --port <port>, -p <port>
|
|
||||||
|
|
||||||
Specify an alternate port for connections.
|
|
||||||
|
|
||||||
=item --show-history, -s
|
|
||||||
|
|
||||||
IN BETA: Show history within console window. This code is still being
|
|
||||||
worked upon, but may help some users.
|
|
||||||
|
|
||||||
=item --tag-file '<filename>', -r '<filename>'
|
|
||||||
|
|
||||||
Use supplied file as additional tag file (see also L</"FILES">)
|
|
||||||
|
|
||||||
=item --term-args '<STRING>', -t '<STRING>'
|
|
||||||
|
|
||||||
Specify arguments to be passed to terminals being used.
|
|
||||||
|
|
||||||
=item --tile, -g
|
|
||||||
|
|
||||||
Enable window tiling (overriding the config file). See also --no-tile.
|
|
||||||
|
|
||||||
=item --title '<title>', -T '<title>'
|
|
||||||
|
|
||||||
Specify the initial part of the title used in the console and client windows.
|
|
||||||
|
|
||||||
=item --unique-servers, -m
|
|
||||||
|
|
||||||
Connect to each host only once.
|
|
||||||
|
|
||||||
=item --usage, -?
|
|
||||||
|
|
||||||
Show basic usage and exit
|
|
||||||
|
|
||||||
=item --use-all-a-records, -A
|
|
||||||
|
|
||||||
If a hostname resolves to multiple IP addresses, toggle whether or not to
|
|
||||||
connect to all of them, or just the first one (see also config file entry).
|
|
||||||
|
|
||||||
=item --username '<username>', -l '<username>'
|
|
||||||
|
|
||||||
Specify the default username to use for connections (if different from the
|
|
||||||
currently logged in user). B<NOTE:> will be overridden by <user>@<host>.
|
|
||||||
|
|
||||||
=item --version, -v
|
|
||||||
|
|
||||||
Show version information and exit
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 ARGUMENTS
|
|
||||||
|
|
||||||
The following arguments are supported:
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item [user@]<hostname>[:port] ...
|
|
||||||
|
|
||||||
Open an xterm to the given hostname and connect to the administration
|
|
||||||
console. An optional port number can be used if sshd is not listening
|
|
||||||
on the standard port (i.e., not listening on port 22) and ssh_config cannot
|
|
||||||
be used.
|
|
||||||
|
|
||||||
=item <tag> ...
|
|
||||||
|
|
||||||
Open a series of xterms defined by <tag> in one of the supplementary
|
|
||||||
configuration files (see L</"FILES">).
|
|
||||||
|
|
||||||
B<Note:> specifying a username on a cluster tag will override any usernames
|
|
||||||
defined in the cluster.
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 KEY SHORTCUTS
|
|
||||||
|
|
||||||
The following key shortcuts are available within the console window, and all
|
|
||||||
of them may be changed via the configuration files.
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item Control-q
|
|
||||||
|
|
||||||
Quit the program and close all connections and windows.
|
|
||||||
|
|
||||||
=item Control-+
|
|
||||||
|
|
||||||
Open the 'Add Host(s) or Cluster(s)' dialogue box. Multiple host or cluster
|
|
||||||
names can be entered, separated by spaces.
|
|
||||||
|
|
||||||
=item Alt-n
|
|
||||||
|
|
||||||
Paste in the hostname part of the specific connection string to each
|
|
||||||
client, minus any username or port, e.g.
|
|
||||||
|
|
||||||
C<< scp /etc/hosts server:files/<Alt-n>.hosts >>
|
|
||||||
|
|
||||||
would replace the <Alt-n> with the client's name in each window.
|
|
||||||
|
|
||||||
=item Alt-r
|
|
||||||
|
|
||||||
Retile all the client windows.
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 EXAMPLES
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item Open up a session to 3 servers
|
|
||||||
|
|
||||||
S<$ cssh server1 server2 server3>
|
|
||||||
|
|
||||||
=item Open up a session to a cluster of servers identified by the tag 'farm1'
|
|
||||||
and give the controlling window a specific title, where the cluster is defined
|
|
||||||
in one of the default configuration files
|
|
||||||
|
|
||||||
S<$ cssh -T 'Web Farm Cluster 1' farm1>
|
|
||||||
|
|
||||||
=item Connect to different servers using different login names. NOTE: this can
|
|
||||||
also be achieved by setting up appropriate options in the F<.ssh/config>
|
|
||||||
file. Do not close cssh when the last terminal exits.
|
|
||||||
|
|
||||||
S<$ cssh -Q user1@server1 admin@server2>
|
|
||||||
|
|
||||||
=item Open up a cluster defined in a non-default configuration file
|
|
||||||
|
|
||||||
S<$ cssh -c $HOME/cssh.config db_cluster>
|
|
||||||
|
|
||||||
=item Use telnet on port 2022 instead of ssh
|
|
||||||
|
|
||||||
S<$ ctel -p 2022 server1 server2>
|
|
||||||
|
|
||||||
=item Use rsh instead of ssh
|
|
||||||
|
|
||||||
S<$ crsh server1 server2>
|
|
||||||
|
|
||||||
=item Use console with master as the primary server instead of ssh
|
|
||||||
|
|
||||||
S<$ ccon -M master server1 server2>
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 FILES
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item F</etc/clusters>, F<$HOME/.clusterssh/clusters>
|
|
||||||
|
|
||||||
These files contain a list of tags to server names mappings. When any name
|
|
||||||
is used on the command line it is checked to see if it is a tag.
|
|
||||||
If it is a tag, then the tag is replaced with the list of servers. The
|
|
||||||
format is as follows:
|
|
||||||
|
|
||||||
S<< <tag> [user@]<server> [user@]<server> [...] >>
|
|
||||||
|
|
||||||
e.g.
|
|
||||||
|
|
||||||
# List of servers in live
|
|
||||||
live admin1@server1 admin2@server2 server3 server4
|
|
||||||
|
|
||||||
All comments (marked by a #) and blank lines are ignored. Tags may be
|
|
||||||
nested, but be aware of using recursive tags as they are not checked for.
|
|
||||||
|
|
||||||
Extra cluster files may also be specified either as an option on the
|
|
||||||
command line (see C<cluster-file>) or in the user's F<$HOME/.clusterssh/config>
|
|
||||||
file (see C<extra_cluster_file> configuration option).
|
|
||||||
|
|
||||||
B<NOTE:> the last tag read overwrites any pre-existing tag of that name.
|
|
||||||
|
|
||||||
B<NOTE:> there is a special cluster tag called C<default> - any tags or hosts
|
|
||||||
included within this tag will be automatically opened if no other tags
|
|
||||||
are specified on the command line.
|
|
||||||
|
|
||||||
=item F</etc/tags>, F<$HOME/.clusterssh/tags>
|
|
||||||
|
|
||||||
Very similar to F<clusters> files but the definition is reversed. The
|
|
||||||
format is:
|
|
||||||
|
|
||||||
S<< <host> <tag> [...] >>
|
|
||||||
|
|
||||||
This allows one host to be specified as a member of a number of tags. This
|
|
||||||
format can be clearer than using F<clusters> files.
|
|
||||||
|
|
||||||
Extra tag files may be specified either as an option (see C<tag-file>) or within
|
|
||||||
the user's F<$HOME/.clusterssh/config> file (see C<extra_tag_file>
|
|
||||||
configuration option).
|
|
||||||
|
|
||||||
B<NOTE:> All tags are added together
|
|
||||||
|
|
||||||
=item F</etc/csshrc> & F<$HOME/.clusterssh/config>
|
|
||||||
|
|
||||||
This file contains configuration overrides - the defaults are as marked.
|
|
||||||
Default options are overwritten first by the global file, and then by the
|
|
||||||
user file.
|
|
||||||
|
|
||||||
B<NOTE:> values for entries do not need to be quoted unless it is required
|
|
||||||
for passing arguments, e.g.
|
|
||||||
|
|
||||||
C<< terminal_allow_send_events="-xrm '*.VT100.allowSendEvents:true'" >>
|
|
||||||
|
|
||||||
should be written as
|
|
||||||
|
|
||||||
C<< terminal_allow_send_events=-xrm '*.VT100.allowSendEvents:true' >>
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item auto_close = 5
|
|
||||||
|
|
||||||
Close terminal window after this many seconds. If set to 0 will instead wait
|
|
||||||
on input from the user in each window before closing. See also L<--autoclose> and L<--no-autoclose>
|
|
||||||
|
|
||||||
=item auto_quit = yes
|
|
||||||
|
|
||||||
Automatically quit after the last client window closes. Set to anything
|
|
||||||
other than "yes" to disable. See also L<--autoquit> and L<--no-autoquit>
|
|
||||||
|
|
||||||
=item clusters = <blank>
|
|
||||||
|
|
||||||
Define a number of cluster tags in addition to (or to replace) tags defined
|
|
||||||
in the F<clusters> file. The format is:
|
|
||||||
|
|
||||||
C<< clusters = <tag1> <tag2> <tag3> >>
|
|
||||||
C<< <tag1> = host1 host2 host3 >>
|
|
||||||
C<< <tag2> = user@host4 user@host5 host6 >>
|
|
||||||
C<< <tag3> = <tag1> <tag2> >>
|
|
||||||
|
|
||||||
As with the F<clusters> file, be sure not to create recursively nested tags.
|
|
||||||
|
|
||||||
=item comms = ssh
|
|
||||||
|
|
||||||
Sets the default communication method (initially taken from the name of the
|
|
||||||
program, but can be overridden here).
|
|
||||||
|
|
||||||
=item console_position = <null>
|
|
||||||
|
|
||||||
Set the initial position of the console - if empty then let the window manager
|
|
||||||
decide. Format is '+<x>+<y>', i.e. '+0+0' is top left hand corner of the screen,
|
|
||||||
'+0-70' is bottom left hand side of screen (more or less).
|
|
||||||
|
|
||||||
=item external_cluster_command = <null>
|
|
||||||
|
|
||||||
Define the full path to an external command that can be used to resolve tags
|
|
||||||
to host names. This command can be written in any language. The script must
|
|
||||||
accept a list of tags to resolve and output a list of hosts on a single line.
|
|
||||||
Any tags that cannot be resolved should be returned unchanged.
|
|
||||||
|
|
||||||
A non-0 exit code will be counted as an error, a warning will be printed and
|
|
||||||
output ignored.
|
|
||||||
|
|
||||||
=item extra_cluster_file = <null>
|
|
||||||
|
|
||||||
Define an extra cluster file in the format of F</etc/clusters>. Multiple
|
|
||||||
files can be specified, separated by commas. Both ~ and $HOME are acceptable
|
|
||||||
as a reference to the user's home directory, e.g.
|
|
||||||
|
|
||||||
C<< extra_cluster_file = ~/clusters, $HOME/clus >>
|
|
||||||
|
|
||||||
=item key_addhost = Control-Shift-plus
|
|
||||||
|
|
||||||
Default key sequence to open AddHost menu. See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item key_clientname = Alt-n
|
|
||||||
|
|
||||||
Default key sequence to send cssh client names to client. See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item key_localname = Alt-l
|
|
||||||
|
|
||||||
Default key sequence to send hostname of local server to client. See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item key_paste = Control-v
|
|
||||||
|
|
||||||
Default key sequence to paste text into the console window. See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item key_quit = Control-q
|
|
||||||
|
|
||||||
Default key sequence to quit the program (will terminate all open windows).
|
|
||||||
See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item key_retilehosts = Alt-r
|
|
||||||
|
|
||||||
Default key sequence to retile host windows. See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item key_username = Alt-u
|
|
||||||
|
|
||||||
Default key sequence to send username to client. See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item macro_servername = %s
|
|
||||||
|
|
||||||
=item macro_hostname = %h
|
|
||||||
|
|
||||||
=item macro_username = %u
|
|
||||||
|
|
||||||
=item macro_newline = %n
|
|
||||||
|
|
||||||
=item macro_version = %v
|
|
||||||
|
|
||||||
Change the replacement macro used when either using a 'Send' menu item, or when
|
|
||||||
pasting text into the main console.
|
|
||||||
|
|
||||||
=item macros_enabled = yes
|
|
||||||
|
|
||||||
Enable or disable macro replacement. Note: this affects all the C<macro_*> variables above.
|
|
||||||
|
|
||||||
=item max_addhost_menu_cluster_items = 6
|
|
||||||
|
|
||||||
Maximum number of entries in the 'Add Host' menu cluster list before
|
|
||||||
scrollbars are used
|
|
||||||
|
|
||||||
=item max_host_menu_items = 30
|
|
||||||
|
|
||||||
Maximum number of hosts to put into the host menu before starting a new column
|
|
||||||
|
|
||||||
=item menu_host_autotearoff = 0
|
|
||||||
|
|
||||||
=item menu_send_autotearoff = 0
|
|
||||||
|
|
||||||
When set to non-0 will automatically tear-off the host or send menu at
|
|
||||||
program start
|
|
||||||
|
|
||||||
=item mouse_paste = Button-2 (middle mouse button)
|
|
||||||
|
|
||||||
Default key sequence to paste text into the console window using the mouse.
|
|
||||||
See L<KEY SHORTCUTS> for more information.
|
|
||||||
|
|
||||||
=item rsh = rsh
|
|
||||||
|
|
||||||
=item ssh = ssh
|
|
||||||
|
|
||||||
=item telnet = telnet
|
|
||||||
|
|
||||||
Set the path to the specific binary to use for the communication method, else
|
|
||||||
uses the first match found in C<$PATH >
|
|
||||||
|
|
||||||
=item rsh_args = <blank>
|
|
||||||
|
|
||||||
=item ssh_args = "-x -o ConnectTimeout=10"
|
|
||||||
|
|
||||||
=item telnet_args = <blank>
|
|
||||||
|
|
||||||
Sets any arguments to be used with the communication method (defaults to ssh
|
|
||||||
arguments).
|
|
||||||
|
|
||||||
B<NOTE:> The given defaults are based on OpenSSH, not commercial ssh software.
|
|
||||||
|
|
||||||
B<NOTE:> Any "generic" change to the method (e.g., specifying the ssh port to use)
|
|
||||||
should be done in the medium's own config file (see C<ssh_config> and
|
|
||||||
F<$HOME/.ssh/config>).
|
|
||||||
|
|
||||||
=item screen_reserve_top = 0
|
|
||||||
|
|
||||||
=item screen_reserve_bottom = 60
|
|
||||||
|
|
||||||
=item screen_reserve_left = 0
|
|
||||||
|
|
||||||
=item screen_reserve_right = 0
|
|
||||||
|
|
||||||
Number of pixels from the screen's side to reserve when calculating screen
|
|
||||||
geometry for tiling. Setting this to something like 50 will help keep cssh
|
|
||||||
from positioning windows over your window manager's menu bar if it draws one
|
|
||||||
at that side of the screen.
|
|
||||||
|
|
||||||
=item rsh = /path/to/rsh
|
|
||||||
|
|
||||||
=item ssh = /path/to/ssh
|
|
||||||
|
|
||||||
Depending on the value of comms, set the path of the communication binary.
|
|
||||||
|
|
||||||
=item terminal = /path/to/xterm
|
|
||||||
|
|
||||||
Path to the X-Windows terminal used for the client.
|
|
||||||
|
|
||||||
=item terminal_args = <blank>
|
|
||||||
|
|
||||||
Arguments to use when opening terminal windows. Otherwise takes defaults
|
|
||||||
from F<$HOME/.Xdefaults> or F<$HOME/.Xresources> file.
|
|
||||||
|
|
||||||
=item terminal_font = 6x13
|
|
||||||
|
|
||||||
Font to use in the terminal windows. Use standard X font notation.
|
|
||||||
|
|
||||||
=item terminal_reserve_top = 5
|
|
||||||
|
|
||||||
=item terminal_reserve_bottom = 0
|
|
||||||
|
|
||||||
=item terminal_reserve_left = 5
|
|
||||||
|
|
||||||
=item terminal_reserve_right = 0
|
|
||||||
|
|
||||||
Number of pixels from the terminal's side to reserve when calculating screen
|
|
||||||
geometry for tiling. Setting these will help keep cssh from positioning
|
|
||||||
windows over your scroll and title bars or otherwise overlapping the windows
|
|
||||||
too much.
|
|
||||||
|
|
||||||
=item terminal_colorize = 1
|
|
||||||
|
|
||||||
If set to 1 (the default), then "-bg" and "-fg" arguments will be added
|
|
||||||
to the terminal invocation command-line. The terminal will be colored
|
|
||||||
in a pseudo-random way based on the host name; while the color of a terminal
|
|
||||||
is not easily predicted, it will always be the same color for a given host
|
|
||||||
name. After a while, you will recognize hosts by their characteristic
|
|
||||||
terminal color.
|
|
||||||
|
|
||||||
=item terminal_bg_style = dark
|
|
||||||
|
|
||||||
If set to C<dark>, the terminal background will be set to black and
|
|
||||||
the foreground to the pseudo-random color. If set to C<light>, then the
|
|
||||||
foreground will be black and the background the pseudo-random color. If
|
|
||||||
terminal_colorize is C<zero>, then this option has no effect.
|
|
||||||
|
|
||||||
=item terminal_size = 80x24
|
|
||||||
|
|
||||||
Initial size of terminals to use. NOTE: the number of lines (24) will be
|
|
||||||
decreased when resizing terminals for tiling, not the number of characters (80).
|
|
||||||
|
|
||||||
=item terminal_title_opt = -T
|
|
||||||
|
|
||||||
Option used with C<terminal> to set the title of the window
|
|
||||||
|
|
||||||
=item terminal_allow_send_events = -xrm '*.VT100.allowSendEvents:true'
|
|
||||||
|
|
||||||
Option required by the terminal to allow XSendEvents to be received
|
|
||||||
|
|
||||||
=item title = cssh
|
|
||||||
|
|
||||||
Title of windows to use for both the console and terminals.
|
|
||||||
|
|
||||||
=item unmap_on_redraw = no
|
|
||||||
|
|
||||||
Tell Tk to use the UnmapWindow request before redrawing terminal windows.
|
|
||||||
This defaults to "no" as it causes some problems with the FVWM window
|
|
||||||
manager. If you are experiencing problems with redraws, you can set it to
|
|
||||||
"yes" to allow the window to be unmapped before it is repositioned.
|
|
||||||
|
|
||||||
=item use_all_a_records = no
|
|
||||||
|
|
||||||
If a hostname resolves to multiple IP addresses, set to C<yes> to connect
|
|
||||||
to all of them, not just the first one found.
|
|
||||||
|
|
||||||
=item use_hotkeys = yes
|
|
||||||
|
|
||||||
Setting to anything other than C<yes> will disable all hotkeys.
|
|
||||||
|
|
||||||
=item user = $LOGNAME
|
|
||||||
|
|
||||||
Sets the default user for running commands on clients.
|
|
||||||
|
|
||||||
=item window_tiling = yes
|
|
||||||
|
|
||||||
Perform window tiling (set to C<no> to disable)
|
|
||||||
|
|
||||||
=item window_tiling_direction = right
|
|
||||||
|
|
||||||
Direction to tile windows, where "right" means starting top left and moving
|
|
||||||
right and then down, and anything else means starting bottom right and moving
|
|
||||||
left and then up
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
B<NOTE:> The key shortcut modifiers must be in the form C<Control>, C<Alt> or
|
|
||||||
C<Shift>, e.g. with the first letter capitalised and the rest lower case. Keys
|
|
||||||
may also be disabled individually by setting to the word C<null>.
|
|
||||||
|
|
||||||
=item F<$HOME/.csshrc_send_menu>
|
|
||||||
|
|
||||||
This (optional) file contains items to populate the send menu. The
|
|
||||||
default entry could be written as:
|
|
||||||
|
|
||||||
<send_menu>
|
|
||||||
<menu title="Use Macros">
|
|
||||||
<toggle/>
|
|
||||||
<accelerator>ALT-p</accelerator>
|
|
||||||
</menu>
|
|
||||||
<menu title="Remote Hostname">
|
|
||||||
<command>%s</command>
|
|
||||||
<accelerator>ALT-n</accelerator>
|
|
||||||
</menu>
|
|
||||||
<menu title="Local Hostname">
|
|
||||||
<command>%s</command>
|
|
||||||
<accelerator>ALT-l</accelerator>
|
|
||||||
</menu>
|
|
||||||
<menu title="Username">
|
|
||||||
<command>%u</command>
|
|
||||||
<accelerator>ALT-u</accelerator>
|
|
||||||
</menu>
|
|
||||||
<menu title="Test Text">
|
|
||||||
<command>echo "ClusterSSH Version: %v%n</command>
|
|
||||||
</menu>
|
|
||||||
</send_menu>
|
|
||||||
|
|
||||||
Submenus can also be specified as follows:
|
|
||||||
|
|
||||||
<send_menu>
|
|
||||||
<menu title="Default Entries">
|
|
||||||
<detach>yes</detach>
|
|
||||||
<menu title="Hostname">
|
|
||||||
<command>%s</command>
|
|
||||||
<accelerator>ALT-n</accelerator>
|
|
||||||
</menu>
|
|
||||||
</menu>
|
|
||||||
</send_menu>
|
|
||||||
|
|
||||||
B<Caveats:>
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
=item There is currently no strict format checking of this file.
|
|
||||||
|
|
||||||
=item The format of the file may change in the future
|
|
||||||
|
|
||||||
=item If the file exists, the default entry (Hostname) is not added
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
The following replacement macros are available (note: these can be changed in the configuration file):
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
=item %s
|
|
||||||
|
|
||||||
Hostname part of the specific connection string to each client, minus any
|
|
||||||
username or port
|
|
||||||
|
|
||||||
=item %u
|
|
||||||
|
|
||||||
Username part of the connection string to each client
|
|
||||||
|
|
||||||
=item %h
|
|
||||||
|
|
||||||
Hostname of server where cssh is being run from
|
|
||||||
|
|
||||||
=item %n
|
|
||||||
|
|
||||||
C<RETURN> code
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
B<NOTE:> requires L<XML::Simple> to be installed
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 KNOWN BUGS
|
|
||||||
|
|
||||||
If you have any ideas about how to fix the below bugs, please get in touch
|
|
||||||
and/or provide a patch.
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
Swapping virtual desktops can cause a redraw of all the terminal windows. This
|
|
||||||
is due to a lack of distinction within Tk between switching desktops and
|
|
||||||
minimising/maximising windows. Until Tk can tell the difference between the
|
|
||||||
two events, there is no fix (apart from rewriting everything directly in X).
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 REPORTING BUGS
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
If you have issues running cssh, first try:
|
|
||||||
|
|
||||||
C<< cssh -e [user@]<hostname>[:port] >>
|
|
||||||
|
|
||||||
This performs two tests to confirm cssh is able to work properly with the
|
|
||||||
settings provided within the F<$HOME/.clusterssh/config> file (or internal defaults).
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item 1
|
|
||||||
|
|
||||||
Test the terminal window works with the options provided
|
|
||||||
|
|
||||||
=item 2
|
|
||||||
|
|
||||||
Test ssh works to a host with the configured arguments
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
Configuration options to watch for in ssh are
|
|
||||||
|
|
||||||
=over
|
|
||||||
|
|
||||||
=item SSH doesn't understand C<-o ConnectTimeout=10> - remove the option from the F<$HOME/.clusterssh/config> file
|
|
||||||
|
|
||||||
=item OpenSSH-3.8 using untrusted ssh tunnels - use C<-Y> instead of C<-X> or use C<ForwardX11Trusted yes> in F<$HOME/.ssh/ssh_config> (if you change the default ssh options from C<-x> to C<-X>)
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
If you require support, please run the following commands
|
|
||||||
and post it on the web site in the support/problems forum:
|
|
||||||
|
|
||||||
C<< perl -V >>
|
|
||||||
|
|
||||||
C<< perl -MTk -e 'print $Tk::VERSION,$/' >>
|
|
||||||
|
|
||||||
C<< perl -MX11::Protocol -e 'print $X11::Protocol::VERSION,$/' >>
|
|
||||||
|
|
||||||
C<< cat /etc/csshrc $HOME/.clusterssh/config >>
|
|
||||||
|
|
||||||
=item *
|
|
||||||
|
|
||||||
Using the debug option (--debug) will turn on debugging output. Repeat
|
|
||||||
the option to increase the amount of debug. However, if possible please
|
|
||||||
only use this option with one host at a time, e.g. C<< cssh --debug <host> >>
|
|
||||||
due to the amount of output produced (in both main and child windows).
|
|
||||||
|
|
||||||
=back
|
|
||||||
|
|
||||||
=head1 SEE ALSO
|
|
||||||
|
|
||||||
L<http://clusterssh.sourceforge.net/>,
|
|
||||||
C<ssh>,
|
|
||||||
L<Tk::overview>,
|
|
||||||
L<X11::Protocol>,
|
|
||||||
C<perl>
|
|
||||||
|
|
||||||
=head1 CREDITS
|
|
||||||
|
|
||||||
A web site for comments, requests, bug reports and bug fixes/patches is
|
|
||||||
available at: L<http://clusterssh.sourceforge.net/>
|
|
||||||
|
|
||||||
=head1 AUTHOR
|
|
||||||
|
|
||||||
Duncan Ferguson, C<< <duncan_j_ferguson at yahoo.co.uk> >>
|
|
||||||
|
|
||||||
=head1 LICENSE AND COPYRIGHT
|
|
||||||
|
|
||||||
Copyright 1999-2014 Duncan Ferguson.
|
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify it
|
|
||||||
under the terms of either: the GNU General Public License as published
|
|
||||||
by the Free Software Foundation; or the Artistic License.
|
|
||||||
|
|
||||||
See http://dev.perl.org/licenses/ for more information.
|
|
||||||
|
|
||||||
=cut
|
|
||||||
|
|
||||||
1;
|
|
|
@ -1,5 +0,0 @@
|
||||||
=pod
|
|
||||||
|
|
||||||
=head 1
|
|
||||||
|
|
||||||
This is a test file for pod
|
|
Loading…
Add table
Add a link
Reference in a new issue