Visualizar a data e hora de um servidor SNTP e atualizar na BIOS do sistema
Publicado por Fábio C. Barrionuevo da Luz (última atualização em 10/08/2010)
[ Hits: 7.654 ]
Script python para visualizar a data e hora de um servidor SNTP e atualizar na BIOS do sistema - hwclock.
Ele utiliza uma consulta a um servidor SNTP da Apple. É necessário ter instalado o hwclock e o date.
Executar:
# ./setclock.py
Mostra a hora do servidor SNTP.
Use o parâmetro --set para atualizar a BIOS do sistema. Ex.:
# ./setclock.py --set
O script só atualiza a hora se for utilizado como root.
O setclock.py só funciona se a rede já estiver configurada e houver acesso a internet.
Nome do Script: setclock.py Codigo fonte: #!/usr/bin/python from socket import * import struct,os,time,sys #Modificado por Fabio C. Barrionuevo da Luz, Jul/2010 #use "setclock.py" para imprimir a hora do servidor sntp #use como super usuario "setclock.py --set" para mudar a hora da BIOS e do sistema #OBS: por usar um servidor sntp, a confiabilidade da hora pode não ser a esperada. #pode haver atrasos ou adiantamentos. #para mais informacoes, consulte: #http://ntp.br/faq.html#5 , http://ntp.br/, www.ntp.org, # Script to set Linux hardware clock (/usr/sbin/hwclock or /sbin/hwclock) from an NTP # time server. Run as "setclock.py" to simply print the time from # the NTP server. Run as "setclock.py --set" to set the Linux # hardware clock (as the super user, of course). # Based on Simon Foster's simple SNTP client from ASPN Python cookbook. # Adapted by Paul Rubin; this script lives at: # http://www.nightsong.com/phr/python/setclock.py time_server = ('time.apple.com', 123) # time.apple.com is a stratum 2 time server. (123 is the SNTP port number). # More servers info can be found at # # http://www.eecis.udel.edu/~mills/ntp/servers.htm # # Note it's considered antisocial to use a stratum 1 server (like NIST) # for purposes like this which don't need extreme accuracy (i.e. syncing # your own big NTP network). See www.ntp.org for more info. # # You could also use time.windows.com (Microsoft server) which syncs # all Windows XP machines everywhere, so it can presumably handle lots # of clients. # number of seconds between NTP epoch (1900) and Unix epoch (1970). TIME1970 = 2208988800L # Thanks to F.Lundh client = socket( AF_INET, SOCK_DGRAM ) data = '\x1b' + 47 * '{FONTE}' client.sendto(data, time_server) data, address = client.recvfrom( 1024 ) if data: print 'Resposta recebida de', address,'\n' t = struct.unpack( '!12I', data )[10] if t == 0: raise 'resposta invalida' ct = time.ctime(t - TIME1970) print 'Data/Hora atual = %s\n' % ct if len(sys.argv) > 1 and sys.argv[1] == "--set": print 'Atualizando hora da BIOS' print 'Hora da Bios modificada de:' os.system("date") #muda a hora da bios os.system("hwclock --set '--date=%s'"% ct) #copia a hora da bios para a hora do sistema os.system("hwclock --hctosys") print 'para:' os.system("date") else: raise 'nenhuma informacao retornada'
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
Excluir banco de dados no xampp (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta