Pode um pacote do kernel do Linux ter arquivos de configuração que permanecem no armazenamento após a remoção do pacote?

1

Existe algum uso na limpeza de um pacote do kernel, em vez de remover? Eu pergunto isso, porque a remoção automática de pacotes não limpa todos os pacotes removidos. (Eu configurei esta remoção automática em /etc/apt/apt.conf.d/50unattended-upgrades , e é dito ser equivalente a apt-get autoremve ) Pelo menos dpkg-query -L para tal pacote dá

Package 'linux-image-4.2.0-21-generic' does not contain any files (!)

, portanto, sugeriria que não há arquivos de configuração por aí. dpkg-query mostra o status deinstall ok config-files para linux-image-4.2.0-21-generic . Para o respectivo pacote de cabeçalho linux-headers-4.2.0-21-generic , dpkg-query mostra o status not-installed e, para linux-headers-4.2.0-21 , ele não mostra uma correspondência após a operação de remoção automática.

Para o que vale a pena, aqui está um extrato de /var/log/unattended-upgrades/unattended-upgrades-dpkg.log :

Removing linux-headers-4.2.0-21-generic (4.2.0-21.25) ...
Removing linux-headers-4.2.0-21 (4.2.0-21.25) ...
Removing linux-image-extra-4.2.0-21-generic (4.2.0-21.25) ...
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
run-parts: executing /etc/kernel/postinst.d/dkms 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
Error! Your kernel headers for kernel 4.2.0-21-generic cannot be found.
Please install the linux-headers-4.2.0-21-generic package,
or use the --kernelsourcedir option to tell DKMS where it's located
Error! Your kernel headers for kernel 4.2.0-21-generic cannot be found.
Please install the linux-headers-4.2.0-21-generic package,
or use the --kernelsourcedir option to tell DKMS where it's located
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
update-initramfs: Generating /boot/initrd.img-4.2.0-21-generic
run-parts: executing /etc/kernel/postinst.d/pm-utils 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
run-parts: executing /etc/kernel/postinst.d/unattended-upgrades 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
run-parts: executing /etc/kernel/postinst.d/update-notifier 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.2.0-23-generic
Found initrd image: /boot/initrd.img-4.2.0-23-generic
Found linux image: /boot/vmlinuz-4.2.0-22-generic
Found initrd image: /boot/initrd.img-4.2.0-22-generic
Found linux image: /boot/vmlinuz-4.2.0-21-generic
Found initrd image: /boot/initrd.img-4.2.0-21-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 7 (loader) on /dev/sda1
done
Removing linux-image-4.2.0-21-generic (4.2.0-21.25) ...
Examining /etc/kernel/prerm.d.
run-parts: executing /etc/kernel/prerm.d/dkms 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
update-initramfs: Deleting /boot/initrd.img-4.2.0-21-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.2.0-21-generic /boot/vmlinuz-4.2.0-21-generic
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.2.0-23-generic
Found initrd image: /boot/initrd.img-4.2.0-23-generic
Found linux image: /boot/vmlinuz-4.2.0-22-generic
Found initrd image: /boot/initrd.img-4.2.0-22-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 7 (loader) on /dev/sda1
done
    
por jarno 09.01.2016 / 09:41

1 resposta

1

Nenhum pacote linux-{image,image-extra,header}-<version>-generic adiciona nada a /etc . Você pode confirmar isso usando uma verificação rápida dos pacotes do kernel atualmente instalados:

grep /etc /var/lib/dpkg/info/linux-{image,headers}*.list

A saída não será nada. Isso também é reforçado pela falta de .conffiles para esses pacotes em /var/lib/dpkg/info/ . Como tal, você não precisa limpar esses pacotes; remover e limpar são efetivamente os mesmos para pacotes do kernel.

O que resta depois de remover esses pacotes é a informação que dpkg armazena (em /var/lib/dpkg/info ): o postrm script do mantenedor de pacotes , lista de arquivos, etc. A última etapa da limpeza está executando postrm e excluindo postrm em si (e qualquer outra informação dpkg pode ter, como listas de arquivos) - o que geralmente não é feito para remoção normal. Você pode ver um monte de linux-image*.postrm arquivos em /var/lib/dpkg/info/ .

    
por muru 09.01.2016 / 09:52