Android devices play nice with Linux, but the same can’t always be said for iOS devices. Support for them on Linux is still far from perfect, but here’s what you can do to get it working as best as possible.
There’s a piece of software available for Linux called libimobiledevice. This library – as the name implies – tells the computer how to communicate with iOS devices, like the iPhone and iPad.
If you’re running the most recent release of your favorite Linux distribution then libimobiledevice is most likely already installed. If you’re unsure whether you do actually have it installed or you know you don’t, you can install it easily with your respective package manager.
Ubuntu users would input the following command into Terminal:
sudo apt-get install libimobiledevice
Fedora users should use:
sudo yum install libimobiledevice.
If the package is already installed, the command will tell you so and exit. You can search “libimobiledevice” in your respective package manager for other Linux distributions.
One simple library is all you really need. If you had to install it, restart your computer for safe measure to make sure the library loads correctly when you connect your smartphone or tablet. Once a device is plugged in, you should see a new folder that leads to your iOS device’s internal storage.
Unfortunately there’s not a lot you can do with access to your iPhone or iPad’s disk, though you might want to manually grab your photos from the DCIM folder, or take a manual (and messy) backup of media files if you’re in a pinch. In order to listen to music, you’ll have to find a different way to get music to your iOS device like through the use of cloud streaming services, or using the solution below.
Note: If you are unable to connect to your iOS device, and it (or a new version of iOS) was recently released, there’s a good chance that libimobiledevice has not yet been updated to support it. This should only be a problem when new devices and software is released.
At the time of writing, I’m able to connect my iPhone 5s running iOS 7 just fine.
No iTunes, No Tunes
You should be able to use Rhythmbox and other media players that claim to support iOS devices, but as our testing proved this is not the case. There will be an entry for your iOS device, and upon clicking you should be able to see the music that is stored on the device. libimobiledevice may allow your iOS device to be connected, but further support is dependent on the progress of libimobiledevice and the media software you’re using.
Personal experience with my iPhone 5s shows that Rhythmbox detects an iPod-like device and tries to initialize it, but it doesn’t get any farther than that (most likely due to a bug in the current version). Other applications like Banshee may work better as Tim showed a while back.
Shotwell has full bug-free support for it, however, allowing you to import all images and videos stored on your iOS device.
There are a few things you can do to get around the incompetencies of your favorite Linux software. If you’d still prefer to use iTunes, you could create a dual-boot environment with Linux and Windows so you can occasionally boot into your Windows installation to gain access to iTunes. Or, you could just borrow a friend’s Windows or Mac OS X computer if you trust them enough and know that you can easily reach them.
As for music, you may want to look at cloud-based solutions – iTunes Radio (recently launched outside of the US), Google Play All Access Music, Spotify and similar services like Rdio can all still give you all the music you need, and you won’t have to constantly worry about syncing them with your computer.
If you rely on Photostream to get your photos to your computer, try the iOS Dropbox app instead. It provides the same features and is much more cross-platform friendly.
Having access to your contacts is important. In order to access them on Linux, try moving all of your contacts over to your Google account if you have one. It’s easy to sync your Google contacts to your iOS device, and it’s equally easy to get a program on your Linux machine to sync with your Google contacts as well.
Since you’re not able to use iTunes without going with one of the workarounds, you also won’t be able to use it to create backups of your iPhone or iPad. Instead, the best solution here is to rely on iCloud’s backups for your backups and contact needs.
This will give you the most seamless experience for backing up but you may run into issues if you are getting close to using the 5GB of storage that Apple provides for free. Take some time to consider what all you really need to backup under Settings > iCloud > Storage & Backup, because getting more iCloud storage space will cost you.
What About iTunes via WINE?
You may be thinking of trying to run iTunes via WINE, the Windows compatibility layer for Linux, to get all of iTunes’ features. However, I would not recommend trying this. Even if you get iTunes to run under WINE, it’s usually a very difficult task to get any programs running under WINE to communicate with a device via USB. It’s simply too much hassle when there’s no guarantee that it’ll actually work and there are native options available.
Got An Old iPod?
Got an old iPod and wondering if you can use that too? While this definitely won’t work for your iPhone or iPad, you can still transfer music to older Apple MP3 players using gtkpod. We featured it several years ago among various tools as an alternative to syncing with iTunes.
Being a third-party tool, it’s not guaranteed to work entirely. Gtkpod is also an older piece of software, a leading cause for incompatibility. You can install it by using
sudo apt-get install gtkpod in Ubuntu or
sudo yum install gtkpod in Fedora.
Not There Yet
Sadly, this is about as good as it’s going to get if you plan on using an iPhone or iPad with a Linux computer. There’s simply not a whole lot you can do without iTunes for OS X or Windows. The only thing that you can somewhat reliably do is copy data like photos and music off of your mobile device, but that’s about it.
You will have the most luck if you use a lot of cross-platform friendly cloud services. The support state of direct communication with a Linux machine will most likely never get much better than this because of Apple’s proprietary attitude surrounding their products.
Do you connect iOS devices to a Linux machine? Any tips you can share with other readers? Let us know in the comments!