web-dev-qa-db-ja.com

フルブートディスクから古いカーネルを削除できません

マシンにソフトウェアをインストールまたは更新できません。

信じられないほどの推測力を使用して、/ bootがいっぱいで、すべての心痛を引き起こしていると推測しました。

notlinus @ NS0:/ boot $ df -h

Filesystem                Size  Used Avail Use% Mounted on
udev                      2.0G  4.0K  2.0G   1% /dev
tmpfs                     396M  656K  395M   1% /run
/dev/mapper/NS0--vg-root   36G  3.6G   30G  11% /
none                      4.0K     0  4.0K   0% /sys/fs/cgroup
none                      5.0M     0  5.0M   0% /run/lock
none                      2.0G     0  2.0G   0% /run/shm
none                      100M     0  100M   0% /run/user
/dev/sda1                 236M  234M     0 100% /boot

notlinus @ NS0:/ boot $ ls -l

total 229780
-rw-r--r-- 1 root root  1270654 Aug 12  2015 abi-3.19.0-26-generic
-rw-r--r-- 1 root root  1271100 Sep  1  2015 abi-3.19.0-28-generic
-rw-r--r-- 1 root root  1271518 Oct  3 00:54 abi-3.19.0-30-generic
-rw-r--r-- 1 root root  1271689 Oct  8 13:01 abi-3.19.0-31-generic
-rw-r--r-- 1 root root  1271689 Oct 22 13:14 abi-3.19.0-32-generic
-rw-r--r-- 1 root root  1271689 Nov  6 20:39 abi-3.19.0-33-generic
-rw-r--r-- 1 root root  1271691 Nov 23 16:57 abi-3.19.0-37-generic
-rw-r--r-- 1 root root   177632 Aug 12  2015 config-3.19.0-26-generic
-rw-r--r-- 1 root root   177651 Sep  1  2015 config-3.19.0-28-generic
-rw-r--r-- 1 root root   177730 Oct  3 00:54 config-3.19.0-30-generic
-rw-r--r-- 1 root root   177790 Oct  8 13:01 config-3.19.0-31-generic
-rw-r--r-- 1 root root   177790 Oct 22 13:14 config-3.19.0-32-generic
-rw-r--r-- 1 root root   177790 Nov  6 20:39 config-3.19.0-33-generic
-rw-r--r-- 1 root root   177790 Nov 23 16:57 config-3.19.0-37-generic
drwxr-xr-x 5 root root     1024 Feb 17 13:47 grub
-rw-r--r-- 1 root root 20754747 Aug 27  2015 initrd.img-3.19.0-26-generic
-rw-r--r-- 1 root root 20753554 Sep  9 06:29 initrd.img-3.19.0-28-generic
-rw-r--r-- 1 root root 20756217 Oct  6 07:03 initrd.img-3.19.0-30-generic
-rw-r--r-- 1 root root 20758684 Oct 22 13:04 initrd.img-3.19.0-31-generic
-rw-r--r-- 1 root root 20757000 Nov  5 06:55 initrd.img-3.19.0-32-generic
-rw-r--r-- 1 root root 20758873 Nov 10 07:17 initrd.img-3.19.0-33-generic
-rw-r--r-- 1 root root 20757964 Dec  2 06:54 initrd.img-3.19.0-37-generic
-rw-r--r-- 1 root root  3463561 Feb 17 13:46 initrd.img-3.19.0-39-generic
-rw-r--r-- 1 root root  3463563 Feb 17 13:47 initrd.img-3.19.0-42-generic
drwx------ 2 root root    12288 Aug 27  2015 lost+found
-rw-r--r-- 1 root root   176500 Mar 12  2014 memtest86+.bin
-rw-r--r-- 1 root root   178176 Mar 12  2014 memtest86+.elf
-rw-r--r-- 1 root root   178680 Mar 12  2014 memtest86+_multiboot.bin
-rw------- 1 root root  3626965 Aug 12  2015 System.map-3.19.0-26-generic
-rw------- 1 root root  3626779 Sep  1  2015 System.map-3.19.0-28-generic
-rw------- 1 root root  3627906 Oct  3 00:54 System.map-3.19.0-30-generic
-rw------- 1 root root  3628177 Oct  8 13:01 System.map-3.19.0-31-generic
-rw------- 1 root root  3628149 Oct 22 13:14 System.map-3.19.0-32-generic
-rw------- 1 root root  3628149 Nov  6 20:39 System.map-3.19.0-33-generic
-rw------- 1 root root  3628776 Nov 23 16:57 System.map-3.19.0-37-generic
-rw------- 1 root root  6570192 Aug 12  2015 vmlinuz-3.19.0-26-generic
-rw------- 1 root root  6568848 Sep  1  2015 vmlinuz-3.19.0-28-generic
-rw------- 1 root root  6572496 Oct  3 00:54 vmlinuz-3.19.0-30-generic
-rw------- 1 root root  6572336 Oct  8 13:01 vmlinuz-3.19.0-31-generic
-rw------- 1 root root  6572944 Oct 22 13:14 vmlinuz-3.19.0-32-generic
-rw------- 1 root root  6572432 Nov  6 20:39 vmlinuz-3.19.0-33-generic
-rw------- 1 root root  6571920 Nov 23 16:57 vmlinuz-3.19.0-37-generic

