7

I recently installed Ubuntu 16.04 64-bit on my old mid-2010 iMac, but quickly ran into some issues. When installing, the screen would go black after the grub interface, unless I added "nomodeset" to the boot commands. Now Ubuntu 16.04 is installed, but the screen will stay black or freeze on the purple start up screen unless I have "nomodeset" enabled. While it is currently in a working state, it isn't using the GPU for graphics acceleration. I know the graphics power of this Mac is already poor, but I intend to install Steam on Ubuntu to play some basic 3D games, so I need graphics acceleration to work. I am struggling to find an answer to this problem online. While I've since lost the webpage, I read somewhere that the issue may have something to do with how Ubuntu wants to take over the graphics driver on the kernel in order to reduce flickering during boot, which isn't compatable with iMacs. I am open to installing an older version of Ubuntu if necessary.

Graphics card: Radeon HD 4670

CPU: Intel i3-540

Output from command "/usr/lib/nux/unity_support_test -p":

OpenGL vendor string:   VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 4.0, 128 bits)
OpenGL version string:  3.0 Mesa 17.0.7

Not software rendered:    no
Not blacklisted:          yes
GLX fbconfig:             yes
GLX texture from pixmap:  yes
GL npot or rect textures: yes
GL vertex program:        yes
GL fragment program:      yes
GL vertex buffer object:  yes
GL framebuffer object:    yes
GL version is 1.4+:       yes

Unity 3D supported:       no

Output from command "dmesg | egrep 'drm|radeon'":

[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.10.0-42-generic.efi.signed root=UUID=883068b9-9317-47a9-98e6-202c75b7d2f2 ro quiet splash radeon.modeset=0 vt.handoff=7
[    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.10.0-42-generic.efi.signed root=UUID=883068b9-9317-47a9-98e6-202c75b7d2f2 ro quiet splash radeon.modeset=0 vt.handoff=7
[    1.381779] [drm] Initialized
[    1.412144] [drm:radeon_init [radeon]] *ERROR* No UMS support in radeon module!
[   10.490259] [drm:radeon_init [radeon]] *ERROR* No UMS support in radeon module!

Let me know if you need any other information.

Update 1/2/18: Based on what I have found, the issue occurs because of something called kernel mode set (KMS). The default, open source radeon driver needs KMS, so it gets disabled when I use nomodeset. Unfortunately, it seems like the new proprietary drivers (fglrx) don't support the old graphics card. I believe my best course of action would be to install the legacy proprietary drivers, but I haven't found a way to do so. If you have any ideas on how to do this, please let me know.

Update 5/26/18: After giving up on this for some months, I come back to it, and I find the drivers online right away! I figured out that they will only install in CLI. But now, I have a different problem. The installer is complaining about missing kernel headers, saying that version.h could not be found. Anyone know a way to fix that?

Update again: Gave up on this again, since it seems that the installer, or any legacy FGLRX driver requires an older kernel and therefore an older version of Ubuntu: http://wiki.cchtml.com/index.php/Ubuntu_Quantal_Installation_Guide This means I must install Ubuntu 12.10, which I believe I attempted previously, but to little success. I'm too busy at the moment to try again and find out the reason. On the download page for 12.10, there is a Mac version, but I don't think I was able to boot the installer last time I tried.

5 Answers5

4

I know this topic is quite old. But unfortunately nobody has given here the "right" answer. ;-)

Long speak short, this is NOT a driver issue! The underlying problem is that the "vBIOS is not exposed in EFI mode". This can be seen indirectly at the error message [drm:radeon_init [radeon]] *ERROR* No UMS support in radeon module!

No regular AMD GPU driver will work without the vBIOS information.

However, Apple enables the "classical vBIOS" when the legacy CSM Bios-emulation mode aka "Boot Camp" is used. When the native EFI mode (aka EFI boot) is selected at the beginning of the (K)Ubuntu installation, the vBIOS is only avaiable during a very short time at power-on.

The solution is to install rEFInd, it will "extend" the time in which the vBIOS information can be reached in EFI mode. Additionally also the Linux installation must be modified so that the bare Linux Kernel can be booted via the EFISTUB feature directly from rEFInd. This will work as follows:

Apple EFI firmware => rEFInd => Linux kernel (EFISTUB)

Fortunately, newer (K)Ubuntu versions supports an enhanced nomodeset boot option called safe graphics. This makes it possible to install Linux the first time with a basic mode GUI. So (K)Ubuntu can be installed fully and before the first reboot, the necessary modifications for EFISTUB kernel booting can be applied.

More detailed information can be found here, - see the first (accepted) answer: rEFInd & Linux kernel EFISTUB booting at Apple hardware, how to implement it?

PS A hardware alternative will be to install a "newer" Apple Radeon 6770M MXM graphics card. I have done this once at an 2009 27" iMac and it worked perfectly. This "newer" card exposes the vBIOS information even in EFI mode all the time, - so no special tweak is needed for a native EFI installation.

Clemens
  • 541
1

I was running into the same problem with my 2011 Mac mini when installing Ubuntu 18.04.

Changing to the rEFInd boot manager fixed the issue for me.

Be aware that rEFInd will pull any boot params from grub, so if you have added nomodeset, etc it will need to be removed manually from /boot/refind_linux.conf

Rowan
  • 111
0

You may try this: https://help.ubuntu.com/community/RadeonDriver It looks like it's supported.

andrei i
  • 1
  • 1
0

I am following the tutorial from lifewire. I also have late 2009 iMac. I have upgraded to most recent update possible on that machine (High Sierra 10.13.6).

After step 11 under Netbootin section (you have burned the ISO image onto your flash drive). You can access your flash drive in finder (mine is named UBUNTU).

You should be able to see the boot folder. The path is [UBUNTU Drive]]boot->grub->grub.cfg ... but I could have gotten "grub.cfg" wrong. Sorry, did not take picture at best time, but the file you need to edit is something.cfg and you won't mistakenly choose any of the other files in that folder.

Right click on "grub.cfg"->open with->TextEdit (or whatever text editor you may have).

In that text file, you should be able to see [minus the enclosing brakets] <menuentry "Ubuntu" { > and and similar menuentry's with . Now, some of the menuentry's have nomodeset after, some do not have anything about modeset.

Look at "about this Mac" and see whether you have radeon, nvidia, or intel graphics driver, then replace the nomodeset's (or nothing after splash) with radeon.modeset=0 (or intel.modeset=0 etc) as per the tutorial.

Then keep following the tutorial.

Note: I am not using rEFInd, I am using option (alt) key.

Note: I have since encountered an error about a faulty disk, but this is likely because I am using micro-sd with usb convert and [felt like I] had to burn the ISO twice and have been at this for a while and the disk is hot.

Also note: there are many help pages which helped to clue me in to this solution, but I have since closed out of them and figure that anyone following this post has read similar help articles. The marbles in my head just happened to roll into the right place. Thanks all the skilled devs, I can share my lucky workaround.

elscan
  • 1
-1

Try to install the netinstall version and pick Ubuntu Mate Minimal for gui. I have a mini pc and works very good.

 example

Cornea Valentin
  • 739
  • 6
  • 11