I checked online and your laptop has the following graphics chip:
NVIDIA GeForce 940MX. This is important, since the issue is due to graphics drivers during bootup.
To resolve this issue, you need edit /etc/default/grub
, and add modprobe.blacklist=nouveau
at the end of the GRUB_CMDLINE_LINUX_DEFAULT
variable.
1a. Access your Ubuntu root (/
) directory (from Recovery Mode)
To do this, boot into Recovery Mode. This is the preferred approach.
Open a terminal to enter enter commands as shown.
cd /
1b. Access your Ubuntu root (/
) directory (from Live CD)
If you can't get into recovery mode, you can also boot up using a "Live CD" (i.e. the media you used to install Ubuntu) and mount the root partition where you installed Ubuntu. If you use this approach, click the "Try Ubuntu" button, launch the Disks application, click on your hard disk, click on the partition where you installed Ubuntu, and then mount that partition. The instructions below refer to this location as <mount location>
.
Open a terminal to enter enter commands as shown.
cd <mount location>
2. Edit grub
cat etc/default/grub
sudo sed -i "s|splash|splash modprobe.blacklist=nouveau|g" etc/default/grub
cat etc/default/grub
3a. Update Grub (from Recovery Mode)
If you were able to boot into Recovery Mode, update grub...
sudo update-grub
3b. Update Grub (from Live CD)
If you booted using the Live CD, updating Grub is a little more complex. See How do I run update-grub from a LiveCD?. Here is a summary of those instructions...
sudo mount --bind /dev <mount location>/dev
sudo mount --bind /sys <mount location>/sys
sudo mount --bind /proc <mount location>/proc
Check mnt/etc/fstab
to see if have a separate Ubuntu boot partition.
cat mnt/etc/fstab
If you see an entry for /boot
in mnt/etc/fstab, execute the following. (If you did a standard install, you probably will not need this).
sudo mount /dev/sdaX <mount location>/boot
...where /dev/sdaX
is the device /boot
points to in mnt/etc/fstab
.
Then, update grub.
sudo chroot <mount location>
sudo update-grub
exit
4. Reboot
Finally, reboot.
For reference the relevant section of your modified /etc/default/grub
file should look something like this.
GRUB_DEFAULT=0
GRUB_TIMEOUT=1
GRUB_TIMEOUT_STYLE='hidden'
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash modprobe.blacklist=nouveau"
GRUB_CMDLINE_LINUX=""