How do I set 'nomodeset' after I've already installed Ubuntu?
I know that editing the boot options line and adding 'nomodeset' solves the problem of my laptop during LiveCD mode, what I don't know is how to set it at boot up through Grub2 after I've installed Ubuntu.
So, my question is; how do I set nomodeset before I boot into Ubuntu?
To edit Grub2 during the boot process try the following:
Immediately after the BIOS splash screen during boot, press and hold the SHIFT button. This will display you grub containing a list of kernels and recovery options
Press e to edit the first kernel displayed
- Find the line ending with
quiet splash
. Add your boot option before these key words - i.e. so the line looks like [...]nomodeset quiet splash
- Press CTRL + X to boot
Follow the steps in Coldfish's answer on how to fix the nomodeset boot option permanently so that you don't have to go through this manual procedure again.
I'm afraid I don't have a quiet splash option in that area. I don't recognize any of the lines, actually.
Dante - added some pictures to help hopefully
fossfreedom. Thank you so much! I've had this problem since 10.04! My god, I would hug you if I could! :D
Where does the ro go?
@Hellreaver - if you have "ro" in your grub entry - leave it - if you do not have it - do not add it. The picture just shows where to add "nomodeset" (just before "quiet splash")
What if there's no `quiet splash`? Should that be added too?
@fossfreedom helps if you host images that do not get removed
For those without `quiet splash` - add it to the end of the line that starts with `linux`
You should add this option to
/etc/default/grub
, firstly:sudo nano /etc/default/grub
and then add
nomodeset
toGRUB_CMDLINE_LINUX_DEFAULT
: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 nomodeset" GRUB_CMDLINE_LINUX=""
And then save by hitting Ctrl+O, then exit nano with Ctrl+X, then simply run:
sudo update-grub
bash: update-grub: command not found...
@stiv This is for Debian/Ubuntu based systems I believe. On other systems you may edit your GRUB configuration directly, which is usually located in `/boot/grub/` if I remember correctly.
I had the same problem. The above solutions are all correct, but it's a bit more tricky when you have to fix this when running from a Live CD. I found this blog post very helpful.
The author basically proposes to mount the installed Linux from within the LiveCD. I did that, and it helped me a lot. So here are the steps:
- Run from the Live CD, and either install Ubuntu or move on if already done
- Check your installed partition with the command "gparted". It opens a Window telling you where you installed Ubuntu. In my case it was /dev/sda2 which contained an ext4 partition.
- Mount the partition:
sudo mount /dev/sdXY /mnt
Then mount/bind the directories Grub needs to access:
sudo mount --bind /dev /mnt/dev && sudo mount --bind /dev/pts /mnt/dev/pts && sudo mount --bind /proc /mnt/proc && sudo mount --bind /sys /mnt/sys
Then move on to this environment using chroot, which I found a supersmart idea:
sudo chroot /mnt
- You should now be able to edit
/etc/default/grub
, as the others pointed out. Like:sudo vi /etc/default/grub
and change the lineGRUB_CMDLINE_LINUX_DEFAULT="nomodeset"
I found it very useful to also remove quiet and splash so I could see something moving on behind the scenes. - The author originally noted, he needs that after an installation of Windows, which broke Grub. He had to reinstall. In my case Grub was intact, but my computer (mac) didn't boot with the original Grub settings. So the only thing left for me was
update-grub
The author unmounted, but I just rebooted and the new settings where in place. With the "nomodeset" option I was able to boot Ubuntu and Lubuntu from a MacBook Pro harddisk.
License under CC-BY-SA with attribution
Content dated before 6/26/2020 9:53 AM
Dante Ashton 9 years ago
I'm afraid I don't have a quiet splash option in that area. I don't recognize any of the lines, actually.