저는 리눅스와 bash를 처음 사용하기 때문에 잘못된 것을 알지 못합니다. 나는 보여주지 않는 땅벌레를 세우고, 3 초 동안 교대조를 한 후에 보여줍니다. 이것은 잘 동작했다. 그런 다음 여기를 읽으면서 'shift'가 'F11'인 30_os-prober (아래에서 볼 수 있듯이)를 변경했습니다 : http://www.gnu.org/software/grub/manual/grub.html (13.3.33). 이제 F11 키를 눌러도 아무 일도 일어나지 않습니다. Shift 키를 누르면 'GRUB로드 중입니다.'라는 메시지가 표시되고 기본 OS (Ubuntu)가 GRUB 메뉴를 표시하지 않고로드됩니다.Grub 2, 시프트 버튼 변경
이 내을/etc/기본/애벌레 내용의 일부입니다
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
GRUB_DEFAULT="Custom Menu"
GRUB_HIDDEN_TIMEOUT=1
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="splash"
GRUB_CMDLINE_LINUX=" splash vga=799 quiet"
이것은 /etc/grub.d/30_os-prober에서 (IMHO) 중요한 부분입니다 :
adjust_timeout() {
#if [ "x${found_other_os}" = "x" ] ; then
if [ "x${GRUB_HIDDEN_TIMEOUT}" != "x" ] ; then
if [ "x${GRUB_HIDDEN_TIMEOUT_QUIET}" = "xtrue" ] ; then
verbose=
else
verbose=" --verbose"
fi
if [ "x${GRUB_HIDDEN_TIMEOUT}" = "x0" ] ; then
cat <<EOF
if [ \${timeout} != -1 ]; then
if keystatus; then
if keystatus --F11; then << There I changed shift to F11
set timeout=-1
else
set timeout=0
fi
else
if sleep$verbose --interruptible 3 ; then
set timeout=0
fi
fi
fi
EOF
else
cat << EOF
if [ \${timeout} != -1 ]; then
if sleep$verbose --interruptible ${GRUB_HIDDEN_TIMEOUT} ; then
set timeout=0
fi
fi
EOF
fi
fi
#fi
}
감사합니다.