This little script will use Perl and find duplicate rpms on the system and dump them out to a duplicates file.
rpm --last -qa | perl -n -e '/^(\S+)-\S+-\S+/; print "$&\n" if $SEEN{$1}; $SEEN{$1} ||= $_;' | uniq > duplicates.txt
rpm --last -qa | perl -n -e '/^(\S+)-\S+-\S+/; print "$&\n" if $SEEN{$1}; $SEEN{$1} ||= $_;' | uniq > duplicates.txt
Parallel Virtual Machine (PVM) is a software tool for parallel networking of computers. It is designed to allow a network of heterogeneous Unix and/or Windows machines to be used as a single distributed parallel processor. Thus large computational problems can be solved more cost effectively by using the aggregate power and memory of many computers. The software is very portable; the source code, available free through netlib, has been compiled on everything from laptops to Crays.
The following Perl script will enumerate through the pvmhostfile and restart the pvm on each host.
#!/usr/bin/perl ### This script restarts PVM's that have failed ### use Parallel::Pvm; use Net::Ping; ### Set PVM Hostfile location ### $user="schmaus"; $pvmhostfile="/home/$user/.pvmhostfile"; ### Nothing to change below this line ### open (PVMHOST, $pvmhostfile); while ($hostname = ) { chomp($hostname); $status = Parallel::Pvm::mstat("$hostname"); chomp($status); if ($status ne "0") { $alive="1"; $p = Net::Ping->new(); $alive="0" if $p->ping($hostname); $p->close(); if ($alive ne "0") { print "$hostname: Offline-Down\n"; } else { Parallel::Pvm::addhosts("$hostname"); print "$hostname: Offline-Restarted\n"; } } else { print "$hostname: Online\n"; } } close(PVMHOST); exit;