Por que o apt-cache lista também pacotes que NÃO estão instalados?

Por que o apt-cache lista também pacotes que NÃO estão instalados?

Por exemplo:

sudo apt-get update
sudo apt-cache pkgnames | less | sort > inst_pkgs.txt

Saída

....
virtualbox
virtualbox-4.3
virtualbox-5.0
virtualbox-dbg
virtualbox-dkms
virtualbox-guest-additions-iso
virtualbox-guest-dkms
virtualbox-guest-source
virtualbox-guest-utils
virtualbox-guest-x11
virtualbox-nonfree
virtualbox-qt
virtualbox-source
....

mas quando eu tento

sudo apt-get remove virtualbox # ou qualquer outro pacote acima

eu recebo

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'virtualbox' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 252 not upgraded.

Responder1

apt-cacheé para interagir com o cache do apt criado ou atualizado com o apt-get update. Isso não tem nada a ver com o que está atualmente instalado em seu sistema.

Simplificando, apt-geté usado para modificar pacotes disponíveis enquanto apt-cacheé usado para consultá-los.

Do texto de ajuda:

apt-geté uma interface de linha de comando simples para baixar e instalar pacotes.

Página de manual do Linux - apt-get(8)


apt-cacheé uma ferramenta de baixo nível usada para consultar informações dos arquivos de cache binário do APT

Página de manual do Linux - apt-cache(8)

informação relacionada