como criar um pacote debian usando “equivs-build” que pode ser “atualizado” se já instalado?

1

Eu criei um pacote .deb package usando equivs-build e fornecendo os control , preinst , postinst , etc. necessários. Observei que version também pode ser mencionado no arquivo control . Agora eu quero criar um pacote .deb com código fonte atualizado e eu quero permitir que o usuário atualize o pacote se ele já estiver instalado (e é da versão anterior, é claro), já que eu não vou estar mudando conf Uma maneira que eu posso pensar é escrever um script que irá primeiro verificar a versão instalada, e tomará as medidas necessárias (ou seja, se instalado, apenas atualize o código-fonte, as migrações de banco de dados, etc. e se não , instale o pacote usando dpkg -i <package-name> ). Eu queria saber se havia uma maneira de alcançar usando dpkg (algo como dpkg upgrade <package-name> ), que irá lidar com instalação ou atualização, conforme necessário.

    
por Sangram 07.08.2014 / 07:06

1 resposta

1

O comando que você está procurando é de fato dpkg -i . Isto instalará se não instalado e atualizará se já instalado. dpkg não altera os arquivos de configuração modificados pelo usuário. Ele perguntará o que fazer sobre tais casos (mantenha as modificações, descarte as modificações, etc.) e sempre manterá um backup do que você descartar (o novo arquivo de configuração fornecido pelo pacote ou o antigo arquivo modificado pelo usuário). ). Qualquer arquivo instalado pelo pacote em /etc/ é considerado por dpkg como um arquivo de configuração.

    
por muru 07.08.2014 / 10:19