notlinus @ NS0:/ boot $ uname -r

3.19.0-37-generic

notlinus @ NS0:〜$ Sudo apt-get clean

notlinus @ NS0:/ boot $ Sudo apt-get autoremove

Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run ‘apt-get -f install’ to correct these.
The following packages have unmet dependencies.
 linux-image-extra-3.19.0-49-generic : Depends: linux-image-3.19.0-49-generic but it is not installed
 linux-image-generic-lts-vivid : Depends: linux-image-3.19.0-49-generic but it is not installed
                                 Recommends: thermald but it is not installed
E: Unmet dependencies. Try using -f.

notlinus @ NS0:/ boot $ Sudo dpkg --list 'linux-image*'

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                Version                Architecture           Description
+++-===================================-======================-======================-===========================================================================
un  linux-image                         <none>                 <none>                 (no description available)
un  linux-image-3.0                     <none>                 <none>                 (no description available)
rc  linux-image-3.19.0-25-generic       3.19.0-25.26~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-3.19.0-26-generic       3.19.0-26.28~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-3.19.0-28-generic       3.19.0-28.30~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-3.19.0-30-generic       3.19.0-30.34~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-3.19.0-31-generic       3.19.0-31.36~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-3.19.0-32-generic       3.19.0-32.37~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-3.19.0-33-generic       3.19.0-33.38~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-3.19.0-37-generic       3.19.0-37.42~14.04.1   AMD64                  Linux kernel image for version 3.19.0 on 64 bit x86 SMP
in  linux-image-3.19.0-39-generic       <none>                 AMD64                  (no description available)
in  linux-image-3.19.0-42-generic       <none>                 AMD64                  (no description available)
in  linux-image-3.19.0-49-generic       <none>                 AMD64                  (no description available)
rc  linux-image-extra-3.19.0-25-generic 3.19.0-25.26~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-extra-3.19.0-26-generic 3.19.0-26.28~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-extra-3.19.0-28-generic 3.19.0-28.30~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-extra-3.19.0-30-generic 3.19.0-30.34~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-extra-3.19.0-31-generic 3.19.0-31.36~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-extra-3.19.0-32-generic 3.19.0-32.37~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
ii  linux-image-extra-3.19.0-33-generic 3.19.0-33.38~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
iF  linux-image-extra-3.19.0-37-generic 3.19.0-37.42~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
iU  linux-image-extra-3.19.0-49-generic 3.19.0-49.55~14.04.1   AMD64                  Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
iU  linux-image-generic-lts-vivid       3.19.0.49.34           AMD64                  Generic Linux kernel image

notlinus @ NS0:/ boot $ Sudo apt-get remove linux-image-3.19.0-26-generic

Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies.
 linux-image-extra-3.19.0-26-generic : Depends: linux-image-3.19.0-26-generic but it is not going to be installed
 linux-image-extra-3.19.0-49-generic : Depends: linux-image-3.19.0-49-generic but it is not going to be installed
 linux-image-generic-lts-vivid : Depends: linux-image-3.19.0-49-generic but it is not going to be installed
                                 Recommends: thermald but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

確かにこれは重複した質問でなければなりませんが、同様の質問に対する解決策を検索した後、私の苦境は回避されませんでした。

