How to solve the stuck after installing Linux mint 19 on Dell XPS 9560
- update file /boot/grub/grub.cfg
- update file /etc/default/grub
2018年6月29日 Linux mint 19发布了,当我在Dell XPS 15 9560上用USB启动盘以EFI模式安装时,安装完成以后,选择重启按钮后,系统长时间卡死,这时在电脑关机键,关机后重新开机,开机后屏幕引导后,长时间卡死。
针对这一问题,也曾向Linux mint 官方提交,一直沒有得到回复。后经多方查找,终于解决了这一问题,解决方案如下:
update file /boot/grub/grub.cfg
用Linux mint USB启动盘启动系统,找到Linux mint 19 磁盘,并编辑引导分区中文件/boot/grub/grub.cfg。
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; thenset have_grubenv=trueload_env
fi
if [ "${next_entry}" ] ; thenset default="${next_entry}"set next_entry=save_env next_entryset boot_once=true
elseset default="0"
fiif [ x"${feature_menuentry_id}" = xy ]; thenmenuentry_id_option="--id"
elsemenuentry_id_option=""
fiexport menuentry_id_optionif [ "${prev_saved_entry}" ]; thenset saved_entry="${prev_saved_entry}"save_env saved_entryset prev_saved_entry=save_env prev_saved_entryset boot_once=true
fifunction savedefault {
if [ -z "${boot_once}" ]; thensaved_entry="${chosen}"save_env saved_entryfi
}
function recordfail {
set recordfail=1# GRUB lacks write support for lvm, so recordfail support is disabled.
}
function load_video {
if [ x$feature_all_video_module = xy ]; theninsmod all_videoelseinsmod efi_gopinsmod efi_ugainsmod ieee1275_fbinsmod vbeinsmod vgainsmod video_bochsinsmod video_cirrusfi
}if [ x$feature_default_font_path = xy ] ; thenfont=unicode
else
insmod part_gpt
insmod lvm
insmod ext2
set root='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf'
if [ x$feature_platform_search_hint = xy ]; thensearch --no-floppy --fs-uuid --set=root --hint='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf' b46fdb31-4c90-4662-85ac-5650129f3303
elsesearch --no-floppy --fs-uuid --set=root b46fdb31-4c90-4662-85ac-5650129f3303
fifont="/usr/share/grub/unicode.pf2"
fiif loadfont $font ; thenset gfxmode=autoload_videoinsmod gfxtermset locale_dir=$prefix/localeset lang=en_USinsmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; thenset timeout=30
elseif [ x$feature_timeout_style = xy ] ; thenset timeout_style=hiddenset timeout=0# Fallback hidden-timeout code in case the timeout_style feature is# unavailable.elif sleep --interruptible 0 ; thenset timeout=0fi
fi
### END /etc/grub.d/00_header ###### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"if [ "${1}" = "keep" ]; thenset vt_handoff=vt.handoff=1elseset vt_handoff=fi
}
if [ "${recordfail}" != 1 ]; thenif [ -e ${prefix}/gfxblacklist.txt ]; thenif hwmatch ${prefix}/gfxblacklist.txt 3; thenif [ ${match} = 0 ]; thenset linux_gfx_mode=keepelseset linux_gfx_mode=textfielseset linux_gfx_mode=textfielseset linux_gfx_mode=keepfi
elseset linux_gfx_mode=text
fi
export linux_gfx_mode
menuentry 'Linux Mint 19 Cinnamon' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b46fdb31-4c90-4662-85ac-5650129f3303' {
recordfailload_videogfxmode $linux_gfx_modeinsmod gzioif [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fiinsmod part_gptinsmod lvminsmod ext2set root='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf'if [ x$feature_platform_search_hint = xy ]; thensearch --no-floppy --fs-uuid --set=root --hint='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf' b46fdb31-4c90-4662-85ac-5650129f3303elsesearch --no-floppy --fs-uuid --set=root b46fdb31-4c90-4662-85ac-5650129f3303filinux /boot/vmlinuz-4.15.0-20-generic root=/dev/mapper/mint--vg-root ro quiet splash $vt_handoffinitrd /boot/initrd.img-4.15.0-20-generic
}
submenu 'Advanced options for Linux Mint 19 Cinnamon' $menuentry_id_option 'gnulinux-advanced-b46fdb31-4c90-4662-85ac-5650129f3303' {
menuentry 'Linux Mint 19 Cinnamon, with Linux 4.15.0-20-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-20-generic-advanced-b46fdb31-4c90-4662-85ac-5650129f3303' {
recordfailload_videogfxmode $linux_gfx_modeinsmod gzioif [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fiinsmod part_gptinsmod lvminsmod ext2set root='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf'if [ x$feature_platform_search_hint = xy ]; thensearch --no-floppy --fs-uuid --set=root --hint='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf' b46fdb31-4c90-4662-85ac-5650129f3303elsesearch --no-floppy --fs-uuid --set=root b46fdb31-4c90-4662-85ac-5650129f3303fiecho 'Loading Linux 4.15.0-20-generic ...'linux /boot/vmlinuz-4.15.0-20-generic root=/dev/mapper/mint--vg-root ro quiet splash $vt_handoffecho 'Loading initial ramdisk ...'initrd /boot/initrd.img-4.15.0-20-generic}menuentry 'Linux Mint 19 Cinnamon, with Linux 4.15.0-20-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-20-generic-recovery-b46fdb31-4c90-4662-85ac-5650129f3303' {
recordfailload_videoinsmod gzioif [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fiinsmod part_gptinsmod lvminsmod ext2set root='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf'if [ x$feature_platform_search_hint = xy ]; thensearch --no-floppy --fs-uuid --set=root --hint='lvmid/E4pJRU-z2m1-p7aY-w0C4-yzQ4-P7Sl-9TzNQd/7f2AfA-1qeo-x9c4-TqSY-A062-DEi0-savVcf' b46fdb31-4c90-4662-85ac-5650129f3303elsesearch --no-floppy --fs-uuid --set=root b46fdb31-4c90-4662-85ac-5650129f3303fiecho 'Loading Linux 4.15.0-20-generic ...'linux /boot/vmlinuz-4.15.0-20-generic root=/dev/mapper/mint--vg-root ro recovery nomodeset echo 'Loading initial ramdisk ...'initrd /boot/initrd.img-4.15.0-20-generic}
}### END /etc/grub.d/10_linux ###### BEGIN /etc/grub.d/20_linux_xen ###### END /etc/grub.d/20_linux_xen ###### BEGIN /etc/grub.d/20_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###### BEGIN /etc/grub.d/30_uefi-firmware ###
menuentry 'System setup' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; thensource ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; thensource $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
修改147行为
linux /boot/vmlinuz-4.15.0-20-generic root=/dev/mapper/mint--vg-root ro quiet splash acpi_rev_override=1 nouveau.modeset=0 $vt_handoff
update file /etc/default/grub
取出USB启动盘重启电脑,即可以进入Linux mint 19系统。此前的文件/boot/grub/grub.cfg是由文件 /etc/default/grub生成的,要了达到此前的效果,可以修改文件 /etc/default/grub。
修改第8行为
GRUB_TIMEOUT=5
修改第12行为
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_rev_override=1 nouveau.modeset=0"
lwk@qwfys:~$ cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_rev_override=1 nouveau.modeset=0"
GRUB_CMDLINE_LINUX=""# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
修改完成以执行update-grub
以便生成引导菜单。
lwk@qwfys:~$ sudo update-grub
[sudo] password for lwk:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.0-23-generic
Found initrd image: /boot/initrd.img-4.15.0-23-generic
Found linux image: /boot/vmlinuz-4.15.0-20-generic
Found initrd image: /boot/initrd.img-4.15.0-20-generic
Adding boot menu entry for EFI firmware configuration
done
lwk@qwfys:~$
参考文献:
- 如何修改GRUB
- GRUB2配置详解
- Ubuntu 18.04 Freezing on Shutdown in Intel mode