Sempre que você chamar apt-get update
dos repositórios contidos no sources.list
get lido, isso dirá ao apt-get de onde obter as listas de pacotes. Esta lista é baixada e armazenada em /var/lib/apt/lists
para uso posterior. Estas são listas de todos os pacotes disponíveis nos repositórios selecionados. Mesmo se você remover sua sources.list, essa lista estará disponível para o APT. É por isso que você deve sempre fazer update
sempre que adicionar / remover / modificar um repositório, para manter essas listas atualizadas.
Como o terminal sabe que o navegador de cromo é um pacote válido para instalar?
"O terminal" não sabe nada. O APT lê todas as listas em /var/lib/apt/lists
e determina se o pacote está disponível. Se o pacote não for encontrado em nenhuma das listas, você receberá:
E: Unable to locate package <package>
Existe alguma lista de todos os pacotes que podem ser instalados?
Isso muda de repositório para repositório. Sua cópia / lista local de seus repositórios ativos está em /var/lib/apt/lists
.
Como ele encontra os pacotes?
$ sudo apt-get check
Reading package lists... Done
Building dependency tree
Reading state information... Done
A linha de interesse é
Reading package lists... Done
que informa que o APT lê a lista, de /var/lib/apt/lists
.