Ignora o timestamp ao instalar um pacote com o dpkg?

3

Estou trabalhando com dois servidores virtualizados que mantêm o tempo extremamente mal por algum motivo, de modo que um esteja sempre um pouco à frente do outro (até 2 segundos). O problema que estou tendo é que eu construo pacotes em um "no futuro", e então a outra máquina se recusa a instalá-los. O build-upload-install é um passo, então eu poderia apenas adicionar um atraso, mas prefiro não fazer isso.

Existe uma maneira de dizer ao dpkg para simplesmente ignorar o timestamp?

A mensagem de erro é assim:

 [exec] Command: sudo /usr/bin/dpkg -i /home/deploy/Media/Media_2011-09-06_100724.deb
 [exec] Error: tar: ./control: time stamp 2011-09-06 10:07:47 is 2.68160212 s in the future
 [exec] tar: ./control-template: time stamp 2011-09-06 10:07:46 is 1.681412205 s in the future
 [exec] tar: ./postinst: time stamp 2011-09-06 10:07:46 is 1.681347869 s in the future
 [exec] tar: .: time stamp 2011-09-06 10:07:47 is 2.681313485 s in the future

(é parte de um script ant)

    
por Brendan Long 06.09.2011 / 17:58

1 resposta

2

A melhor opção seria instalar o pacote ntp para sincronizar o tempo corretamente, mas, salvo isso, você poderia enganar o "dpkg" do outro sistema pensando que ele está vivendo no futuro instalando o pacote faketime e executá-lo com "-f + 10s":

$ date +%H:%M:%S; faketime -f +10s date +%H:%M:%S
22:38:52
22:39:02
    
por Kees Cook 23.09.2011 / 07:40

Tags