A remoção de kernels mais antigos leva uma eternidade

1

Eu tenho uma instalação do Ubuntu 12.04 de 64 bits com o Windows 7 de 64 bits na configuração de inicialização dupla. Eu estava tentando remover pacotes de kernels mais antigos para liberar algum espaço, mas o processo está demorando muito.

Eu digitei o seguinte comando:

cat knlist.txt | xargs sudo apt-get -y purge

O arquivo knlist.txt contém:

linux-headers-3.2.0-77
linux-headers-3.2.0-77-generic
linux-headers-3.2.0-80
linux-headers-3.2.0-80-generic
linux-headers-3.2.0-82
linux-headers-3.2.0-82-generic
linux-headers-3.2.0-83
linux-headers-3.2.0-83-generic
linux-headers-3.2.0-84
linux-headers-3.2.0-84-generic
linux-headers-3.2.0-85
linux-headers-3.2.0-85-generic
linux-headers-3.2.0-86
linux-headers-3.2.0-86-generic
linux-headers-3.2.0-87
linux-headers-3.2.0-87-generic
linux-headers-3.2.0-88
linux-headers-3.2.0-88-generic
linux-headers-3.2.0-89
linux-headers-3.2.0-89-generic
linux-image-3.2.0-77-generic
linux-image-3.2.0-80-generic
linux-image-3.2.0-82-generic
linux-image-3.2.0-83-generic
linux-image-3.2.0-84-generic
linux-image-3.2.0-85-generic
linux-image-3.2.0-87-generic
linux-image-3.2.0-88-generic
linux-image-3.2.0-89-generic
linux-tools-3.2.0-80
linux-tools-3.2.0-82
linux-tools-3.2.0-83
linux-tools-3.2.0-84
linux-tools-3.2.0-85
linux-tools-3.2.0-87
linux-tools-3.2.0-88
linux-tools-3.2.0-89

Meu kernel atual é o 3.2.0-91.

Normalmente leva alguns minutos, mas agora está demorando para sempre! Eu já deixei correndo pela noite inteira. Cada passo leva horas!

Eu tentei pausar o processo usando ctrl + z e retomando com% + return, eu até abortei o processo e reiniciei.

Após retomar cerca de 3 horas atrás, a tela é assim (eu tenho uma instalação em português):

Removendo linux-image-3.2.0-77-generic ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-77-generic /boot/vmlinuz-3.2.0-77-generic
update-initramfs: Deleting /boot/initrd.img-3.2.0-77-generic
run-parts: executing /etc/kernel/postrm.d/zz-extlinux 3.2.0-77-generic /boot/vmlinuz-3.2.0-77-generic
P: Checking for EXTLINUX directory... found.
P: Writing config for /boot/vmlinuz-3.2.0-91-generic...
P: Writing config for /boot/vmlinuz-3.2.0-90-generic...
P: Writing config for /boot/vmlinuz-3.2.0-89-generic...
P: Writing config for /boot/vmlinuz-3.2.0-88-generic...
P: Writing config for /boot/vmlinuz-3.2.0-87-generic...
P: Writing config for /boot/vmlinuz-3.2.0-85-generic...
P: Writing config for /boot/vmlinuz-3.2.0-84-generic...
P: Writing config for /boot/vmlinuz-3.2.0-83-generic...
P: Writing config for /boot/vmlinuz-3.2.0-82-generic...
P: Writing config for Windows 7 (loader) on /dev/sdb1...
P: Installing debian theme... done.
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.2.0-77-generic /boot/vmlinuz-3.2.0-77-generic

(O último passo apareceu há alguns minutos)

Aqui está o meu lsblk:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0  74,5G  0 disk 
├─sda1   8:1    0     5G  0 part [SWAP]
└─sda2   8:2    0  69,5G  0 part /
sdb      8:16   0 931,5G  0 disk 
├─sdb1   8:17   0   100M  0 part 
├─sdb2   8:18   0  50,1G  0 part 
└─sdb3   8:19   0 881,4G  0 part /media/Dados
sdc      8:32   0 465,8G  0 disk 
├─sdc1   8:33   0 349,3G  0 part /media/Storage
└─sdc2   8:34   0 116,5G  0 part /media/Extra
sr0     11:0    1  1024M  0 rom  

O que posso fazer para corrigir essa lentidão? É porque existem muitos kernels para remover?

Eu estava pensando em deixá-lo rodando o configurador grub, mas levaria dias e estou realmente com medo de derreter meu disco devido a intensa atividade de disco rígido durante o processo.

    
por Hydren 06.10.2015 / 03:08

3 respostas

1

Eu resolvi a lentidão. Eu desconectei um dos discos rígidos secundários e funcionou.

Pelo que eu pesquisei, parece que esse tipo de problema está relacionado a alguma partição / drive de falha.

EDITAR:

A unidade desconectada estava morrendo . Eu precisava comprar um substituto.

    
por Hydren 09.10.2015 / 02:23
2

Em termos práticos, se você estiver prestes a desinstalar um número de kernels antigos (ou talvez esteja a meio caminho desse processo) e quiser acelerar as coisas , pode tentar o seguinte:

  1. Edite o arquivo /usr/sbin/update-grub como root e adicione a linha exit 0 após a linha #!/bin/sh .

  2. Use apt-get ou o Centro de Software para remover seus kernels indesejados conforme planejado.

  3. Depois, remova essa linha de /usr/sbin/update-grub .

  4. Importante! Por fim, execute update-grub manualmente.

Seria ótimo se, no futuro, dpkg resolvesse realizar esse comportamento automaticamente.

Uma exceção notável é quando você está desinstalando o kernel que é atualmente o padrão no grub. Nesse caso, pode ser preferível executar update-grub mais cedo ou mais tarde.

    
por joeytwiddle 02.02.2016 / 02:49
1

Toda vez que você instala / remove um kernel, o install-hook grub-configura cada kernel instalado. Isso é mais seguro e menos propenso a erros, e geralmente não é muito mais lento para importar.

De improviso, eu acho que havia algo errado com essa unidade. Olhe para isso.

Se executar a reconfiguração do grub e outras coisas é o que está tomando o tempo todo, pode ser possível desabilitar isso, e só executá-lo para o último dos pacotes do kernel ou algo assim. Olhe para apt.conf (5), DPkg:: opções para apt e coisas relacionadas.

    
por user3113723 06.10.2015 / 04:17