apt-get clean não remove arquivos .lz4 em / var / lib / apt / lists

0

Gostaria de remover os arquivos .lz4 que foram gerados pelo Apt, mas apt-get clean não faz o trabalho. Remove arquivos em partial dir, mas não em /var/lib/apt/lists .

# apt-get -s clean
Del /var/cache/apt/archives/* /var/cache/apt/archives/partial/*
Del /var/lib/apt/lists/partial/*
Del  
# apt-get clean
# find /var/lib/apt/lists -type f -size +10M -ls
  3685776  15304 -rw-r--r--   1 root     root     15667682 Apr 21  2016 /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_xenial_universe_binary-i386_Packages.lz4
  3685775  15340 -rw-r--r--   1 root     root     15707199 Apr 21  2016 /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_xenial_universe_binary-amd64_Packages.lz4

Como eu posso limpar esses arquivos usando o comando Apt?

Gostaria de removê-los, portanto, meu contêiner do Docker após o provisionamento é menor.

Repro passos usando o Docker:

$ docker run ubuntu:xenial -it bash
# apt-get update
# apt-get -s clean
Del /var/cache/apt/archives/* /var/cache/apt/archives/partial/*
Del /var/lib/apt/lists/partial/*
# apt-get clean
# find /var/lib/apt/lists -type f -size +1M -ls
  1182038  15340 -rw-r--r--   1 root     root     15707199 Apr 21  2016 /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_xenial_universe_binary-amd64_Packages.lz4
  1182032  15596 -rw-r--r--   1 root     root     15968301 Apr 21  2016 /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_xenial_universe_source_Sources.lz4
...
    
por kenorb 20.05.2018 / 01:42

2 respostas

1

Você tem o universe -repository ativado, é por isso que você tem esses arquivos em /var/lib/apt/lists . O universe -repository fornece software gratuito e de código aberto mantido pela comunidade. Eu não acho que você queira desabilitar este repositório.

Se você desativar este repositório e executar sudo apt update , os arquivos obsoletos em /var/lib/apt/lists serão removidos automaticamente.

    
por mook765 20.05.2018 / 02:53
1

Como remover esses arquivos

Não é uma boa ideia remover esses arquivos, a menos que você esteja realmente sofrendo por espaço temporário em disco ou não atualizará o software do sistema novamente.

Se você tem certeza de que não há atividades do APT em andamento, incluindo as atualizações de segurança automáticas que você configurou durante a instalação do Ubuntu ou a janela de aviso automático você tem atualizações, você pode removê-las da seguinte maneira:

sudo rm -r /var/lib/apt/lists

Na próxima vez que você executar sudo apt-get update , a estrutura desse diretório será automaticamente recriada para você.

Por que sudo apt-get clean não remove esses arquivos?

sudo apt-get clean não removerá nenhum arquivo em /var/lib/apt/lists , exceto aqueles em /var/lib/apt/lists/partial . Isso pode ser visto como você apontou com sudo apt-get -s clean :

$ sudo apt-get -s clean
Del /var/cache/apt/archives/* /var/cache/apt/archives/partial/*
Del /var/lib/apt/lists/partial/*
Del /var/cache/apt/pkgcache.bin /var/cache/apt/srcpkgcache.bin

Observe que /var/lib/apt/lists/* não está listado para exclusão.

Isso é feito porque os arquivos excluídos não impedem que os comandos APT sejam executados com sucesso. Só tem a possibilidade de diminuí-los quando as coisas precisam ser redownloaded.

A exclusão de /var/lib/apt/lists/* causa erros com sudo apt-get install e apt-cache até que você execute sudo apt-get update novamente. Também faz com que sudo apt-get update demore muito mais, já que não é possível ignorar o download de arquivos que não foram alterados.

    
por Chai T. Rex 20.05.2018 / 05:28