web-dev-qa-db-ja.com

3.15.5安定したカーネルが構築されない、「gzip:stdout:デバイスにスペースが残っていません」、/ bootがいっぱいではない

Ubuntu 14.04 LTSで3.15.5安定カーネルを構築する際に問題が発生します。

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

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

カーネル構成の要点を作成しました: https://Gist.github.com/acrognale/7d5568bec6c88cebcde

編集:修正しました。 tmpディレクトリがいっぱいになっていたことがわかりました。したがって、将来これに遭遇した場合は、/ tmpに十分なスペースがあることを確認してください。

2
acrognale

どこかでスペースが不足しているようです:

df -hに基づいて/ tmpがありそうな場所です。

コンパイル中に2番目のターミナルを開き、メモリを監視します。 watch cat /proc/meminfoでこれを達成できます。タスクを達成するには、RAMやSWAPが不十分な場合があります。

/ tmpに十分なスペースがない場合もあります。コンパイル中に必要なファイルシステムのディスク使用量を監視します。これに対してwatchコマンドも使用できますwatch df -hこれにより、予期しない何かがいっぱいになっているかどうかを確認できます。

Watchコマンド(デフォルトは2秒間隔)の詳細については、man watchを参照してください。

/ bootに十分なスペースがない場合。

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

パッケージマネージャーが、インストールされているソフトウェアの古いアーカイブを自動的に削除しないことに驚く場合があります。これは、私が管理していたシステムの1つが突然終了ステータス1を返したときに初めて起こりました。

攻撃的なアプリケーションを削除して必要なスペースを解放することは、間違いなく失敗します!特にここで言及したアプリケーションがカーネルの場合。

次の行を検討してください。

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)

/ bootに深刻な問題があると推測している場合。あなたは正しいです。さて、トリッキーな部分はこれです。パージを発行します。ドライブに十分なスペースがないため、autoremoveはトリックを行いません。次に何をしますか?

  1. 削除する必要があるのがカーネル(古いカーネル)である場合は、grub.confまたはgrub.cfgの構成をよく見て、不要になったカーネルを特定します。 uname -rを発行して、現在ロードされているカーネルを確認します。

  2. 移動する必要があるファイル、この例ではdebianベースのシステムに注意してください。したがって、これらのファイルを移動する必要があります:abi、config、initrd.img、System.map、vmcoreinfo、vmlinuz。不要なものを削除/移動するだけです。

  3. 完了したら、コマンドupdatedbを発行して、ファイルシステムのslocateデータベースを更新します

  4. これで、アップグレードコマンドを発行し直すことができ、これにより新しいカーネルが正しくインストールされます。

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

2
Elder Geek

OPは質問に答えました 編集中

それを修正しました。 tmpディレクトリがいっぱいになっていたことがわかりました。したがって、将来これに遭遇した場合は、/ tmpに十分なスペースがあることを確認してください。

Anthony Crognale

0
Eliah Kagan