Questão 3.15.5 kernel estável não está sendo construído, “gzip: stdout: não há espaço disponível no dispositivo”, / boot NÃO está cheio


Correndo em um problema construindo o kernel 3.15.5 estável no Ubuntu 14.04 LTS.

Parcela Relevante de sudo make modules_install install

  INSTALL /lib/firmware/edgeport/down2.fw
  INSTALL /lib/firmware/edgeport/down3.bin
  INSTALL /lib/firmware/whiteheat_loader.fw
  INSTALL /lib/firmware/whiteheat.fw
  INSTALL /lib/firmware/keyspan_pda/keyspan_pda.fw
  INSTALL /lib/firmware/keyspan_pda/xircom_pgs.fw
  INSTALL /lib/firmware/cpia2/stv0672_vp4.bin
  INSTALL /lib/firmware/yam/1200.bin
  INSTALL /lib/firmware/yam/9600.bin
  DEPMOD  3.15.5
sh /home/anthony/code/linux-stable/arch/x86/boot/install.sh 3.15.5 arch/x86/boot/bzImage \
                System.map "/boot"
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 3.15.5 /boot/vmlinuz-3.15.5
run-parts: executing /etc/kernel/postinst.d/dkms 3.15.5 /boot/vmlinuz-3.15.5
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.15.5 /boot/vmlinuz-3.15.5
update-initramfs: Generating /boot/initrd.img-3.15.5

gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-3.15.5 with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
make[1]: *** [install] Error 1
make: *** [install] Error 2

Saída de df -h

Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-root  103G   92G  5.1G  95% /
none                         4.0K     0  4.0K   0% /sys/fs/cgroup
udev                         3.8G   12K  3.8G   1% /dev
tmpfs                        767M  1.5M  766M   1% /run
none                         5.0M     0  5.0M   0% /run/lock
none                         3.8G   38M  3.8G   1% /run/shm
none                         100M   56K  100M   1% /run/user
/dev/sda1                    228M   55M  161M  26% /boot
/home/anthony/.Private       103G   92G  5.1G  95% /home/anthony
/dev/sdb2                    451G  166G  286G  37% /media/anthony/Windows7_OS

Feito uma essência da minha configuração do kernel: https://gist.github.com/acrognale/7d5568bec6c88cebcde0

EDITAR: Corrigido. Acontece que era o meu diretório tmp que estava se enchendo. Portanto, se alguém encontrar isso no futuro, verifique se você tem espaço suficiente em / tmp.


2
2017-07-12 23:55


origem




Respostas:


Parece que você está ficando sem espaço em algum lugar:

Baseado no seu df -h / tmp é um local provável.

Abra um segundo terminal e monitore a memória enquanto estiver compilando. Você pode conseguir isso com watch cat /proc/meminfo Você pode ter RAM e / ou SWAP insuficientes para realizar sua tarefa.

Você também pode ter espaço insuficiente em / tmp. Monitore o uso de disco dos sistemas de arquivos necessários durante a compilação. Você pode usar o comando watch para isso também watch df -h isso deve permitir que você veja se algo está preenchendo o que você não espera.

Para mais detalhes sobre o comando watch (que tem como padrão um intervalo de 2 segundos) veja man watch

Se você tiver espaço insuficiente em / boot.

Error during kernel upgrade: gzip: stdout: No space left on device

Há momentos em que você ficará surpreso com o fato de os gerenciadores de pacotes não removerem automaticamente os arquivos antigos do software instalado. Isso aconteceu comigo pela primeira vez, quando um dos sistemas que eu estava gerenciando de repente retornou um status de saída 1.

Removendo o aplicativo ofensivo para liberar espaço muito necessário é a certeza de falhar! especialmente se o aplicativo mencionado aqui for um kernel.

Considere esta linha:

Setting up libcups2 (1.4.6-5ubuntu1.3) ...
dpkg: dependency problems prevent configuration of linux-image-generic:
linux-image-generic depends on linux-image-2.6.38-10-generic; however:
Package linux-image-2.6.38-10-generic is not configured yet.
dpkg: error processing linux-image-generic (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
Setting up linux-headers-2.6.38-10 (2.6.38-10.46) ...
Setting up linux-headers-2.6.38-10-generic (2.6.38-10.46) ...
Setting up linux-headers-generic (2.6.38.10.25) ...
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-2.6.38-8-generic
     gzip: stdout: No space left on device
     E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-2.6.38-8-generic
dpkg: error processing initramfs-tools (--configure):
subprocess installed post-installation script returned error exit status 1
No apport report written because MaxReports is reached already
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Errors were encountered while processing:
     linux-image-2.6.38-10-generic
     linux-image-generic
     linux-generic
     initramfs-tools

E: Sub-process /usr/bin/dpkg returned an error code (1)

Se você está adivinhando que / boot está em apuros. Você está certo. Agora, a parte complicada é essa. Emitir uma limpeza; autoremove não fará o truque porque a unidade não tem mais espaço suficiente. O que você faz em seguida?

  1. Se for um kernel (antigo) que precisa ser removido, observe atentamente sua configuração do grub.conf ou do grub.cfg e Identifique os kernels que você não precisa mais. Verifique o kernel atualmente carregado emitindo uname -r.

  2. Tome nota dos arquivos que precisam ser movidos, em nosso exemplo é um sistema baseado no debian, então você terá que mover estes arquivos: abi, config, initrd.img, System.map, vmcoreinfo, vmlinuz. Apenas remova / mova aqueles que você não precisa.

  3. Uma vez feito, execute o comando updatedb para atualizar o banco de dados slocate do sistema de arquivos

  4. Agora você pode emitir o comando upgrade de volta e isso instalará o novo kernel corretamente.

Fonte:http://myopensourcestints.blogspot.com/2011/07/error-during-upgrade-gzip-stdout-no.html


2
2017-07-13 00:09



Eu mencionei no título que / boot é NÃO cheio. Por favor, veja meu df -hsaída para o espaço disponível em / boot. - acrognale


O OP respondeu à pergunta em uma edição:

Corrigido Acontece que era o meu diretório tmp que estava se enchendo. Portanto, se alguém encontrar isso no futuro, verifique se você tem espaço suficiente em / tmp.

- Anthony Crognale


0