Ruby
Publicado por Davi Rodrigues 01/05/2009
[ Hits: 6.150 ]
Homepage: http://br.linkedin.com/pub/davi-rodrigues/23/319/68b
Pessoal, estou colocando esse script na área de C/C++ pois é o mais proximo de ruby que vejo nas opções. Acho que deveríamos abrir um espaço para o ruby galera...
Vamos lá, eu fiz esse script por que tenho uma rede onde é bloqueada a porta 80 que o APT usa, e as estações usando linux não conseguiam atualizar os pacotes. Então eu criei esse script para suprir minha necessidade.
Ele entra no host via ssh, roda um comando tipo "apt-get update; apt-get upgrade" em um horário específico.
1 #!/usr/bin/ruby1.8 2 =begin 3 Script feito por 4 @Davi Rodrigues 5 Data 21/01/2009 6 =end 7 require 'net/ssh' 8 require 'ping' 9 #Definição do ip do host 10 @HOST="127.0.0.1" 11 12 # Verifica se o host esta ativo, com um echo tcp. 13 if Ping.pingecho("#{@HOST}", 22) 14 # Faz a conexão via ssh, e execulta o comando no host remoto. 15 Net::SSH.start("#{@HOST}", "davi", :password => "123") do |ssh| 16 result = ssh.exec!("apt-get update; apt-get upgrade") 17 #Ira mostrar na sua tela o resultado do comando passado, caso nao precise é só comentar.:P 18 puts result 19 end 20 # Caso o host remoto não esteja disponivel, vai ser gerado essa menssagem. 21 else 22 puts "O Host #{@HOST} esta fora do ar, e não foi possível conectar via ssh!" 23 24 end 25
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Wayland em alta, IA em debate e novos ventos para distros e devices
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Erro ao fazer remaster usando Penguin eggs (4)
Linux x Plataformas de Trading - um problema (in-)solúvel? (3)