ProLiant Servers - Netservers
cancel
Showing results for 
Search instead for 
Did you mean: 

HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x480

dportabella
Frequent Visitor

HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x480

I have a HP ProLiant MicroServer Gen8 (HP 819185-421) with Ubuntu 16.04.1 and no monitor plugged in, and I use the remote console through HP iLO.

The problem is that I am stuck to a screen resolution of 640x480.
(however, if I boot with the Ubuntu 16.04.1 ISO image and "Try Ubuntu", then I have a 1280x768 resolution)

Following the example of this manual: http://h10032.www1.hp.com/ctg/Manual/c04041473
I try to use a xorg configuration to fake the driver into thinking there is a CRT attached. I create the file /usr/share/X11/xorg.conf.d/xorg.conf as follows:

Section "Monitor"
  Identifier "Monitor0"
  # Do not remove the HorizSync or VertRefresh.
  HorizSync 30.0 - 110.0
  VertRefresh 50.0 - 150.0
  Option "DPMS"
EndSection

Section "Device"
  Identifier "Device0"
  Driver "nvidia"
  VendorName "NVIDIA Corporation"
  BusID "PCI:19:0:0"
  Option "ConnectedMonitor" "CRT"
  Option "UseEDID" "false"
  Option "AllowSHMPixmaps" "1"
EndSection

Section "Screen"
  Identifier "Screen0"
  Device "Device0"
  Monitor "Monitor0"
  DefaultDepth 24
  SubSection "Display"
    ### Put the largest resolution you support at the front of this list, and that will also become the default.
    ### For maximum flexibility, use "1920x1440" and rely on Resolution Matching.
    Modes "1920x1440"
    Depth 24
  EndSubSection
EndSection

 

and I reboot. but nothing changes. I am still stuck at 640x480.


I also tried using this http://xpra.org/xorg.conf, but then Ubuntu does not boot anymore (it gets stuck with the Ubuntu logo screen before the login screen).

So, how can I get a larger screen resolution using HP iLO remote console (without monitor plugged in)?

14 REPLIES
qb1
Occasional Visitor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Hi  dportabella ,

I am having the exact same problem.

Did you happen to find a solution yet? 

Thanks!!

 

IvoStraka
Occasional Advisor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Hi @dportabella and @qb1,

I think I found a solution that could work for you. I would like to test it with your HP ProLiant Gen8, becuase I think your graphics card is Matrox MGA G200EH.

https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1316035/comments/59

Can we test it? If it works for you, I can submit a bug report asking Ubuntu to bring back the mgag200 module in their kernel.

Just reply or PM me please and I can explain the details.

dportabella
Frequent Visitor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Thanks @IvoStraka for your message.

I followed the launchpad link and its 2 askubuntu links, but it seems quite
complicated.
Can you please tell me the steps to try this solution?

Cheers,
David
IvoStraka
Occasional Advisor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

I will try to explain in more detail. First, make sure which graphics card you have:

sudo lspci -v | grep VGA

If you use HP ProLiant Gen8, you should probably get "Matrox Electronics Systems Ltd. MGA G200EH".
Also please check your kernel version so it is not too old:

uname -r

Mine was 4.4.0-53-generic, if you have one older than 4.4, try to update, and if it is 3.x, you will definitely need to update.

Now, the goal is to build a kernel module that serves as a driver for your card and enable it. The steps are: download the kernel source code, compile the module, install and enable it, and include it in the initramfs image file. I have to warn you, that it is possible that the module mgag200 will not work in a way that you will boot into a blank screen or something. However, we will only add one module, without modifying the kernel itself or tampering with the system, so fixing it is not hard (see at the end of this post), just a fair warning.

Switch to root priviliges by sudo -i
First, you will need some packages. For me, installing these worked:

apt-get install build-essential kernel-package libncurses5-dev fakeroot wget bzip2 libssl-dev

Now install header files for the exact kernel version that you have:

apt-get install linux-headers-$(uname -r)

Then install kernel sources for the version that you have:

apt-get install linux-source

Go to sources and unpack them:

cd /usr/src
tar xjf linux-source-*.tar.bz2

This command probably moves you in the extracted folder, but if not, go there:

cd linux-source-*

Copy the file with kernel symbols to the source folder:

cp ../linux-headers-$(uname -r)/Module.symvers .

Now you have the source code, but you need your configuration. Your current kernel should have it in the /boot folder. Copy it so that you have a .config file in your source directory:

cp /boot/config-$(uname -r) .config

Now you just need to enable the module MGAG200. You can do it in two ways. I recommend trying to run

make menuconfig

And then go Device Drivers --> Graphics support, go to Kernel Modesetting driver for MGA G200 server enginges and press "m" to enable it as a module.  Then just ESC your way out of the menu. If you have trouble finding this, just edit the file .config, find the line

# CONFIG_DRM_MGAG200 is not set

and change it to

CONFIG_DRM_MGAG200=m

Now some steps that will compile only our module:

make prepare
make modules_prepare
make SUBDIRS=scripts/mod
make SUBDIRS=drivers/gpu/drm/mgag200 modules


Up to this point, no parts of the system have been modified, we have just been playing with some source code on the side. Now we will copy the built module to the place where modules are stored and make the kernel recognize it:

