Linux
如何在 CentOS 中為所有現有和未來的核心設置預設核心參數?
我想刪除在 CentOS 6 中啟動核心時預設使用的
rhgb
和quiet
核心參數,但我希望這適用於所有目前安裝的核心以及將來安裝的任何核心。我需要從腳本中執行此操作,因此手動編輯文件不是一種選擇,任何文件更改都應盡可能乾淨地完成。在 Debian/Ubuntu
GRUB_CMDLINE_LINUX_DEFAULT
中,我會更改/etc/default/grub
並執行update-grub
. 但是我找不到這樣的設置,/etc/sysconfig/grub
也/etc/sysconfig/kernel
沒有update-grub
腳本。
在 Debian/Ubuntu 中,
grub.cfg
完全由腳本生成,對其進行的任何手動更改都將被破壞。然而,在 RHEL/CentOS 中,grub.cfg
由腳本修改,但手動更改被保留,並且實際上是某些設置的規範位置。管理的工具
grub.cfg
是,在安裝或刪除核心時grubby
呼叫。/sbin/new-kernel-pkg
該--copy-default
參數在安裝新核心時傳遞給grubby
它,這會導致它從目前預設核心中複製核心參數。因此,為將來安裝的核心設置預設核心參數是通過在grub.cfg
.如果您不自動執行此操作,您可以簡單地
grub.cfg
手動編輯並更改所有目前核心條目。但是,您可以使用grubby
來修改grub.cfg
以避免對其進行解析或編寫正則表達式。例如,這將從指定的核心版本中刪除rhgb
和參數。quiet
# grubby --update-kernel=/boot/vmlinuz-2.6.32-220.13.1.el6.x86_64 --remove-args="rhgb quiet"
但是,似乎沒有列出目前配置的核心的選項,因此您必須以另一種方式發現這些。一種選擇是僅
vmlinuz
在以下位置查找文件/boot/
:#!/bin/sh for KERNEL in /boot/vmlinuz-*; do grubby --update-kernel="$KERNEL" --remove-args="rhgb quiet" done