AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1524929
Accepted
deemon
deemon
Asked: 2024-08-30 22:09:38 +0800 CST2024-08-30 22:09:38 +0800 CST 2024-08-30 22:09:38 +0800 CST

Não é possível atualizar devido a pouco espaço em disco em /boot (22.04 a 24.04)

  • 772

sudo do-release-upgradefalha com:

Not enough free disk space 

The upgrade has aborted. The upgrade needs a total of 621 M free 
space on disk '/boot'. Please free at least an additional 152 M of 
disk space on '/boot'. You can remove old kernels using 'sudo apt 
autoremove' and you could also set COMPRESS=xz in 
/etc/initramfs-tools/initramfs.conf to reduce the size of your 
initramfs. 

Restoring original system state

Aborting

agora meu problema é que minha partição /boot (instalada, dimensionada e formatada pelo instalador do kubuntu 22.04) tem apenas 704 MB:

/dev/nvme0n1p2              704M  205M  448M  32% /boot

e meu único kernel instalado ocupa cerca de 200 MB:

$ ls -lah /boot
total 197M
drwxr-xr-x  5 root root 4.0K aug   30 16:41 .
drwxr-xr-x 22 root root 4.0K juuni 16  2022 ..
-rw-r--r--  1 root root 281K juuli 30 17:33 config-6.8.0-40-generic
drwx------  4 root root 4.0K jaan   1  1970 efi
drwxr-xr-x  5 root root 4.0K aug   30 16:38 grub
lrwxrwxrwx  1 root root   27 aug   30 13:38 initrd.img -> initrd.img-6.8.0-40-generic
-rw-r--r--  1 root root 173M aug   30 13:38 initrd.img-6.8.0-40-generic
lrwxrwxrwx  1 root root   27 aug   30 16:38 initrd.img.old -> initrd.img-6.8.0-40-generic
drwx------  2 root root  16K märts  2  2021 lost+found
-rw-r--r--  1 root root 179K veebr  6  2022 memtest86+.bin
-rw-r--r--  1 root root 181K veebr  6  2022 memtest86+.elf
-rw-r--r--  1 root root 181K veebr  6  2022 memtest86+_multiboot.bin
-rw-------  1 root root 8.3M juuli 30 17:33 System.map-6.8.0-40-generic
lrwxrwxrwx  1 root root   24 aug   30 13:38 vmlinuz -> vmlinuz-6.8.0-40-generic
-rw-------  1 root root  15M juuli 30 18:17 vmlinuz-6.8.0-40-generic
lrwxrwxrwx  1 root root   24 aug   30 16:38 vmlinuz.old -> vmlinuz-6.8.0-40-generic

Então não há mais nada que eu possa remover de lá... e ele ainda quer que eu libere mais 152 MB?

  1. Existe alguma coisa que eu possa fazer para aumentar o tamanho do /boot de alguma forma?
nvme0n1                259:5    0 238.5G  0 disk  
├─nvme0n1p1            259:6    0   512M  0 part  /boot/efi
├─nvme0n1p2            259:7    0   732M  0 part  /boot
└─nvme0n1p3            259:8    0 237.3G  0 part  
  └─nvme0n1p3_crypt    252:0    0 237.2G  0 crypt 
    ├─vgkubuntu-root   252:1    0 236.3G  0 lvm   /
    └─vgkubuntu-swap_1 252:2    0   976M  0 lvm   [SWAP]

Não sei... talvez nukear o vgkubuntu-swap_1 de alguma forma e adicionar o espaço liberado de nvme0n1p3 para nvme0n1p2? Mas eu realmente não sei como.

  1. Ou há algo que eu possa fazer para reduzir de alguma forma os 621 MB que preciso para fazer o do-release-upgrade?

  2. Ou há alguma maneira fácil de mover a partição /boot para outro lugar (temporariamente) se eu fosse adicionar outro disco ou pendrive USB ao sistema? Fazer a atualização e mover "boot" de volta (se não exigir realmente essa quantidade absurda de espaço após a instalação)?

22.04
  • 1 1 respostas
  • 117 Views

