Você armazenaria o Makefile para posterior desinstalação?

1
  • Depois de instalar um pacote / biblioteca a partir de um Makefile, você mantém o Makefile, que contém uninstall target em algum lugar, para posterior desinstalação, se houver algum?
    • Se sim: você armazena em algum diretório "padrão", como /usr/local ?
    • Se não: como você desinstala então?
por Tim 09.07.2014 / 21:28

2 respostas

3

Como os goldilocks, mantenho os arquivos de instalação em uma pasta designada src - no meu caso, às vezes, é / usr / local / src, mas geralmente é / opt / src. Eu dou um passo adiante - eu uso 'script' para gravar um texto datilografado durante todo o processo, e renomeio esses arquivos de texto para ajudar-me a lembrar para onde eles foram depois. Eu os mantenho na mesma pasta que a fonte. Então, quando eu estou satisfeito que a construção e a instalação foram boas, eu embrulho a coisa toda em um tarball comprimido e o mantenho basicamente para sempre em / opt / src.

Eu faço isso porque, invariavelmente, se algo é útil o suficiente para instalar a partir do código-fonte e permanecer por um ano, precisarei repetir o processo novamente para obter correções de erros e atualizações de segurança do upstream. Quando chegar essa hora, quero voltar a um ponto, descompactar o arquivo original e lembrar rapidamente exatamente o que fiz da última vez, junto com a saída resultante.

Você pode até mesmo levar isso adiante - lembre-se, o objetivo deve ser facilitar para você ou a pessoa que vier depois de você atualizar o software de forma confiável no futuro, para que cada pista possa deixar seu futuro -se é bom, e quanto menos você fizer isso, maior a probabilidade de você acabar frustrado e queimando mais tarde.

Aqui estão outras sugestões de dicas para deixar seu futuro e maneiras de evitar problemas:

  1. Use 'script' para gravar instalações e sua saída; em seguida, renomeie os arquivos typescript resultantes para que você não os substitua acidentalmente mais tarde. Mantenha-os na pasta de construção.
  2. Colete informações antes e depois e mantenha-as no diretório de criação. Por exemplo, você pode fazer "ls -lR / > before.ls-lr; ... instalar software ... ; ls -lR / > after.ls-lr". A maioria das ferramentas de gerenciamento de pacotes também tem uma opção de verificação que despeja todos os tipos de detalhes sobre o sistema - ter um antes e um depois disso é útil. Às vezes também vale a pena fazer um md5sum completo de todos os arquivos ou usar uma ferramenta como o tripwire ou o aide.
  3. Suspeite do instalador - tem certeza de que ele não altera as permissões para o modo 777 em / var ou faz algo similarmente nefasto? Comparar o antes e o depois da saída de uma listagem de arquivos recursiva com uma ferramenta como o vimdiff pode ajudá-lo a identificar problemas antes de esquecer como corrigi-los.
  4. Se você precisar deixar suas anotações, coloque-as no diretório de criação - por exemplo, um arquivo como "README.bob" ajudaria muito "Bob" com qualquer pequena pegadinha que você detectasse pela primeira vez, e que pode se esquecer da próxima vez.

Todo esse esforço é recompensado quando você começa a distribuir o software para vários sistemas ou em um ambiente onde realmente se importa com o sistema / dados.

Você pode dar um passo adiante e usar centenas de gerenciadores de pacotes para criar um pacote que você pode distribuir para seus próprios sistemas. Com uma ferramenta como FPM , é fácil.

    
por 10.07.2014 / 01:06
2

Eu não armazenaria apenas o makefile. Embora o alvo da desinstalação não possa (ou talvez não deva ) precisar de mais nada para ter sucesso, isso não é uma garantia.

Isso significa manter uma cópia do pacote original. Não há muito sentido, no entanto, se houver um arquivo público de versões antigas e você não estiver preocupado com isso. Você pode simplesmente baixá-lo novamente mais tarde, de qualquer maneira. O único problema com isso é que para coisas com autotoolação você precisa executar ./configure primeiro, e se você usar opções diferentes uninstall pode perder alguma coisa - mas isso não é uma grande preocupação, eu acho. Ocasionalmente, guardei anotações sobre a configuração específica de algo.

Eu mantenho pacotes de fontes independentes em /usr/local/src , mas contanto que você possa encontrá-los quando precisar, não importa.

    
por 09.07.2014 / 21:40