limpar apt-get list

Estou construindo uma imagem para um Linux embarcado baseado em Debian. Eu usei apt-get update antes no dispositivo que desejo usar como base para essa imagem, então as listas em /var/lib/apt/lists são bem grandes (quase 100 MB de tamanho).

Eu quero manter a funcionalidade apt-get (então eu não quero remover os repositórios apt), mas eu quero liberar o espaço usado nessas listas (as listas quase dobram o tamanho da imagem).

Alguém sabe como fazer isso? Posso simplesmente excluir os arquivos em /var/lib/apt/lists?

Resposta

Você pode apenas usar:

rm /var/lib/apt/lists/* 

Isso removerá as listas de pacotes. Nenhum repositório será excluído, eles são configurados no arquivo de configuração em /etc/apt/sources.list. Tudo o que pode acontecer é que ferramentas como apt-cache não pode obter informações do pacote a menos que você atualize as listas de pacotes. Além disso, apt-get install irá falhar com E: Unable to locate package <package>, porque não a informação está disponível ab o pacote.

Depois, basta executar:

apt-get update 

para reescrever essas listas e o comando funcionará novamente.

De qualquer forma, é “recomendado executar apt-get update antes de instalar qualquer coisa.

Comentários

  • Obviamente o diretório não pode estar vazio, adicione -rf após o rm para ficar assim rm -rf /var/lib/apt/lists/*

Resposta

As listas são o conhecimento do que está disponível, então se você excluí-las, não será capaz de instalar nada – isso é exatamente equivalente a remover os repositórios de suas fontes lista (que você diz que não quer fazer).

Uma opção é compactar as listas e lembrar de descompactá-las antes da próxima update.

O que costumo fazer (principalmente quando desejo experimentar fontes extras) é criar um diretório /etc/apt/sources.available e adicionar entradas para distribuições. Posso então habilitar facilmente qualquer subconjunto criando links simbólicos de /etc/apt/sources.list.d e desabilitar removendo esses links simbólicos.

Com a lista de fontes vazia, você poderia apt-get update – isso deve limpar seu /var/lib/apt/lists. Em seguida, vincule as fontes apropriadas de volta a /etc/apt/sources.list.d, mas não “t update até o momento em que realmente pretende usá-las.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *