Installing Ubuntu on 2011 MBP

When you’re in the Apple Ecosystem you kinda forget how old your devices are when they “just work” but when the day comes they start to have a wobble you soon remember.

My 2011 has been plagued with graphics card issues for a couple of years now, when its cool its all fine but as soon as the temperatures rises in the chassis it becomes an issue. Its job in life isn’t that stressful or strenuous now its purely the PlatinumMD machine creating MiniDiscs or FLAC file music playback, well it was until the AMD Radeon GPU failed. The MacBook 8.2 does have a back up of the Intel iGPU available, Apple in their wisdom won’t let the MacBook boot without a functioning GPU if installed.

Much research and forum digging later - Apple included an extended warranty program on these devices which involves a replacement logic board but this service has long since closed. The next option was to find a working logic board/gpu combo and transplant in to my current MacBook chassis as there is no current aftermarket solution unlike the 27” iMac which have the same fate, and have the space for a separate GPU card that can be replaced.

Whilst in the forum information rabbit hole, I stumbled across some old posts where people have installed and got Linux Mint working on these ill fated MacBooks - whilst its a favour of Debian its been known to have a couple of issues with the types of desktop environments available - I like GNOME it feels not too far away from macOS / OSX.

In theory the commands used on Linux Mint would work with Ubuntu a Linux distribution I’m very familiar with as a flavour of Debian which all stems from the Unix - MacOS old.

Another reason to update/upgrade to Ubuntu OS (or any Linux bistro) is the lack of security updates for macOS on these older devices - This age of MacBook can update to macOS 10.13 (High Sierra) which in itself is 7 years old now, and the last update was pushed down in November 2020.

Ubuntu is current, receiving updates to its different versions and being opensource nothing nasty is hidden in the code, with it being visible to all to inspect. Virus’ and Malware are very few its not how the community works. With the plus point, doing this is a technology upskill the world functions on Linux servers, and since the introduction of the Raspberry Pi the uptake in Linux users has increased tenfold.

Anything important on the MacBook is going to need to be backed up, and this can only be done removing the Harddrive (HDD) / SSD from the MacBook and reading the contents on another device. As we’ve mentioned these MacBooks are getting old - technology has moved on I would strongly advise getting a new modern large capacity SSD - to replace its only 10 screws on the base - and two screws to release the SSD/HDD becareful of the ribbon cable.

Things we need

  1. 16gb USB Stick

  2. New SSD (your choice)

  3. Ubuntu iso file

  4. Raspberry Pi Imager software

  5. Another device to create the Bootable USB Stick on - MacBook / Windows / Linux is fine - just not a Chromebook

Getting Ubuntu Working

Once you’ve downloaded both the ISO File and Imager you can insert the USB Stick and follow the instructions displayed on screen. When its complete remove from your device creating the bootable USB.

To get all this to work we need to turn off the GPU, allowing the MacBook to boot in its new Operating System (OS).

With the MacBook Pro turned off, insert into the USB port on the MacBook Pro. Turn on the MacBook Pro, whilst pressing the alt (Option) key. Keep hold of the key until the Apple Startup Manager shows. Surprisingly the MacBook doesn’t need the GPU for this part.

Select your USB stick - it’ll be labeled ‘EFI” and press enter - the MacBook Pro will now boot into Ubuntu grub boot loader page (black background with white text).

At this point you need to press “e” to edit the grub and add some text to display the AMD GPU. At this point you add the following to the.

outb 0x728 1
outb 0x710 2
outb 0x740 2
outb 0x750 0

i915.lvds_channel_mode=2 i915.modeset=1 i915.lvds_use_ssc=0

The finished file will look something like this.

set timeout=5
menuentry "Try Ubuntu without installing" {
   set gfxpayload=keep
   outb 0x728 1
   outb 0x710 2
   outb 0x740 2
   outb 0x750 0
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.lvds_channel_mode=2 i915.modeset=1 i915.lvds_use_ssc=0"

From here you need to save by pressing FN + F10 the MacBook Pro will take a few seconds of black screen to reboot and load Ubuntu desktop. Here you’ll have the option to install Ubuntu via the wizard, connect to the internet etc, create a user account and password.

When its finished, you’ll need to reboot - a screen will display saying to “remove the installation media and press enter” do this and let the MacBook Pro reboot it may or may not work now, if it doesn’t don’t panic quickly repeat the first steps of booting from the usb, pressing “e” and changing the menu disabling the GPU.

Once you’ve loaded a version of Ubuntu again, and the installation popup appears - cross this off and go to the files app on the left hand menu.

  1. Navigate to > Other Locations > Computer/Ubuntu > Boot> Grub, then find the grub.cfg file

  2. Open terminal and type sudo chmod 777 and then drag the grub.cfg in to terminal. (chmod 777 give you access right to modify the file)

  3. Modify this file to add just the i915.lvds line of text in.

GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.modeset=0 i915.lvds_channel_mode=2 i915.modeset=1"
GRUB_CMDLINE_LINUX=""
  • Save the file and then type sudo chmod 444 in terminal again, drag the same grub file icon back in to terminal to remove modifying access rights.

  • Reboot the MacBook Pro, remove the USB and let it boot to login page.

On the MacBook Pro 2011

From this part onwards I would suggest to open this page on your MacBook Pro, and copy the commands / text in to the relevant places. We need to make these changes permanent within Ubuntu, this can be done via editing another grub file.

  1. Open terminal and type “sudo nano /etc/grub.d/10_linux” (Nano is a built in text editor within Linux)

  2. Press ctrl w to find the line with insmod gizo in

before that line enter the following text

echo " outb 0x728 1" | sed "s/^/$submenu_indentation/"
echo " outb 0x710 2" | sed "s/^/$submenu_indentation/"
echo " outb 0x740 2" | sed "s/^/$submenu_indentation/"
echo " outb 0x750 0" | sed "s/^/$submenu_indentation/"

See image below as example.

And for the last time type sudo update-grub in Terminal and then sudo reboot now and its all done.

outb 0x728 1 # Switch select
outb 0x710 2 # Switch display
outb 0x740 2 # Switch DDC
outb 0x750 0 # Power down discrete graphics

This is what the different codes are doing within the grub file and how the AMD Radeon Graphics card is being disabled.

Next
Next

Bikling Apple Watch Bike Mount