RHEL6 / bootのスペースを安全に解放する方法は?


17

yum updateRHEL 6ボックスで実行しようとしていますが、このエラーメッセージが表示されます

Transaction Check Error:
  installing package kernel-2.6.32-279.9.1.el6.x86_64 needs 10MB on the /boot filesystem
  installing package grub-1:0.97-77.el6.x86_64 needs 10MB on the /boot filesystem

Error Summary
-------------
Disk Requirements:
  At least 10MB more space needed on the /boot filesystem.

私の/ bootには次のものがあります

# ls -lah /boot
total 74M
dr-xr-xr-x.  5 root root 2.0K Jun 10 08:05 .
drwxr-xr-x. 23 root root 4.0K Aug 27 03:08 ..
-rw-r--r--   1 root root  99K Apr 26 12:53 config-2.6.32-220.17.1.el6.x86_64
-rw-r--r--   1 root root  99K Feb 10  2012 config-2.6.32-220.7.1.el6.x86_64
-rw-r--r--.  1 root root  99K Nov  9  2011 config-2.6.32-220.el6.x86_64
drwxr-xr-x.  3 root root 1.0K Mar 29  2012 efi
drwxr-xr-x.  2 root root 1.0K Jun 10 07:53 grub
-rw-r--r--   1 root root  15M Jun 10 07:53 initramfs-2.6.32-220.17.1.el6.x86_64.img
-rw-r--r--   1 root root  15M Mar 29  2012 initramfs-2.6.32-220.7.1.el6.x86_64.img
-rw-r--r--.  1 root root  15M Mar 29  2012 initramfs-2.6.32-220.el6.x86_64.img
-rw-------   1 root root 3.4M Jun 10 08:06 initrd-2.6.32-220.17.1.el6.x86_64kdump.img
-rw-------   1 root root 3.5M Jun 10 07:53 initrd-2.6.32-220.7.1.el6.x86_64kdump.img
-rw-------   1 root root 3.4M Mar 29  2012 initrd-2.6.32-220.el6.x86_64kdump.img
drwx------.  2 root root  12K Mar 29  2012 lost+found
-rw-r--r--   1 root root 168K Apr 26 12:55 symvers-2.6.32-220.17.1.el6.x86_64.gz
-rw-r--r--   1 root root 168K Feb 10  2012 symvers-2.6.32-220.7.1.el6.x86_64.gz
-rw-r--r--.  1 root root 168K Nov  9  2011 symvers-2.6.32-220.el6.x86_64.gz
-rw-r--r--   1 root root 2.3M Apr 26 12:53 System.map-2.6.32-220.17.1.el6.x86_64
-rw-r--r--   1 root root 2.3M Feb 10  2012 System.map-2.6.32-220.7.1.el6.x86_64
-rw-r--r--.  1 root root 2.3M Nov  9  2011 System.map-2.6.32-220.el6.x86_64
-rwxr-xr-x   1 root root 3.8M Apr 26 12:53 vmlinuz-2.6.32-220.17.1.el6.x86_64
-rw-r--r--   1 root root  171 Apr 26 12:53 .vmlinuz-2.6.32-220.17.1.el6.x86_64.hmac
-rwxr-xr-x   1 root root 3.8M Feb 10  2012 vmlinuz-2.6.32-220.7.1.el6.x86_64
-rw-r--r--   1 root root  170 Feb 10  2012 .vmlinuz-2.6.32-220.7.1.el6.x86_64.hmac
-rwxr-xr-x.  1 root root 3.8M Nov  9  2011 vmlinuz-2.6.32-220.el6.x86_64
-rw-r--r--.  1 root root  166 Nov  9  2011 .vmlinuz-2.6.32-220.el6.x86_64.hmac

これが起動時のディスク使用量です

# du -h
13K ./lost+found
282K    ./grub
247K    ./efi/EFI/redhat
249K    ./efi/EFI
251K    ./efi
75M .

問題は、ISPでこれほど厳しくなったときに、RHEL 6のデフォルトイメージを使用したため、/ bootに100MBしか割り当てられないため、これでは十分ではないことです。この問題を回避するにはどうすればよいですか?ディスク上にあると思われる上記のファイルを複数回削除しても安全ですか?マシンを再イメージングせずに/ bootを展開する方法はありますか?

回答:


16

次のコマンドは、現在実行しているバージョンを除くすべてのカーネルバージョンを削除します。

sudo yum remove `rpm -q kernel | grep -v 'uname -r'`

⁠7.4に従って、今後のためにYumおよびYumリポジトリーの構成

⁠installonly_limit= value

…ここで、valueは、installonlypkgsディレクティブにリストされている単一のパッケージに対して同時にインストールできるバージョンの最大数を表す整数です。installonlypkgsディレクティブのデフォルトにはいくつかの異なるカーネルパッケージが含まれているため、installonly_limitの値を変更すると、単一のカーネルパッケージのインストール済みバージョンの最大数にも影響することに注意してください。/etc/yum.confにリストされているデフォルト値はinstallonly_limit = 3であり、この値、特に2未満を減らすことは推奨されません。


4
たぶん、バックアップを
とる

1
また、これを行うことができます:rpm -qa | grep -v `uname -r` | grep kernel- 使用されていないカーネルのリストを取得するには?
プレド

リストされている@Predよりも良い解決策は、package-cleanupを使用することです。方法については、この回答を参照してください: serverfault.com/a/562201/98791
コーダー

このコマンドは、現在のカーネルも削除しませんか(uname -rが `の代わりに 'で囲まれているため)?
さようなら

29

ここでMadHatterの推奨に従って。ここで提案された回答と併せて使用できるように、ここに回答の補遺として回答を掲載します。

次のWebサイトから取得

## Install yum utils ##
yum install yum-utils

## Package-cleanup set count as how many old kernels you want left ##
package-cleanup --oldkernels --count=2

これにより、古いカーネルがすべて削除され、centos 6.4の最新の2つのカーネルのみが保持されます。これは、おそらく最近のカーネルにバグ修正が含まれているため、新しいカーネルが起動に失敗した場合に常に古いカーネルにフェールオーバーできるためです。上記のコマンドは、rpm -e xyzに移動する必要がないことを意味します。xyzは最新のカーネルを自動的に保持するため、特定のカーネルです。

上記のコマンドは既存のパッケージのみをクリーンアップするため、カーネルパッケージの蓄積を再度開始したくない場合は、yum.confを編集する必要があることに注意してください。


同意し、最良の解決策であり、package-cleanup削除する前に削除するものについてプロンプトが表示されます
-sMyles

8

alexusが言ったように、少なくとも1つの古いカーネルを削除します。

次に:

/etc/yum.conf保持するカーネルバージョンの数の制限を編集および指定します。デフォルトでは5に設定されていますが、システムは2つしか処理できないようです。

installonly_limit=2

最後に、奇妙なテンプレートについてVPSプロバイダーに文句を言います。/bootCentOS 6インストールでは、デフォルトで500MBです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.