Bueno hoy vengo con algo nuevo, algo que sin duda es buenísimo, hace un rato estaba jugando con el crontab y metí una linea de código que no debía, el caso es que el servidor que está a 6km de distancia empezó a reiniciarse solo. Son las 01.13 h de la mañana y no es plan bajar para arreglar el ficherito, pero como no me da tiempo de poner mi usuario y contraseña por ssh a mi velocidad de escritura he creado un fichero que lo hace todo el solito y como me gusta compartir os dejo el script aqui por si os hace falta algun dia.
#!/usr/bin/expectCon copiar y pegar esto en un fichero, cambiar los permisos del fichero
#La linea de arriba indica donde esta el programa expect
spawn ssh usuario@ip_remota_servidor
#Ahora sabemos que nos preguntará por el password del
#usuario que hemos indicado
expect "*?assword:*"
#Le indicamos que mande nuestra contraseña
send "nuestracontraseña\r"
#Ahora ya estamos en bash, asi que le indicamos que
#entre en modo root
expect "*$*"
#Mandamos el comando para hacernos con root
send "sudo su\r"
#Como antes, nos pregunta por el password esta vez de root
expect "*?assword:*"
#Le indicamos la contraseña de root
send "contraseñaderoot\r"
#Ya estamos en el bash de root
expect "#"
#Ahora le enviamos los comandos que como root queremos
#que se ejecuten
send "cp /etc/crontab crontab.bak\r"
send "rm /etc/crontab\r"
set results $expect_out(buffer)
#Cuando hemos terminado mandamos el comando exit para que
#salga
send "exit\r"
expect eof
chmod 755 nombredelficheroy ejecutarlo
./nombredelficheroya habreis solucionado el problema.
Ah!! tambien sirve para ftp, telnet... la imaginacion es el limite.
Un saludo y buenas noches.