1 respostas

  • Voted
  1. Best Answer
    mpboden
    2024-09-01T08:26:31+08:002024-09-01T08:26:31+08:00

    Seu objetivo principal é atualizar do Kubuntu 22.04 para o Kubuntu 24.04, mas você não tem espaço suficiente no seu /bootdiretório. Há algumas maneiras de fazer isso:

    1. Salve seus dados, instale o Kubuntu 24.04 e restaure seus dados

      Esta certamente será a opção mais fácil e menos arriscada.

    2. Crie novas imagens initrd com uma configuração de compactação diferente e limite os módulos incluídos.

      Isso pode não funcionar, mas pode reduzir o tamanho da sua imagem initrd atual o suficiente para permitir que você prossiga com a atualização.

    3. Crie uma partição nova e maior /boote mova o conteúdo da partição atual /bootpara a nova/boot

      Isso é possível, mas você precisaria ter espaço livre no seu drive atual, o que você não tem atualmente. No entanto, você pode tentar diminuir sua partição raiz para ganhar mais espaço livre no drive, mas isso seria outra tarefa em si.

    4. Mova o conteúdo do seu arquivo atual /boot, que está em uma partição separada, para o /bootdiretório da sua partição raiz.

      Isso não é algo que você pode fazer, porque você tem uma unidade criptografada LUKS.

    5. Adicione outro disco rígido ou unidade flash USB e mova o conteúdo do seu atual /bootpara o novo /boot.

      Isso tem uma grande chance de sucesso, mas é um pouco difícil e arriscado. No entanto, há um benefício adicional de não ter que inicializar em um Live CD ou entrar em um ambiente chroot.

    Descreverei as opções 2 e 5 abaixo.


    Aviso: Há um risco de danificar seu sistema se você cometer algum erro em que não consiga inicializar. Nesse caso, você provavelmente será inicializado no prompt do Grub Rescue , o que implicaria em um conjunto diferente de instruções para remediar. Portanto, faça backup de todos os seus dados antes de prosseguir. No pior cenário, você pode instalar o Kubuntu 24.04 e restaurar os dados dos quais você acabou de fazer backup. ;)


    Opção 2

    Alterar initramfs.confas configurações COMPRESS e MODULES

    Ao alterar o algoritmo de compressão e as configurações de Módulos, isso reduzirá as imagens initrd, porque ele contém apenas os módulos necessários para montar a partição raiz. O risco é que o sistema não inicialize mais se houver alterações na configuração do sistema. Então prossiga com cautela.

    • Primeiro, verifique o tamanho atual da sua imagem initrd:

      $ ls -lh /boot/initrd.img-6.8.0-40-generic
      -rw-r--r--  1 root root  128M Sep 1 22:06 initrd.img-6.8.0-40-generic
      
    • Em seguida, edite /etc/initramfs-tools/initramfs.conf:

      sudo nano /etc/initrams-tools/initramfs.conf

      Altere as seguintes linhas:

      MODULES=most
      COMPRESS=zstd
      

      ...para isto:

      MODULES=dep
      COMPRESS=xz
      

      Talvez você queira tentar lzmaa compactação para xzver se o tamanho fica ainda menor.

    • Depois de fazer essas alterações, reconstrua sua imagem initrd:

      sudo update-initramfs -c -k all

    • Em seguida, verifique o tamanho novamente:

      $ ls -lh /boot/initrd.img-6.8.0-40-generic
      -rw-r--r--  1 root root  39M Sep 1 22:24 initrd.img-6.8.0-40-generic
      

    Como você pode ver, minha imagem initrd foi reduzida de 128M para 39M. Considerando que sua imagem tem 173M, pode ser possível, mas não há garantia.

    Se isso lhe der espaço suficiente para atualizar, você sempre poderá reverter essas alterações após a atualização e criar novas imagens initrd.

    Opção 5

    Mover /bootdiretório para novo disco rígido

    1. Abra seu terminal Konsole

    2. Particione sua nova unidade

      • Supondo que você instalou um pen drive USB e ele aparece como /dev/sda, execute:

        sudo parted /dev/sda

      • Criar um rótulo

        mklabel gpt

      • Fazer partição

        mkpart primary ext4 0% 100%

      • Exibir tabela de partição

        print

      • Saída separada

        quit

    3. Formate sua nova unidade

      sudo mkfs.ext4 /dev/sda1

    4. Monte um novo disco rígido,/dev/sda1

      sudo mount /dev/sda1 /mnt

    5. Copie o diretório atual /bootpara o novo disco rígido

      sudo cp -a /boot/* /mnt/

    6. Desmonte o novo disco rígido,/dev/sda1

      sudo umount /dev/sda1

    7. Desmontar diretórios atuais /boot/efie/boot

      sudo umount /boot/efi
      sudo umount /boot
      
    8. Monte um novo disco rígido, /dev/sda1, para/boot

      sudo mount /dev/sda1 /boot

    9. Montar partição efi

      sudo mount /dev/nvme0n1p1 /boot/efi

    10. Atualizar/etc/fstab

      • Obtenha o UUID do novo disco rígido,/dev/sda1

        sudo blkid

      • Copie o UUID de /dev/sda1para /etc/fstab. Substitua este UUID pelo atual associado a /dev/nvme0n1p2. Se quiser, você pode comentar a linha com o UUID original usando a #e então copiar/colar a linha abaixo usando o novo UUID. Algo como o seguinte:

        # /boot was on /dev/nvme0n1p2 during installation
        #UUID=4e2995ca-c733-414a-8d2d-e2ccd992f12c /boot               ext4    defaults 0       2
        UUID=0d092f19-c04a-439e-8fa2-3e82cd29787d /boot               ext4    defaults 0       2
        
    11. Reinstale o Grub.

      sudo grub-install /dev/nvme0n1

      Nota: Embora o /bootdiretório esteja tecnicamente em um disco rígido diferente, ainda estamos reinstalando o Grub no seu disco rígido principal, onde está seu sistema de arquivos raiz. Como /dev/sdaé montado em /boote /dev/nvme0n1p1é montado em /boot/efi, não há necessidade de adicionar opções como --boot-directory=e --efi-directory=.

    12. Atualizar initramfs

      sudo update-initramfs -c -k all

    13. Atualizar configuração do Grub

      sudo update-grub

    14. Reiniciar o computador

      sudo reboot


    Depois disso, você pode prosseguir com sua atualização para o Kubuntu 24.04. Se for bem-sucedido, você pode reverter seu /bootdiretório para /dev/nvme0n1p2usar os passos acima ao contrário ou excluir a /dev/nvme0n1p2partição antiga da seguinte forma:

    • Correr parted:

      sudo parted /dev/nvme0n1

    • Exibir tabela de partição atual:

      print

    • Excluir partição antiga /boot, nvme0n1p2, (ajuste adequadamente):

      rm 2

    • Se você exibir a tabela de partição novamente, verá que ela foi removida:

      print

    • Saída parted:

      quit

    Boa sorte.

    • 1

relate perguntas

  • Conexão lenta à Internet no Ubuntu 22.04 Beta [fechado]

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve