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
  • 481
  • Does brightness control/color temperature (e.g. night color/redshift) work after doing this? – Archisman Panigrahi Feb 15 '24 at 02:14
  • Yes, as already told in my other topic this worked fine on Kubuntu 20.04 LTS but is for whatever reason broken on Kubuntu 22.04 LTS. Let's see if the upcoming (K)Ubuntu 24.04 LTS will fix the non-functional brightness control. :-) Note, the "night-mode" in KDE which changes the color temperature (at the evening) works normally. – Clemens Feb 29 '24 at 09:19
  • I have a 2009 iMac with AMD Mobility Radeon HD 4850. Night color and Brightness does not work in Kubuntu 22.04. Let me try 20.04 – Archisman Panigrahi Feb 29 '24 at 17:51
  • Yeah please check the situation with 20.04 and perhaps also with the upcoming 24.04. The "feature freeze" was at the beginning of March 2024 and shortly there should be available the first serious pre-release builds. Whatever, I can confirm regarding 20.04 that the Night color and Brightness stuff worked for an iMac 5,1 (2006), iMac 8,1 (2008) and iMac 12,2 (2011). And be aware that the "Apple" Radeon HD 4850 GPU models need the direct booting of the Linux kernel (EFISTUB) from rEFInd. It will not work when GRUB is involved. Well, in theory it could work with GRUB 2.12 and newer. – Clemens Mar 02 '24 at 12:30
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
  • Do you mind giving a little bit more detail for this answer? I'm having a similar problem as the asker here and any help would be appreciated. – Jimmy2Goons Jan 15 '21 at 06:13
  • It been a long time, but from vague memory, it was just a matter of using the rEFInd boot loader instead of grub. I think I installed ubuntu normally (ie with grub bootloader) then followed install steps in the rEFInd docs, here: https://www.rodsbooks.com/refind/installing.html#packagefile - Sorry I can be of more help – Rowan Jan 19 '21 at 08:23
  • but how is the boot loader related to recognizing the graphics driver? – msoutopico Feb 06 '21 at 18:37
  • Does color temperature software like redshift work afterwards? – Archisman Panigrahi Feb 15 '24 at 02:14
0

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

  • That's the driver that comes installed with Ubuntu. It requires Kernel Mode Setting, which the Mac doesn't support – Nathan Walker Feb 21 '18 at 20:37
  • Indeed, fglrx wasn't installed on my (minimal) Lubuntu (nor proposed as I launch "install but the drivers from the "Additional drivers" program). – andrei i Feb 26 '18 at 10:51
  • The drivers from the link I've indicated before are de "default" drivers, and yes, they have no effect: when starting 'linux' on mac (via the ReFind or ReFit bootloader) the screen becomes blank although Linux starts normally "on the background". The TEMPORARY workaround I've found is to strike twice F2 before launcing the 'Linux' button on ReFind and add on the string of kernel options the following 2 options: radeon.modeset=0 nomodeset – andrei i Feb 26 '18 at 10:58
  • With these 2 options the use of the Radeon video card is eluded (so your original question too, unfortunately), but Linux starts well. So, the question is now: how to make this permanent. The most natural way would be to put these options in Linux's grub. In my case, I have no "grub" bootloader on the ReFind menu (have to work on that!). Another solution is suggested here: https://sourceforge.net/p/refind/discussion/general/thread/c30a6920/ . Both are thus ReFind problems (to solve) I've tried (by modifying the refind.conf file on the Mac) to make them work... but didn't succeeded (yet). – andrei i Feb 26 '18 at 11:21
  • By the way, on my mid 2010 iMac (i3) the option "nomodeset" is not sufficient in order to avoid the Radeon video card issue: the screen is still blank (actually... black). The same holds for the option "radeon.modeset=0". I have thus to ask BOTH options in order to obtain a normal Linux boot... – andrei i Feb 26 '18 at 11:28
  • That's what I have for my current setup (nomodeset in grub options). I can consistently boot, but the nomodeset option disables hardware graphics acceleration. – Nathan Walker Feb 27 '18 at 14:02
  • Don't know if you use ReFind in order to boot on linux, but in my case I've already done the modifications on linux's grub (about the kernel options) and my ReFind doesn't read them. So, in order to boot, I have to strike twice F2 in order to write the two options EACH TIME I boot on linux. It's a hell. So finally I'll take the VirtualBox option: i'll make some linux and windows machines under mac osx. Sorry for not having been helpful.. – andrei i Feb 28 '18 at 20:28
  • Yes, I use refind. I modified the grub options so they would be persistent, so now it boots without kernel mode setting by default, which is both the solution and the problem. I can boot, but I can't play even the most basic of games. If you know some place to get an alternate driver, let me know. – Nathan Walker Feb 28 '18 at 20:35
  • I've reinstalled refind to its last version and now it "sees" my linux grub (with the same modifications as yours) so I'm in the same situation as you are (although a better one, since I never played games in my life :-)) – andrei i Mar 02 '18 at 13:28
  • Now, as a "constructive" info: at my office we got new Dell Optiplexes with a "home (Dell) cooked" Ubuntu 16.04. and before to get rid of this one (coz I have my habitudes) I've made first a bootable USB with this Dell Linux system. And... trying to boot with this USB on my iMac, it turns out that there is no problem to handle the mac's radeon video card, and the process of install works graphically fine (until it stops because one "sees" that one tries to install something which is not a Dell material etc etc. So... just proprietary issues). – andrei i Mar 02 '18 at 13:32
  • I've looked then into this install USB and there is a folder in it called "radeon" with about 3 packages which I've installed (by Gdebi) on my Linux partition on the iMac. Still black screen after reboot... but... it's clear for me that the Dell's USB install disk overcomes the graphic card issues (since with all other official usb installs the screen becomes black... there should be something in the Dell's home cooked install that goes better...). If you're interested I can give you the names of these packages. – andrei i Mar 02 '18 at 13:37
  • Thanks for the update! If you could send me the names of those packages, that would be great. Another thing you can do to find their solution is to check if, after booting off the USB, you still have hardware acceleration. If you Google how to tell whether it's enabled, you'll find some command you can run to check. Also, if you open the Additional Drivers menu in Ubuntu, you might be able to see what driver they're using for graphics. – Nathan Walker Mar 02 '18 at 14:13
  • the name of the 3 packages from the "radeon" Dell's folder are: amdgpu-pro-dkms_16.30.3-320002f_all.deb radeon-si-dkms_1b_all.deb xserver-xorg-video-amdgpu_a5764305_amd64.deb the last one being already installed on my Lubuntu (but with a complete Mate flavour) – andrei i Mar 04 '18 at 11:32
  • You have to know that this Dell config is a quite odd one: e.g. with a lower graded kernel, it was be able to recognize the (very recent) Broadcom wifi/Bluetooth card, although for a normal Ubuntu config I have been forced to upgrade to the newest kernels in order to make work this card. When I looked after their Broadcom drivers there where no such packages in Ubuntu's repository, nor on google !! So the same may happen about the packages I've listed before. The whole USB is of 2Go so I could make a link on a transfer site and you could download it if you're interested. – andrei i Mar 04 '18 at 12:32
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
    The heat thing is a BIG issue. The fan pretty much does not run. I came back to it after it had been idle overnight and it was HOT (feel across the back top of it). Cooled down quick after I unplugged it. Definitely have a plug in fan blowing on the back as you do this lengthy install. Maybe have a bucket of ice behind the fan. The graphics thing is definitely fixed though. – elscan Aug 11 '21 at 13:53
-1

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

 example