Ruby
Publicado por Davi Rodrigues 01/05/2009
[ Hits: 6.314 ]
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
Programa em C para monitorar IPs e portas ativas
Exemplo de Cliente e Servidor Usando Socket no Linux!
Robo HTTP usando socket e código multiplataforma
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
Seno, Coseno, Tangente em CLIPPER (1)
Inserir uma URL num arquvo pelo Ubuntu (CLIPPER) (0)
VMWare Player não conecta na rede nem consigo intercambiar arquivos (1)









