CentOS 6에서 커널을 부팅 할 때 기본적으로 사용되는 rhgb
및 quiet
커널 매개 변수 를 제거하고 싶지만 현재 설치된 모든 커널과 향후 설치된 커널에 적용하고 싶습니다. 스크립트에서이 작업을 수행해야하므로 수동으로 파일을 편집하는 것은 옵션이 아니며 파일을 최대한 깨끗하게 변경해야합니다.
데비안에서 / 우분투 내가 바꿀 것 GRUB_CMDLINE_LINUX_DEFAULT
으로 /etc/default/grub
실행 다음과 update-grub
. 나는에서 이러한 설정을 찾을 수 없습니다 /etc/sysconfig/grub
또는 /etc/sysconfig/kernel
그러나 아니고이 update-grub
스크립트는.
답변
데비안 / 우분투에서는 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
답변
CentOS를위한 솔루션을 찾았습니다! m은 그루비 자체를 사용합니다! grubby는 “–copy-default”옵션을 가지고 있으며 yum이 더럽게 동작한다고 생각합니다. 따라서 grub.conf에 현재 기본 커널에 필요한 모든 커널 옵션을 추가하고 재부팅하는 것만하면됩니다. 재부팅 후 새로운 커널을 설치할 수 있습니다!