A modern cssh replacement.
Go to file
2019-03-28 20:07:08 +00:00
.gitignore Ignore python artifacts. 2013-07-19 14:59:43 -07:00
crussh.py Added short flag for ssh override. 2017-08-14 14:26:59 -07:00
EntryDialog.py Fixes and closes #19. 2013-07-19 14:46:53 -07:00
LICENSE Initial code release. 2012-03-14 16:45:41 -07:00
README.md documentation updates 2019-03-28 20:07:08 +00:00

crussh: a modern cssh replacement

What are this?

For anyone who needs to administrate clusters of many machines, clusterssh has long been a fallback for when the rest of your automation tools aren't working.

crussh aims to be a simple replacement for cssh with the following improvements:

  • Uses a single window to hold multiple terminals.
  • Intelligently tiles terminals to fit available window size.
  • Scrolls available terminals when they don't all fit in-window.
  • Never resizes a terminal smaller than 80x24 characters.
  • Uses GTK and the VTE widget to provide modern, anti-aliased terminals.

Install

The install process is very simple on most distros:

  • Install python2, python-gtk2, and python-vte.
  • Clone and symlink to your bin dir:
git clone https://github.com/nergdron/crussh.git
ln -s crussh/crussh.py ~/bin/crussh

Run crussh HOST [HOST ...]

Examples

Basic usage is covered via the builtin help, which you can get by running crussh -h. This section covers some common use cases.

To connect to a list of hosts in a file:

crussh $(cat hostlist.txt)

To use a custom login name, public key, or other SSH client options:

crussh -l someuser -i ~/.ssh/myotherkey -- host [host ...]

To do something other than ssh, such as edit a bunch of files in parallel:

crussh -e nano *.txt

Usage Tips

Doing a clustered paste isn't completely obvious. The following methods will work, after making sure you're clicked into the text entry box at the bottom of the window:

  • middle click or shift-insert to paste the X11 selection buffer.
  • control-shift-v to paste the GTK/GNOME clipboard.

Bugs & To Do

To see current issues, report problems, and see plans for features, see the crussh GitHub issues page.

crussh is copyright 2012-2019 by Tessa Nordgren tessa@sudo.ca.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see the GNU licenses page.