Ubuntu 16.10 fails to boot in MSI GP72 Laptop
Solution 1:
I was able to fix the problem shortly after posting the question, though I wanted to be sure before trying to post my answer. Note that no additional modifications to BIOS/UEFI settings were needed -aside from what I had already specified in the OP.
My Steps to Fix
The process was basically as follows:
- Add kernel arguments:
nomodeset acpi_osi=
to allow boot to proceed- Using
acpi_osi="Linux"
didn't work at first; it had to be empty as shown above¹ - You can edit the boot commands by pressing e in the GRUB menu
- Using
- This allows a successful boot of 16.10 from the live USB.
- In my case, I went for a re-install²
- After re-installing, I changed the kernel arguments back to
pci=nomsi acpi_osi="Linux"
I'm not sure why nomodeset
³ is necessary to get the system to boot at first, but not really necessary after the fact, which is probably why I forgot that I had probably done this back in July when I troubleshooted my original 16.04 LTS install. In any case, I hope this helps anyone else that might come across similar issues.
Making Changes Permanent
Currently, you have to edit the boot command every time, and that gets old fast. To update the boot command permanently, follow these steps:
- Open
/etc/default/grub
for editing, asroot
-
sudo vim /etc/default/grub
from the terminal - Change
vim
for your favorite editor (e.g.nano
)
-
- Edit this line as follows and save the changes
-
Default:
GRUB_CMDLINE_LINUX=""
-
Edited:
GRUB_CMDLINE_LINUX="pci=nomsi acpi_osi=\"Linux\""
-
Default:
- Run the
sudo update-grub2
command to generate an updated/boot/grub/grub.cfg
file- Remember to not edit
/boot/grub/grub.cfg
directly
- Remember to not edit
If you're wondering about the pci=nomsi
argument, this prevents the kernel from filling up your drive (i.e. /var/log/syslog
) with lots of bogus messages. This seems specific to the MSI laptop, as my desktop and a former HP laptop didn't need this workaround.
Footnotes
- If you don't change
acpi_osi=
back toacpi_osi="Linux"
, and you've installed thenvidia
drivers package, login attempts will fail and you will see the greeter re-displayed. You can identify this because your password is correct (i.e. no error message about password mismatch) and, if you Ctrl + Alt + F1 into a terminal, you can log in successfully from there. - If you have your
/home
directory in its own partition (as you should, IMHO), then you just make sure to mark the partition for use with the same file system (e.g. ext4) and mount point (i.e./home
), but without formatting it. I also re-entered the same account credentials during installation. Note that old accounts will still be in your/home
directory, but may not show up if you use Settings >> Users, since that reads from/etc/passwd
. You may need tosudo adduser ...
to get them to show up correctly. - See What does
nomodeset
do?
Solution 2:
I have same laptop, GP72-6qf .. have Ubuntu running on it now.
- Make sure you have the latest Bios and firmware updates. there was a new release in October.
- Set CPU C states: Disabled & Fast Boot: Disabled
-
Edit the file
/etc/default/grub
and changeGRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
to
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi= acpi_backlight=none acpi=ht pci=nomsi"
Then run
sudo update-grub
Update Ubuntu (
sudo apt update && sudo apt upgrade
).