最後に、私はRHELの管理者ですので、私の無知を許してください。姉妹会社の無料のcoloスペースの条件として、BINDサーバーはUbuntu上になければなりません。この問題の原因となった間違ったことは何ですか?また、今後この問題が発生しないようにするにはどうすればよいですか?

このサイトで などの同様のソリューションを試してみると、/ bootの空き容量を増やすにはどうすればよいですか?

notlinus@NS0:/boot$ Sudo dpkg -fl linux-{image,headers}-"[0-9]*" | awk '/^ii/{ print $2}' | grep -v -e `uname -r | cut -f1,2 -d"-"` | grep -e '[0-9]' | xargs Sudo apt-get -y purge
You might want to run ‘apt-get -f install’ to correct these.
The following packages have unmet dependencies.
 linux-image-extra-3.19.0-26-generic : Depends: linux-image-3.19.0-26-generic but it is not installed
 linux-image-extra-3.19.0-28-generic : Depends: linux-image-3.19.0-28-generic but it is not installed
 linux-image-extra-3.19.0-30-generic : Depends: linux-image-3.19.0-30-generic but it is not installed
 linux-image-extra-3.19.0-31-generic : Depends: linux-image-3.19.0-31-generic but it is not installed
 linux-image-extra-3.19.0-32-generic : Depends: linux-image-3.19.0-32-generic but it is not installed
 linux-image-extra-3.19.0-33-generic : Depends: linux-image-3.19.0-33-generic but it is not installed
 linux-image-extra-3.19.0-49-generic : Depends: linux-image-3.19.0-49-generic but it is not installed
 linux-image-generic-lts-vivid : Depends: linux-image-3.19.0-49-generic but it is not installed
                                 Recommends: thermald but it is not installed
E: Unmet dependencies. Try using -f.
2
AirCombat

ありがとう@mikewhatever、

Sudo dpkg --force-all -P pkgnameが答えでした

だから:Sudo dpkg --force-all -P linux-image-extra-3.19.0-26-genericは私のためにそれをした

3
AirCombat

問題は、/ bootパーティションのスペースが足りなくなったためです。

Sudo truncate -s 0 /boot/initrd.img-oldest-versionを介して簡単に空き領域を作成します

注:上位2つのinitrdバージョンを切り捨てないでください!

この後Sudo apt autoremove -fは成功しますが、すべてのイメージのinitrdを再構築し、毎回grubtwiceを再インストールするため、完了するまでほぼ永遠にかかります1つの古いカーネルイメージを削除します。 20個の古いカーネルイメージを使用すると、initrdがほぼ400回再構築されます。

Initrd生成ツールを無効にすることで、そのとんでもない再構築を回避できます。

Sudo mv /etc/kernel/postinst.d/initramfs-tools /etc/kernel/postinst.d/initramfs-tools.real
Sudo ln -s /bin/true /etc/kernel/postinst.d/initramfs-tools

次にSudo apt autoremove -fを発行し、完了したら...

Sudo rm /etc/kernel/postinst.d/initramfs-tools
Sudo mv /etc/kernel/postinst.d/initramfs-tools.real /etc/kernel/postinst.d/initramfs-tools
Sudo /etc/kernel/postinst.d/initramfs-tools $( uname -r )

注:実行中のカーネルが/ bootにない場合は、uname -rの代わりにカーネルバージョンを手動で指定する必要があります。

完了したら、現在のカーネルなどの特定のカーネルを手動でインストールし、apt-autoremoveを有効にすることを検討してください。これにより、起動する選択されたイメージに加えて、最新のものが常にあることが保証されます。

0
Wil

問題がスペース不足のためである場合は、解決策があるかもしれません。よく見ると、次のことがわかります。

 Filesystem                Size  Used Avail Use% Mounted on
 /dev/sda1                 236M  234M     0 100% /boot

パーティションのサイズは236Mですが、使用中は234Mです。システムは、このような緊急事態のために2 MBを予約しています。次のコマンドを発行して、使用できるようにします。

 Sudo tune2fs -m 0 /dev/sda1

あなたはあなたの状況からあなたを助けるかもしれない2Mの空きスペースがあります。

別の方法としては、そのパーティションをブートとして完全に放棄し、fstabを変更して(/ bootを削除)、ルートパーティションに/ bootを作成します。

(現在の)古いブートから新しいブートにすべてをコピーしてから、コマンドを完了します。

0
Domo N Car