Remoção de imagens de inicialização antigas quando uma em uso é instalada apenas parcialmente

1

Estou tentando atualizar meu kernel e, depois de fazer uma tentativa, ele foi parcialmente instalado. Agora, quando eu reiniciar, nada funcionará corretamente.

Examinei as perguntas anteriores e publiquei as minhas que ainda não receberam uma resposta.

Basicamente, preciso desinstalar os kernels antigos para abrir espaço para o 'sudo apt-get install -f' funcionar. Mas nada do que faço faz diferença.

Eu preciso liberar espaço de alguma forma. Eu tentei compartilhar, mas isso não me permite fazer as alterações necessárias. Como faço para excluir imagens antigas do kernal.

Tom Albanese
fonte

Respostas:

0

Leia o seguinte com atenção e não prossiga, a menos que você entenda as instruções e os efeitos de sua não execução com êxito.

Você pode determinar o kernel e a versão carregados no momento usando uname -a.

Seu computador possui arquivos /boot/que ajudam a iniciar o computador. Depois de carregar esses arquivos, os arquivos serão necessários /lib/modules/<kernel.version>/.

Então, digamos que você tenha decidido que deseja apenas o kernel 3.14. Digamos que você tenha uma versão 3.12 que gostaria de remover.

  1. Remova os arquivos de /boot/
    • ls /boot/ | grep 3.12
    • Verifique os arquivos listados
    • rm -rf /boot/*3.12*
  2. Remova os módulos do kernel associados
    • ls /lib/modules/ | grep 3.12
    • Verifique os arquivos listados
    • rm -rf /lib/modules/*3.12*

Você pode usar o df -hantes e o depois para ver o espaço livre disponível em cada uma das partições montadas.

earthmeLon
fonte
Não tenho muita certeza de qual kernal estou usando. Eles são todos 3.13.0 com uma pitada -31 ou -41 ou -43 etc.
Tom Albanese
uname -alhe dirá sua versão atual do kernel.
earthmeLon
0

Teste isto:

Abra um terminal,

Pressione Ctrl+ Alt+T

Executá-lo:

$ sudo -i
# OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
# CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
# LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
# METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
# OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
# apt-get remove --purge $OLDCONF
# apt-get remove --purge $OLDKERNELS
# apt-get autoremove
# apt-get clean

Nota: $ = prompt do usuário. # = prompt de raiz.

kyodake
fonte