クラッシュダンプを取得する必要がない + kexec-toolsのパッケージを導入していない(kdumpの機能を有効にしていない)にもかかわらず、クラッシュダンプ用にメモリの割り当て(消費)だけはされてしまうという状況を回避しようというのが今回の内容です。
※評価は、CentOS6.6(x86_64)でメモリ2GBを搭載したマシンで行っています
grub.confのkernel行にある”crashkernel=auto”の記述を削除する方法
(注意)CentOS(RHEL)6系では、新しいkernelをインストールすると、必ず”crashkernel=auto”が付与されるようになっているので、新しいkernelをインストールした場合はその都度、削除をする必要があります
⇒ rpm -q --scripts kernel-<version> とするとその付与する処理が確認できます
/etc/init/kexec-disable.confを修正する方法
ファイルの中で”crashkernel=auto"をgrepしているのですが、/proc/cmdlineには実際に割り当てられたメモリの容量が入ってくるので、修正をしないと機能しません。具体的には以下のように修正するか、その行自体を削除してしまっても良いと思います。
# diff -u /etc/init/kexec-disable.conf.orig /etc/init/kexec-disable.conf
--- /etc/init/kexec-disable.conf.orig 2015-01-02 23:02:11.067185577 +0900
+++ /etc/init/kexec-disable.conf 2015-01-02 23:06:03.607481618 +0900
@@ -8,7 +8,7 @@
script
if [ ! -x /sbin/kexec ] || ! chkconfig kdump 2>/dev/null ; then
- grep -q "crashkernel=auto" /proc/cmdline && \
+ grep -q "crashkernel" /proc/cmdline && \
echo -n "0" > /sys/kernel/kexec_crash_size 2>/dev/null
fi
exit 0
#
これで以下の条件にマッチすると、メモリの割り当てが無効になります。
・kexec-toolsパッケージがインストールされていない
・kexec-toolsパッケージがインストールされているが、自動起動がonになっていない
0 件のコメント:
コメントを投稿