mkdir -p /lib/modules/$(uname -r)/kernel/drivers/gpu/drm/mgag200/
cp drivers/gpu/drm/mgag200/mgag200.ko /lib/modules/$(uname -r)/kernel/drivers/gpu/drm/mgag200/ depmod


You should also put it to initramfs as well so that it is available at boot time. Add it to initramfs list of modules:

nano /etc/initramfs-tools/modules

Just put "mgag200" on a new line and save. Then build the new initramfs:

update-initramfs -u -k $(uname -r)


Now you can reboot and you should get hardware acceleration, which means smoother operation and higher resolutions available. You can see whether the driver mgag200 is running by 

sudo lspci -v

and finding your graphics card entry, or running

sudo lshw -c display


If something goes wrong, you will need to disable and remove the mgag200 module again. Worst case scenario, if the boot fails entirely (blank screen), you need to blacklist the module in GRUB. If you don't see the GRUB menu when starting a computer, hold Shift. Then press "e" to edit the menu entry. You will see a bunch of code. Find the line that begins with linux and goes something like this:

linux   /boot/vmlinuz-linux root=UUID=81a6c1f4-3a1c-4a15-a2c0-cf2329b8f4b0 rw  quiet

As another parameter, add nomodeset=mgag200 at the end of the line:

linux   /boot/vmlinuz-linux root=UUID=81a6c1f4-3a1c-4a15-a2c0-cf2329b8f4b0 rw  quiet nomodeset=mgag200

Hit F10 and you will get your old system without the mgag200 module. Now you can normally remove it, go to root prompt by sudo -i and delete it:

rm /lib/modules/$(uname -r)/kernel/drivers/gpu/drm/mgag200/mgag200.ko
depmod

That should do it and you would have your old system back.

That is basically the summary of the two askubuntu links applied for your case with some basic explanation. If you need some additional details, or need help along the way, let me know here, or we can get in touch by other means.

IvoStraka
Occasional Advisor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Just pinging @dportabella, are you going to try it? I can help you along the way if you need.

dportabella
Frequent Visitor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Thanks @IvoStraka for your message.

 
I followed the launchpad link and its 2 askubuntu links, but it seems quite complicated.
Can you please tell me the steps to try this solution?
 
Cheers,
David
IvoStraka
Occasional Advisor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Sorry @dportabella, I don't understand :-) I already posted all the steps above. Hopefully the explanation is clear enough, but if you need additional assistance, we can sort it out together.

dportabella
Frequent Visitor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

I see; I missed that message.

Thanks for the steps; I'll try and let you know.

IvoStraka
Occasional Advisor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

@dportabella, just checking whether there are any news.

matusa15
Visitor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Hello,

Same problem here,

Fist at alll, im a newcomer to Ubuntu CLI

I followed the process and get stuck , as soon as i get back to the console ill give you the details, but meanwhile, my firmware is not updated, the current version  is 4.8 if im not mistaken, but when I try to dowload the upgrade asks me about Os to be used, for ubuntu only offers up to 12.04, this means that i should be using that ubuntu release?

 

Regards and thanks in advace

 

matusa15
Visitor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Hello Im stuckissuing this command

 

 cp drivers/gpu/drm/mgag200/mgag200.ko /lib/modules/$(uname -r)/kernel/drivers/gpu/drm/mgag200/

 

this is the output, sorry about the spanish, (translation)

(cant create regular file)
cp: no se puede crear el fichero regular '/lib/modules/4.8.0-36-generic/kernel/drivers/gpu/drm/mgag200/': No es un directorio (is not a directory)

 

After creating the module, Im going to copy the module where the modules are stored, but the directory does not exist

Mu guess is taht the source or destination directory is wrong... but i feel like an office user facing an outlook issue dealing with ubunt.. I need to call IT :)

 

thanks in advance

 

Cesar

 

 

 

 

IvoStraka
Occasional Advisor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Hello, I think the problem is that the folder mgag200 does not exist. I probably made a mistake and did not include a step of creating it. You can create the folder by running:

mkdir -p /lib/modules/$(uname -r)/kernel/drivers/gpu/drm/mgag200/

Regarding your updating question, I am not sure what you mean by firmware. The Ubuntu version is irrelevant and your kernel version 4.8.X is fine. I think that you do not need to upgrade.

matusa15
Visitor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

Hello,

 

I managed to go through the whole process, but ubunto doesnt boot anymore.

 

You can see screencpature where it does get stuck,

I can see that you specified with a rollback procedure, but since I will be stcuked with a low reslution, I will go for a different OS.

 

 

Thanks

 

 

Cesar

 

 

 

IvoStraka
Occasional Advisor

Re: HP ProLiant Gen8 with Ubuntu 16 and no monitor, using iLO remote console: screen size only 640x4

It would be really nice to see what's wrong, maybe the module is just not modeset. Maybe in Grub you can try playing with modesetting? Basically you do the same thing in Grub as I described in the fallback procedure, but instead of nomodeset, which disables the module, try writing modeset to enable it.

Anyway, just to check, could you please put the outputs of these two commands here?

uname -a
sudo lshw -numeric -class display