Por que o mesmo pacote é às vezes essencial e não essencial?

0

Eu estou tentando reduzir a pegada de disco rígido da minha instalação Debian Stretch automaticamente purge ing todos os pacotes que são:

  • não pacotes essenciais e
  • não é necessário por nenhum pacote essencial (possivelmente até indiretamente).

Um pacote essencial é um pacote que possui o conjunto de campos de controle Essential .

Por exemplo, init não é um pacote essencial, enquanto coreutils é essencial.

Atualmente estou confuso se existem diferentes definições de essencial.

Quando uso dkpg , vejo que init não é essencial:

dpkg-query -Wf '${Package;-40}${Essential}\n' | grep init
init                                    no
init-system-helpers                     yes
initramfs-tools                         no
initramfs-tools-core                    no
sysvinit-utils                          yes

No entanto, ao remover init (o que em si parece uma má idéia, mas não é esse o caso aqui) com apt-get purge , recebo a mensagem de que init é realmente essencial:

apt-get purge init
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  init*
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
  init
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 19.5 kB disk space will be freed.
You are about to do something potentially harmful.
To continue type in the phrase 'Yes, do as I say!'
 ?] n
Abort.

Minhas perguntas são:

  1. Por que dkpg e apt-get têm definições conflitantes de essencial?
  2. Como faço para consultar todos os pacotes que são essenciais no sentido de apt-get ?
por StephanB 20.06.2017 / 21:58

1 resposta

1

Acontece que é do campo Important: yes que init tem (mas, por exemplo, tzdata não).

$ dpkg -s init | grep Important
Important: yes

A mensagem ao tentar removê-lo é realmente confusa v. Essential: yes packages; O bug # 826587 do Debian solicita uma mensagem menos confusa.

PS: Você pode querer dar uma olhada no Installed-Size. Você não está salvando muito purgando init , pois sua finalidade é apenas certificar-se de que algum sistema init esteja instalado. E se você não tiver um an sistema init instalado, seu sistema será uma caixa incorporada altamente personalizada ou quebrada.

    
por 20.06.2017 / 22:31