If you have tried downloading iTunes for Ubuntu or any other Linux distro in the past, you might have been confronted with a nasty surprise: “There’s no iTunes for Ubuntu / Linux! How do I access my iPhone / iPad / iPod from Ubunu / Linux !?” That was totally my reaction when I tried to access my iPad from Ubuntu out of curiosity last week. Previously, I had always accessed my iPad from Windows using iTunes.
The bitter truth is that a native version of iTunes isn’t available for Linux yet. At the time of writing this blog post, Apple simply doesn’t care about supporting iTunes on operating systems other than Windows and Mac OS. Hopefully this will change in the future. For the time being, the least we can do is make use of some workarounds.
While it’s possible to run the Windows version of iTunes on Linux using WINE, this method doesn’t always work with all versions of iTunes, particularly the latest ones. In this blog post, I’m going to share two solutions that are guaranteed to work well.
Solution 1: Use iTunes from a Windows virtual machine
This is perhaps the most reliable, but also the most cumbersome way to get iTunes to work on Linux, albeit not literally Linux, because we’ll be running iTunes inside a Virtual Machine.
Since you’re using Linux, I assume you’re quite familiar with the process of creating and setting up a virtual machine. The steps to proceed are as follows:
- Install VirtualBox: The correct version of VirtualBox for your Linux distro can be downloaded here.
- Download the Windows installation ISO.
- Launch VirtualBox and create a new virtual machine.
- Install Windows on the virtual machine using the Windows installation ISO.
Once Windows is up and running inside VirtualBox, all you need to do is download and install iTunes on the Windows virtual machine. Then, simply connect your iDevice to your computer, and you should be able to access it from iTunes inside the Windows VM as you would normally do on Windows or Mac OS.
While this solution brings you all the features of iTunes “on Linux”, it has some major downsides. For one, you have to launch the Windows virtual machine every time you want to access your iDevice. Also, it’s not possible to transfer files between your Linux machine and your iDevice since the iTunes we installed is constrained to the virtual machine, and as such it can only access files that are found inside the Windows virtual machine.
If you’re a regular user of Linux, running iTunes inside a Windows virtual machine is definitely not an effective way to access your iDevice in the long run. In that case, you might find the solution below to be more helpful and more integrated with Linux.
Solution 2: Teach Linux the protocols of iDevices
It’s possible to access your iDevice from Linux without using iTunes at all. “Without iTunes you say !?” You read that right 🙂 We can make Linux communicate directly with iDevices, thereby cutting the need for iTunes completely.
libimobiledevice is an open-source library “that talks the protocols to support iPhone®, iPod Touch®, iPad® and Apple TV® devices…and does not require jailbreaking.”
In order to install the libimobiledevice library and its related tools, open a Terminal window and run the following command:
sudo apt install libimobiledevice-dev
Next, reboot your computer for the changes to take effect.
At this point, connecting your iDevice to your computer through the USB cable should bring up a prompt on your iDevice asking if you want to trust this computer. Touch “Trust” to give your computer access to the device.
[Image courtesy of Apple Inc.]
If you now open your file manager (e.g Nautilus), you should see 2 additional tabs: One to access the documents for the various apps on your iDevice, and another one to access the Camera Roll.
To safely eject your iDevice, simply click the button with the arrow on the right side of one of the tabs.
It is now possible to transfer files between your iOS device and your Linux machine without iTunes. The libimobiledevice library seamlessly integrates with Linux and hides all complexities of the communication happening between your iOS device and your computer, without requiring any additional configuration from our part. Accessing the Camera Roll and documents on your iDevice is now a piece of cake. 🙂
For any additional information about libimobiledevice or for any other troubleshooting questions, please check the FAQ section on the library’s official website: https://www.libimobiledevice.org/