Ruby
Publicado por Davi Rodrigues 01/05/2009
[ Hits: 6.236 ]
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
Simulação de controle de fluxo usando sockets
Alucard - scan de redes defensivo
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como bloquear pendrive em uma rede Linux
Um autoinstall.yaml para Ubuntu com foco em quem vai fazer máquina virtual
Instalar GRUB sem archinstall no Arch Linux em UEFI Problemático
Como impedir exclusão de arquivos por outros usuários no (Linux)
Alguém executou um rm e quase mata a Pixar! (6)
Formas seguras de instalar Debian Sid (9)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (12)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (5)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (6)









