Suppression multi serveurs
De BlaxWiki
Révision datée du 25 mars 2009 à 09:49 par Admin (discussion | contributions)
Script principal
#!/usr/bin/perl -w
use Net::SSH2;
use Net::SSH2::Channel;
sub ssh_connect
{
my ($host,
$cmd) = @_;
my $ssh2 = Net::SSH2->new() ;
$ssh2->connect($host) or die;
$ssh2->auth_publickey('freesurf', '/root/bin/freesurf.key.pub', '/root/bin/freesurf.key');
if ($ssh2->auth_ok) {
print "Connection sur: $host\n";
my $channel = $ssh2->channel();
$channel->exec($cmd);
print "On execute: $cmd\n";
return (0);
}
print "KO\n";
return (1);
}
sub _exit
{
print "Usage: SuppressionCompteFreesurf.pl [login]\n";
exit(0);
}
my ($cmd,
$login,
$x,$y);
$login = (defined($ARGV[0])) ? $ARGV[0] : _exit;
$x = substr($login, 0, 2);
$y = substr($login, 2, 2);
# 1 delete Mail: action locale
print "On vire le maildir de: $login vers /archivage/tobedeleted";
$cmd = "/bin/mv /freesurf_mail/freesurf.fr/_".$x."/_".$y."/".$login." ".
"/archivage/tobedeleted/$login";
`$cmd`;
# 2 close login: gavroche
$cmd = "/home/freesurf/bin/updatelogin $login";
ssh_connect('gavroche.freesurf.fr', $cmd);
# 3 delete web: lenine
$cmd = "/home/freesurf/bin/webdel $x $y $login";
ssh_connect('lenine.freesurf.fr', $cmd);
# 4 delete db: vendemiaire
$cmd = "/home/freesurf/bin/BDD_del $login";
ssh_connect('vendemiaire.freesurf.fr', $cmd);
print "OK\n";
exit(0);
Script 2 sur gavroche
dans /home/freesurf/bin
#!/bin/sh LOGIN=$1 if [ -z $LOGIN ]; then exit 42; fi echo "update clarapw set mail_flags='inactive' where login='"$LOGIN"';" | mysql -u root --password='xxxxx' clarapw echo "update clarapw set login='1~"$LOGIN"' where login='"$LOGIN"';" | mysql -u root --password='xxxx' clarapw exit 0