1

Apologies if this question is inappropriate for this forum I am not sure whether I should be on the Apple or Ubuntu StackExchange.

I am trying to turn an iMac mid 2010 21.5" into a home server by installing Ubuntu Server 20.04 LTS on it. Startup manager is not recognising the bootable USB that has been loaded with the Ubuntu Server Netboot ISO, though it is recognising a USB that has been loaded with the standard Ubuntu USB - does anyone know why this might be? I am using the same program to create both bootable USBs and I have tried different USB ports.

For context there isn't a functioning OS on this machine. An earlier attempt to install Ubuntu Server crashed so when I boot the machine it goes to blank screen with just only '_'.

The standard Ubuntu ISO can't be installed due to a GPU issue: 'no UMS support in Radeon module' is the error that I receive and I have tried editing the GRUB settings to include 'nomodeset' as suggested on forums such as this one: E.g. Installing Linux on 2009 iMac, black screen after bootloader

6
  • What program would the "same program" be? What would the names of the ISO files? Can you give a link where you found these files? What machine are your using to make the bootable USB? How much memory is installed in the iMac? Does the Linux have to be Ubuntu? Are you choosing a server addition because you believe a graphical desktop in not possible or another reason? Do you care if the Linux uses EFI or BIOS booting. Do you care if a MBR partition scheme or GUID partitioning scheme is used? – David Anderson Dec 24 '20 at 0:41
  • 1.Startup Disk Creator. 2. Ubuntu netboot file is named 'mini.iso', Ubuntu server 'ubuntu-20.04.1-live-server-amd64.iso'. 3. Netboot file from link Ubuntu server file = option 3 from link . 4. Machine used to make bootable USB is running Kubuntu, has 8GB RAM and intel i5 CPU. 5. The Linux does not have to be Ubuntu though that is what I am used and there seems to be a lot of support for it. 6. I am choosing server because I want to make home server – Ambassador Kosh Dec 24 '20 at 9:37
  • 7. No preference with regards to BIOS or EFI 8. Either GUID or MBR would be ok, though GUID is preferable. Thank you for your questions. – Ambassador Kosh Dec 24 '20 at 9:42
  • Mac has 4GB memory, it meets the minimum requirements for Ubuntu – Ambassador Kosh Dec 24 '20 at 10:16
  • What does "server" mean? Why wouldn't you just re-install macOS (of the appropriate vintage)? – Marc Wilson Dec 24 '20 at 22:01
0

The short answer is the mini.iso is bootable, just not bootable from a USB flash drive on a Mac of your vintage.

Here is some of the things I tried.

I transferred an ISO file to a USB flash drive by writing the file directly to the flash drive. So, what appears on the flash drive is exactly what exists in the file. There many ways to accomplish this. I used a Mac booted to macOS. The identifier for the flash drive was disk2. An example of the commands is given below.

diskutil unmountdisk disk2
sudo dd if=~/Downloads/mini.iso of=/dev/rdisk2 bs=1m

The same can be accomplished with Linux by entering the commands given below. Here, the identifier for the flash drive was sdc.

sudo umount /dev/sdc*
sudo dd if=~/Downloads/mini.iso of=/dev/sdc bs=1M

I found the USB flash drive created using the mini.iso file was BIOS bootable by the Startup Manager on a 2013 iMac. While I was able to boot, I choose not to install. The same flash was not detected by the Mac Startup Manager on a 2007 iMac. This is expected, since iMacs could not BIOS boot from flash drives until at least after the 2011 model year. Neither Mac Starup Manger could detect a EFI boot file on the flash drive, even though such files do exist on the flash drive. I state this because the flash drive can EFI boot in a VirtualBox virtual machine on the 2013 iMac running Catalina. I was able to install Ubuntu 18.04.5 LTS on the virtual machine.

