limpar lista apt-get

32

Estou construindo uma imagem para um Linux incorporado baseado no Debian. Eu usei apt-get updateantes no dispositivo que quero usar como base para essa imagem, portanto, as listas abaixo /var/lib/apt/listssão bastante grandes (quase 100 MB de tamanho).

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

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

Dakkaron
fonte

Respostas:

47

Você pode apenas usar:

rm /var/lib/apt/lists/*

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

Em seguida, basta executar:

apt-get update

para reescrever essas listas e o comando funcionará novamente.

De qualquer forma, é recomendável executar apt-get updateantes de instalar qualquer coisa.

caos
fonte
6

As listas são o conhecimento do que está disponível; portanto, se você as excluir, não poderá instalar nada - isso é exatamente o mesmo que remover os repositórios da sua lista de fontes (o que você diz que não quer fazer).

Uma opção é que você pode compactar as listas e lembre-se de descompactá-las antes de seguir update.

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

Com a lista de fontes vazias, você poderia apt-get update- isso deve limpar o seu /var/lib/apt/lists. Em seguida, vincule as fontes apropriadas novamente /etc/apt/sources.list.d, mas não o faça updateaté que você pretenda usá-las.

Toby Speight
fonte