mass

mass is a program that lets a system administrator execute programs on some set of machines as root.
mass.pl is the implementation of a relatively simple idea. Instead of interactively doing some task on one machine, then duplicating the effort on N other machines, write a shell script, then scp it to N machines and execute it as root.

Example

(sic@foo)($:~/mass)- ./mass.pl --name 'solaris' --script pushsomething --su --sshpass
sudo password:
ssh password:

trying to run pushsomething on 1 machines
test

test

PING test.example.com (10.1.1.10) from 10.1.2.3 : 56(84) bytes of data.
64 bytes from 10.1.1.10: icmp_seq=1 ttl=64 time=0.142 ms

--- test.example.com ping statistics ---
1 packets transmitted, 1 received, 0% loss, time 0ms
rtt min/avg/max/mdev = 0.142/0.142/0.142/0.000 ms
pushsomething 100% |*****************************| 183 00:00
test.txt 100% |*****************************| 15 00:00
sic@test's password: sh-2.05a$ PS1='$ '; PATH=/usr/local/bin:/bin:/usr/bin:/usr/s;export PS1;export PATH
$ sudo -K ; sudo sh
Password:
$ PATH=/usr/local/bin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/sbin ; export PATH
$ if [ `id|cut -d ' ' -f 1` = 'uid=0(root)' ]; then PS1='# '; fi
# sh pushsomething && echo script done || echo script failed
script done
# /bin/rm pushsomething test.txt && echo removed pushsomething test.txt
removed pushsomething test.txt
#

1 passed: test
0 failed:
0 fatal errors:

Requirements:

ˇ Expect-1.15
ˇ IO-Stty-.02
ˇ IO-Tty-1.02
ˇ TermReadKey-2.21
ˇ Text-Balanced-1.95
ˇ Parse-RecDescent-1.94

Here are some key features of "mass":

new: arbitrary expressions to compose hosts out of named sets (union, simple difference, symmetric difference, and intersection)
send files to the remote hosts (RPMs or other packages for example)
retrieve files from them (the contents of /etc for example).
can become root via the following methods:
ˇssh login as root
ˇsu
ˇsudo
ˇit also supports not becoming root when it's not necessary
uses ssh 1 or ssh 2 or any other ssh options
named lists of machines which can be comprised of arbitrarily complex perl expressions
few dependencies on the remote machines, should work on most unix like OSes.
Free

last updated on:
September 21st, 2005, 15:50 GMT
price:
FREE!
developed by:
Excedrin
license type:
Artistic License 
category:
ROOT \ System \ Networking

FREE!

In a hurry? Add it to your Download Basket!

user rating

UNRATED
0.0/5
 

0/5

Add your review!

SUBMIT