I used the same method to transfer the ubuntu-20.04.1-live-server-amd64.iso file to a flash drive. This was detected as EFI bootable by the Mac Startup Manager on the 2007 iMac. I was able to boot and installed an Ubuntu server. A present, the Mac Startup Manger is needed to boot Ubuntu server on the 2007 iMac. I have not tried fix the Mac to boot Ubuntu server as the default operating system. I should also point out that this version of Ubuntu server boots to a command line interface (CLI).

Next, I tried using the Startup Disk Creator that comes with kubuntu. This basically does the same thing as the dd command used above.

When installing Ubuntu Server, I made the following selections.

  • I chose to update to the new installer.
  • I chose to not use the entire disk without a LVM group.
  • I chose to install the OpenSSH server.

When I finished installing, the content of the USB flash drive had changed. A compare with the original ISO file found differences.

Update 1

I was able to install Ubuntu with a desktop graphical support on the 2007 iMac by using the mini.iso file. This was accomplished by using the dd command to copy the mini.iso file to the internal drive (/dev/sda). Next, boot to the Mac Startup Manager and select the Windows label under the internal drive icon. Once the Ubuntu installer starts, you can overwrite the the contents of the internal drive with the new Ubuntu installation.

Below are the exact steps, I used to place the contents of the mini.iso file onto the internal drive of the 2007 iMac. This is by no means the only way to accomplish this.

  1. You will need a linux installer that offers a Command Line Interface (CLI). I chose the Debian firmware-10.7.0-amd64-DVD-1.iso file.

  2. Transfer the file to a flash drive. I happened to have a 4 GB USB 2 flash drive and a 2011 iMac computer. By using the diskutil list command, I determined the identifier for the flash drive was disk1. The commands below were used to transfer the file to the flash drive.

    diskutil unmountdisk disk1
    dd if=~/Downloads/firmware-10.7.0-amd64-DVD-1.iso of=/dev/rdisk1 bs=1m
    
  3. Download the mini.iso file.

  4. Transfer the mini.iso file to the flash drive. The output from the ls -l ~/Downloads/mini.iso ~/Downloads/firmware-10.7.0-amd64-DVD-1.iso command is shown below. From the output, one can compute the mini.iso and firmware-10.7.0-amd64-DVD-1.iso files are 76 MiB and 3,772.3125 MiB long, respectively. (1 MiB = 1,048,576 bytes)

    -rw-r--r--@ 1 davidanderson  staff  3955556352 Jan  5 16:10 /Users/davidanderson/Downloads/firmware-10.7.0-amd64-DVD-1.iso
    -rw-r--r--@ 1 davidanderson  staff    79691776 Jan  5 16:07 /Users/davidanderson/Downloads/mini.iso
    

     
    The output from the diskutil info disk1 | grep Size command is given below. From the output, one can compute the flash drive has a capacity of at least 3,853 MiB.

       Disk Size:                4.0 GB (4040748544 Bytes) (exactly 7892087 512-Byte-Units)
       Device Block Size:        512 Bytes
    

     
    From the outputs shown above, I determined the command given below would copy the mini.iso file contents to a location above the contents of the firmware-10.7.0-amd64-DVD-1.iso file. (Note: 1m is 1 MiB = 1,048,576 bytes)

    dd if=~/Downloads/mini.iso of=/dev/rdisk1 bs=1m seek=3773
    
  5. Enter the command given below to eject the flash drive. Remove the flash drive.

    diskutil eject disk1
    
  6. Insert the flash drive in a USB port of the 2010 Mac. Start or restart the Mac and immediately hold down the option key until the Mac Startup Manager icons appear. Choose the external drive icon with the label EFI Boot. When the image below appears, pick Advanced options ..., then select ... Rescue mode.

    Grub Menu

    Continue until a similar image to the one below appears. Pick Do not use a root file system, then select Execute a Shell in the installer environment and finally, <Continue>.

    pick root file system

    At this point, you should be able to enter commands.

  7. Enter the command given below to transfer the contents of the mini.iso file to the internal drive. (Note: 1M is 1 MiB = 1,048,576 bytes)

    dd if=/dev/sdb of=/dev/sda bs=1M count=76 skip=3773
    
  8. Enter the command given below, then turn off the Mac and remove the flash drive.

    exit
    

