Right now, I'm able to transfer large files only via the following two methods:

1) use an FTP or SFTP app and wait until I'm 80 for the file to transfer. I get about 3MB/sec through my wireless LAN, tops. Usually hovers around 1MB/sec.

2) Use my Mac.

Even in these cases, I'm not able to actually play the .mp4 files in the native player without jumping through hoops, but that's an iPhone question, not a Linux question.

My question is:

Is there any way to transfer the files using any package or library or script accessible through Ubuntu that goes over USB? It's almost six times faster.

Additonal requirements for an effective solution:

  • Cannot use a VM, I already have a Mac that can do this. (In fact, it's actually faster for me to move the file to the Mac with a USB stick and then use iTunes than to try to transfer it over wifi.)
  • same thing for Wine, and I couldn't get it to work anyway.
  • Im fairly comfortable with the command line, and I'm even comfortable writing code if I have to, assuming there's a library that I can code against, with a decently clear API.
  • a third party app (any free video player on the App Store) can reach and play the file once it's on the phone.

If it's impossible, I'll just get an Android. This is my last ditch effort to find an answer.


Note: I'm also unwilling to jailbreak the device, and it's on whatever the latest version available of iOS is.

Due to an oversight I completely forgot to mention the problem.

I'm perfectly able to use libimobiledevice to transfer the file. It just doesn't actually do anything. It takes up space on the device, but no application running on the device can access or even see the file. To reiterate, the intent of the question is to be able to actually use the file on the device from apps running on the device. If it's not possible, I understand.

1 Answer 1


You need this : libimobiledevice

This is a cross-platform package which communicates with i-devices and get file-system access (and much more) and needs no jailbreaking.

Most recent version is 1.2.0 and you can read details here: Official page : libimobiledevice.org

Coming to installation, there is already excellent description available here : Mounting i-devices on ubuntu

After mounting your iphone like a USB device, you will be able to access the folders and then your transfer job will be just copy/paste thing.

If you are transferring a video file and it is not recognized by the default video app on iPhone, then the issue is with the file format including bitrate and frames per second. To solve this, one can simply convert to iPhone supported video format easily using Handbrake video encoder.

This application is available in the software repository and installation is easy using the the Software center on 14.04 or Software on 16.04. In the application, choose 'iPhone and iPod touch' shown in Devices menu on the right.

(* Most of the times it is noticed that the file size becomes smaller than original. If you have several files, you can queue them and convert all of them together.)

Handbrake > Devices on the right > iPhone

  • After the transfer of the files, you need to the Sync the folder where you have placed the file(s) in the particular application, say iTunes to get the new video(s) playable.
  • I'm sorry, I should have posted that in the question and I will update my question to reflect your answer. May 27, 2016 at 8:02
  • Updated question with additional details, sorry for the oversight. May 27, 2016 at 8:04
  • Ok, i see. Did you install ifuse ?
    – ankit7540
    May 27, 2016 at 8:12
  • Yeah. The auto-mounting works beautifully, I get nice pretty folders in a folder browser. I can transfer the file anywhere I want within that directory. But play (or even find) the video on the device? Can't do that. May 27, 2016 at 8:14
  • So, can you transfer files using ifuse ?
    – ankit7540
    May 27, 2016 at 9:20

You must log in to answer this question.

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