Não há espaço suficiente para instalar a nova atualização do kernel

4

Durante uma atualização recente, recebi isso:

Installing: kernel-default-2.6.37.6-0.11.1 [error]
Installation of kernel-default-2.6.37.6-0.11.1 failed:
(with --nodeps --force) Error: Subprocess failed. Error: RPM failed:    installing package kernel-default-2.6.37.6-0.11.1.x86_64 needs 147MB on the / filesystem


Abort, retry, ignore? [a/r/i] (a): i
Installing: kernel-desktop-2.6.37.6-0.11.1 [error]
Installation of kernel-desktop-2.6.37.6-0.11.1 failed:
(with --nodeps --force) Error: Subprocess failed. Error: RPM failed:    installing package kernel-desktop-2.6.37.6-0.11.1.x86_64 needs 148MB on the / filesystem


Abort, retry, ignore? [a/r/i] (a): i
Installing: kernel-source-2.6.37.6-0.11.1 [error]
Installation of kernel-source-2.6.37.6-0.11.1 failed:
(with --nodeps --force) Error: Subprocess failed. Error: RPM failed:    installing package kernel-source-2.6.37.6-0.11.1.noarch needs 432MB on the / filesystem

O que estou assumindo significa que minha partição / precisa de algum espaço. Então eu verifiquei o tamanho / espaço:

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              25G   24G  208M 100% /

Como / cresceu para ser tão grande? Isso é uma ocorrência comum e há um truque rápido para liberar algum espaço? Eu presumo que há coisas que não estou usando lá e consegui atualizar os kernels facilmente no ano passado - então algo está se acumulando.

Eu prefiro descobrir o que libero (os kernels antigos são mantidos?) em vez de particionar novamente todo o disco para crescer / .

    
por n0pe 26.01.2012 / 16:07

2 respostas

2

Faça um backup antes de fazer qualquer uma das seguintes alterações
Não prossiga sem um backup ou com a disposição de perder todos os dados.

executar

du -sh /home

para obter o tamanho usado pelo diretório / home.
Se for suficientemente grande (> = 4G), o / home é um bom candidato para ter sua própria partição.

Inicialize a partir de um livecd ou SystemRescueCd
Dependendo do tipo de tabela de partição (GPT ou MBR), use gdisk , parted ou fdisk .

Crie uma nova partição
Formatar usando seu fstype preferido por exemplo.

mkfs.ext4 /dev/sda2
mkdir /mnt/os
mkdir /mnt/home
mount /dev/sda1 /mnt/os    # mount your OS, now all on /
mount /dev/sda2 /mnt/home  # mount newly formatted partion
cp -a /mnt/os/home/* /mnt/home/ # copy current /home data to new partition
cd /mnt/os/home                 # remove old home data, leaving mountpoint
rm -rf .

Agora você precisa fazer um cd para / mnt / os / etc e editar fstab e adicionar

/dev/sda2 /home ext4 defaults 0 1

Há mais de uma maneira de fazer isso. Dependendo da sua experiência e habilidade, você pode montar pelo UUID (preferido, mas não necessário).

Poder-se-ia fazer o mesmo com outros sistemas de arquivos, se você instalou muitas ferramentas do google ou eclipse, eles ficam instalados em / opt e também é um bom candidato para estar em sua própria partição.

Se você chegar ao ponto em que tem muitas partições, convém alternar para o particionamento GPT e / ou LVM. Em caso afirmativo, faça novamente a pergunta

    
por 26.01.2012 / 16:36
1

Se uma partição do sistema de 25GB é grande ou pequena depende da quantidade de software que você instalou (é um servidor de propósito único ou uma estação de trabalho compartilhada com muitos softwares específicos de domínio?) e da quantidade de dados ocultos /var (você tem 200 usuários na partição?).

Bons lugares para procurar crufts acumulados incluem:

  • /tmp : algum arquivo grande e antigo? Você pode querer criar o sistema de arquivos /tmp a tmpfs , para que ele não consuma espaço em disco e reinicie a cada inicialização.
  • /var/tmp : algum arquivo enorme lá?
  • /var/log : um serviço fugitivo produziu gigabytes de logs?
  • /var/cache : existe um cache grande que não está sendo limpo corretamente? Verifique especialmente onde sua distribuição coloca os pacotes baixados (por exemplo, /var/cache/apt/archives/ nas distribuições baseadas em APT).
  • Você tem algum software não utilizado instalado? Isso geralmente não é muito, mas você pode encontrar versões de biblioteca que não são usadas por nenhum executável ainda em seu sistema. Programas como deborphan (no Debian e derivados) podem ajudar. Verifique se você está sobrecarregado por kernels antigos também.

Se você não consegue encontrar o que excluir, você pode pelo menos ver o que está ocupando espaço com du ou alternativa gráfica como Baobab (um utilitário Gnome).

Se você tiver espaço em outro lugar, poderá mover um grande bloco de /usr ou /var (ou /opt ou /srv se relevante) para uma partição diferente e criar um link simbólico.

    
por 27.01.2012 / 02:03