Update 2: Installing Ubuntu Server 20.04.1 LTS

I did use the Debian firmware-10.7.0-amd64-DVD-1.iso file to test if the mini.iso file would boot from the internal drive. However, IMO this is not a good method for installing the Ubuntu Server 20.04.1 LTS, for the following reasons.

  • The software need to install Ubuntu Server 18.04.5 LTS takes a long time to downoad.
  • The Ubuntu Server 18.04.5 LTS release is installed instead of the Debian Server 20.04.1 LTS.
  • Upgrading to the Ubuntu Server 20.04.1 LTS take a long time to complete.

I would recommend installing the Ubuntu Server 20.04.1 LTS by using a method similar to this answer. Some of the differences are given below.

I tested installation by using a 2007 iMac. When first booting to Ubuntu Server 20.04.1 LTS, a login prompt did not appear on the builtin display. This problem was solved by appending the following line to the /etc/default/grub file.

GRUB_GFXPAYLOAD_LINUX=text

Note: You will have to boot Ubuntu from recovery mode in order to login. Or, you can use ssh from another computer to login.

After appending the line, the command below needs to be executed.

sudo update-grub

The installer was unable to provide the software for the Broadcom wireless hardware. The problem was solved by executing the command give below.

sudo apt-get install firmware-b43-installer

Using the ubuntu-20.04.1-legacy-server-amd64.iso file, to install Ubuntu server on your Mac, is beyond the scope of your question. In other words, your question asked about the mini.iso file. If you want a more detailed answer with respect to using the ubuntu-20.04.1-legacy-server-amd64.isofile, then I suggest posting a new question.

References

Linux Wireless
b43 and b43legacy
GRUB/Tips and tricks: Disable framebuffer
Ubuntu Installation Guide
GNU GRUB Manual 2.04: 6.1 Simple configuration handling

15
  • Thank you for conducting these tests. It sounds like you might have some QA experience. Your results confirm a few rumours and my suspicions about how the issue that I am having is due to the GPU of the Mid-2010 iMacs not supporting Ubuntu. You were able to install Ubuntu and Ubuntu Server on 2 iMacs of a similar age to mine, one older and one younger, whereas I am not able to install any version of Ubuntu as the screen blacks out early on in the installation process. I have experience of installing Linux distros on a few computers so I feel confident that this issue is not caused by me. – Ambassador Kosh Dec 26 '20 at 13:15
  • I appreciate the time and effort that you put into your answer it has saved me probably a lot more time and effort than it took you (I don't have enough reputation to vote on your answer being useful). By the sounds of things you are familiar with the history of iMacs and their compatibility with a variety of OS'. I think that I am going to setup a Linode account until I can find a computer suitable for this project. – Ambassador Kosh Dec 26 '20 at 13:19
  • I would disagree with your conclusion that you can not install some version Ubuntu with or without a graphical desktop on your Mac. The problem probably is either you do not have the correct driver or you are not installing to BIOS boot. You probably need to either BIOS boot the installer from a DVD or from the internal drive. – David Anderson Dec 26 '20 at 15:13
  • I am glad that you replied. In that case I will start exploring BIOS boot. Thanks again. – Ambassador Kosh Dec 26 '20 at 20:26
  • FYI: I did install Ubuntu Server with desktop graphical support on the 2007 iMac. I used the mini.iso file that you suggested. Ubuntu BIOS boots using the modern GPT instead of a legacy MBR partition table. I would encourage you to try this. The version installed was Ubuntu 18.04.5 LTS. I am current upgrading to the current version. If a 2007 iMac can run Ubuntu Server, then I do not see why a 2010 iMac would not be able to. – David Anderson Dec 26 '20 at 22:16

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .