18

Is there any way to force grub menu to show it's content in external monitor (for selecting the os to boot on win or ubuntu), I use my laptop more like a desktop with a monitor connected to it because of broken laptop fan socket. Either HDMI or VGA would work.

biozalp
  • 635
  • 1
  • 4
  • 16
  • 1
    Can you set the bios of the laptop to display on an external monitor ? That should do it for grub too. This is the only real solution I found on Google, but not all laptops have this option. – Mark Kirby Dec 21 '15 at 20:57
  • Mine doesn't have that :( #hatelaptop – biozalp Dec 21 '15 at 20:58
  • OK Might of got lucky with this, I assume, because of overheating you would be fine with not having the laptop display on when the desktop boots, right ? – Mark Kirby Dec 21 '15 at 21:20

2 Answers2

4

Here is a bad way to do this, for most, that may just be good for you.

On desktop, open this file as root

gksu gedit  /etc/default/grub

and find this line

GRUB_CMDLINE_LINUX_DEFAULT=...

and add a this to the end

video=LVDS-1:d

my whole line is

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

so I would add it here

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=LVDS-1:d"

Change lvds-1 for you monitors name, if it is different, find it with

xrandr -q

Save and exit, and run the command

sudo update-grub

This will disable the Laptop display for both grub and the desktop and force it to the external display, even if you remove the HDMI cable, the laptop screen will not work. You can remove the change to change it back to using the laptop screen.

I can't test this as I don't have a laptop, but I took it from an question at arch, where the issue was no laptop display after forcing grub to an external monitor.

I don't recommend this for most users who want there laptop to still be portable.

Zanna
  • 70,465
Mark Kirby
  • 18,529
  • 19
  • 78
  • 114
  • will give it a try and come back asap. – biozalp Dec 22 '15 at 20:23
  • 2
    I tried this but it did not work: the menu is not displayed on the external monitor. The external monitor is only activated after Linux has booted. – Giorgio Sep 28 '16 at 19:54
  • @Mark could you precise what is the d in LVDS-1:d? By the way, if you have time, I asked a related question in https://askubuntu.com/questions/1286892/start-grub-on-external-monitor-as-laptop-monitor-unresponsive-broken Thanks!! – Matifou Oct 25 '20 at 21:28
  • @Matifou I am not 100% sure because this was a while ago and I can't find any documentation right now but I think d is for "disable" and using e would be "enable", so LVDS-1:d would disable the laptop display. – Mark Kirby Oct 28 '20 at 20:07
  • 1
    I just dealt with the same problem and the answer by @Mark Kirby helped a lot! For me it was essential to replace LVDS-1 with the name of the built-in laptop screen provided by xrandr -q. I would additionally advise to run sudo update-grub after you made the changes and before you reboot. – Felix S. Oct 17 '20 at 16:37
  • i tried with changing my monitor name as well. it just does not work. my main monitor is eDP:1. – FranXho Aug 22 '21 at 13:05
  • this answer is WRONG, don't even try it. GRUB_CMDLINE_LINUX and GRUB_CMDLINE_LINUX_DEFAULT are used to build a command line for the linux kernel and can only take effect AFTER A KERNEL IS SELECTED FOR BOOT. it wont have any effect before a selection is made, and thus won't have any effect on where the menu is displayed. – Lanchon Mar 12 '23 at 19:26
  • 1
    :d is disable, :e is enable, and :D is enable in digital mode. – Lanchon Mar 12 '23 at 19:27
  • @Matifou https://www.kernel.org/doc/html/latest/fb/modedb.html – Antoine Viallon Aug 26 '23 at 19:05
2

At the risk of sounding overly simplistic, I learned, through a bit of experimentation, that hardware engineers are aware of the issue and have responded. On my old but trusty Toshiba Satellite S55 laptop (from 2013), the monitor at boot can be selected or left up to auto-select. In auto-select mode (the default), the computer will activate an external monitor if the lid is closed on the laptop. I just tried it and it works! Definitely worth a try, but check your hardware boot settings, YMMV.