iPhone / iPod Touch over USB in Linux

UPDATE: Problems in Karmic Koala? Read this: http://cgsbay.com/ipod-iphone-karmic-koala/ and you won’t have them! If you use other distro and iFuse didn’t work for you, try the tutorial, maybe it will work!

I found the program I use in my other computer, mount var/mobile/media from your ipod Touch or Iphone (where the music and photos are) is really easy, you only need to install a program called iFuse. After installing it you can plug in your device and it will appear in your desktop.

If you use Ubuntu, you can follow this steps:

1. Add the package to your sources, symply in the terminal: gksudo /etc/apt/sources.list and add at the end the line you need depending your version of Ubuntu;

Karmic
deb http://ppa.launchpad.net/jonabeck/ppa/ubuntu karmic main

Jaunty
deb http://ppa.launchpad.net/jonabeck/ppa/ubuntu jaunty main

Intrepid
deb http://ppa.launchpad.net/jonabeck/ppa/ubuntu intrepid main

Hardy
deb http://ppa.launchpad.net/jonabeck/ppa/ubuntu hardy main

1.2. If you want, in the terminal add the PPA key (it should be optional)

sudo apt-key adv –recv-keys –keyserver keyserver.ubuntu.com e20da6af9caee36095d1282ef104610cf0876ac9

2. Update package list, in terminal: sudo apt-get update
3. Install iFuse, in terminal: sudo apt-get install ifuse

Now you can plug in your ipod Touch or Iphone and it will appear in your desktop.

If you are using other distribution you can check into iFuse webpage to download the program.

35 Responses to “iPhone / iPod Touch over USB in Linux”


  • Will this allow a sync with rhythmbox?

  • You can sync with Amarok 1.4, I’ve been able to sync this way but when I loaded my ipod I had to restore.

    I’ll put the manual if you want at your own risk.

  • Thanks so much for sharing your wisdom on this. I’ll install iFuse soon.

  • I’d like to see the Amarok sync manual if I can :)

  • I just installed ifuse & can now see my iTouch (16GB) on the desktop…way cool!

    Now I am trying to use gtkpod to synchronize Evolution calendar, tasks & notes.
    However I got the following error message & am not sure what to do next.

    Couldn’t find the iPod firewire ID

    ‘/usr/share/gtkpod-aac/scripts/sync-evocalendar.sh’ returned the following output:
    /home/marcus/.evolution/calendar/local/system/calendar.ics /home/marcus/.evolution/calendar/local/1200378398.8913.4@eod-laptop/calendar.ics /home/marcus/.evolution/calendar/local/1199082452.9879.0@eod-laptop/calendar.ics
    /home/marcus/.evolution/tasks/local/system/tasks.ics
    Syncing iPod … [Calendar] iconv: illegal input sequence at position 1080264
    done!

    ‘/usr/share/gtkpod-aac/scripts/sync-evolution.sh’ returned the following output:
    Trying to export from evolution:
    [: 95: ==: unexpected operator
    Syncing iPod ... [Contacts] done!

    Please specify the command to be called on the ‘Tools’ section of the preferences dialog.

    I am also trying to find out what scripts to use with the iTouch & Evolution. The choices are:

    sync-abook.sh for the address book
    sync-evocalendar.sh for the calendar & tasks
    sync-evolution.sh for notes

    I have several calendars in Evolution but only need to have one on the iTouch.

    I’m also having problems putting music & photos on the iTouch as well.

    Any advice on resolving these issues is greatly appreciated!

  • I’m sorry Marcus, I’ve just used the file manager that it’s all that I need and I don’t know how to do that.

    Anyway I think I had tried gtkpod and it didn’t work for me too.

    Maybe you can look up and see how that modules work, for example, if I’m not wrong bookmarks in Safari are saved in a simply xml file that you can open and read (and edit!) with a normal editor. If you find them it shouldn’t be difficult to “translate” them into a evolution file. I don’t know much C but if I have time I think I’d be able to do that in Phyton (as I’ve read Phyton and it looks similar to PHP :P )

    Download iFile and explore your iPod Touch, if you find the files tell me!

  • Hi @marcus,

    I had the same issue, check this link

    http://blog.cmyers.org/index.php/2009/02/07/using-the-iphone-g3-to-listen-to-music-under-debian-linux/

    Step 5

    After that you can synchronize it using gtkpod.

    Regards,

  • Hello from Russia!
    Can I quote a post in your blog with the link to you?

  • Ifuse fails in Ubuntu 9.1. See the thread at:

    http://ubuntuforums.org/showthread.php?t=1312441

  • I’ve been trying to use gtkpod with my iTouch after successfully connecting the ipod to my linux box. I followed the procedure found here (http://gtkpod.wikispaces.com/Sysinfo+File) to identify my firewire id and create the appropriate file in the iTouch. However when I run gtkpod with the iTouch connected the file I’ve created adds a line giving the model number below the firewire id causing gtkpod to not see the ipod.

    Anyone figure out what is going on with this?

    I’ve also tried using Conduit to try to synchronize between the iTouch and my linux files with no success.

    Any help would be greatly appreciated!

  • hi! I did all that, and double checked that ifuse was installed, but my ipod touch (32gig) still wont appear. Ive restarted the computer, the ipod. The ipod says its charging so its not the usb connection thats the problem. It told me ifuse was fine, theres no updates or anything but theres no sign that anything happened or that the ipods connected. Can you help me with that?

  • Alice, you’re right, it doesn’t work. It doesn’t work in the new version of Ubuntu, Ubuntu 9.10 Karmic Koala. I had used it in older versions of Ubuntu and it worked fine, but with Karmic Koala it just doesn’t work.

    The developers of iFuse will have noticed that, so maybe they’ll release a new version compatible with Karmic Koala, if so, I will update the post.

    Anyway I have to try if I find the error, I looked up the Internet and I found this:

    http://ubuntuforums.org/showthread.php?p=8563416#post8563416

    They suggest to create a folder, and then use ifuse in that folder, I don’t know if that works as I’m not in Ubuntu right now, I’ll try it, the code would be something like:

    sudo mkdir /media/iphone
    sudo ifuse /media/iphone

    If it doesn’t work, you still have an option, though I hate it. You can use VirtualBox to emulate Windows and enable the ipod touch in your emulated Windows, it will recognize it (only in Virtualbox, not outside) and you’ll be able to manage it with iTunes. You also can put your folders from Linux into your emulated Windows by creating “sharing folders”.

  • Wow! Thanks for the quick reply!!! Am getting kinda desperate. My ubuntu distro is 8.04 though. ts a remix for netbooks but still, shouldnt make a difference right?
    And my ipod is really new so maybe thats the problem…
    I’d like to try what you said anyways but how do i use ifuse in a folder? I thought it just worked as an extra bit of code to deciffer usb signals?
    Im going to try downloading usbmxd and see if that makes a difference.

  • UPDATE: I KNOW HOW TO SET UP IPOD IN KARMIC, read next comment please

    I don’t know. I just installed iFuse in (I think Ubuntu 8.04, not 8.10) and it worked at first with no problems. Then I wrote this entry and when I installed Ubuntu 9.10 I got disappointment as it didn’t work.

    I have to try what I’ve told you about that small piece of code. In the forum a user told the problem and it looked that the problem was really simple, iFuse tried to mount the ipod/iphone but it couldn’t create the folder where the ipod/iphone was meant to be mounted. I had a similar issue with my HDD and I repaired it just by creating a folder called disk (that was the name that was by default for that HDD). If the problem with iFuse is just that, try creating a folder in media with the name is meant te be created, with iPod I think that the name is “iPod” as you can see in my image, so try this:

    sudo mkdir /media/iPod
    sudo ifuse /media/iPod

    If it doesn’t work try:

    sudo mkdir /media/iPod
    sudo ifuse

    If that doesn’t work, I don’t know, sorry, I have to try now in my Ubuntu 9.10.

    After all this text, maybe the problem is that your iPod Touch has a new firmware (version) and it doesn’t work (yet?). The best option will be to contact personally with iFuse developers at this page: http://matt.colyer.name/projects/iphone-linux/index.php?title=Main_Page (see contact in the bottom).

    I hope you have luck! xD tell my if anything worked!

    P.S.: Consider using VirtualBox to emulate Windows XP under Ubuntu, how much ram do you have in your computer? With 1GB you have enough, and with about 600-700mb I think you still can run it perfectly, try it!

  • How to mount it in Karmic Koala (and maybe this also work other problems in other distros):

    http://cgsbay.com/ipod-iphone-karmic-koala/

  • Hey all,
    the issue with gtkpod is because it does not know the serial number of your iphone/ipod and it needs libgpod4 for synchronisation.
    the procedure is as follows
    Compilation of libgpod4, in terminal:
    “sudo apt-get remove libgpod-common”
    this is to prevent conflicts with possible old version, then:
    “sudo apt-get install git-core autoconf libtool libglib2.0-dev intltool gtk-doc-tools sqlite3 libsqlite3-dev zlib1g-dev libxml2-dev checkinstall libiphone-dev
    libgtk2.0 libgtk2.0-dev”
    then compilation: put this succesively to terminal:
    “git clone git://gtkpod.git.sourceforge.net/gitroot/gtkpod/libgpod”
    “cd libgpod”
    “git checkout”
    “CFLAGS=”-g -O0″ sh autogen.sh -prefix=/usr”
    “make”
    “sudo checkinstall”
    Then the program will ask you few questions:
    “Should I create a default set of package docs ?” just press ENTER
    Then write a description, e.g.: Libgpod4 SVN and press ENTER and again ENTER
    Then edit the name by pressing “2″ and ENTER and write in libgpod4 ENTER
    Then press “11″, write libgpod4 and ENTER
    Then press “3″ and write the version number 0.7.3 and ENTER
    Then enter again to install the package. You can later uninstall it by
    “dpkg -r libgpod4″

    That is done, we need to prepare iphone/ipod

    Connect your iphone/ipod, in my case by
    “ifuse /media/iphone”

    Then create folder, in my case:
    “mkdir /media/iphone/iTunes_Control/Device/”

    Obtain the serial number of your device:
    “lsusb -v | grep -i iSerial”

    You will get lot of info, what we are looking for is something like:
    iSerial 3 fb9961044533cd317cb6f2bce3424c2771ae16d6

    We are interested in fb9961044533cd317cb6f2bce3424c2771ae16d6

    Type in terminal:
    ipod-read-sysinfo-extended your_serial_number /media/iphone

    Job done. Start gtkpod, it will ask for confirmation at first use, don’t forget to unmount it at the end and also in terminal when you close gtkpod:
    “fusermount -u /media/iphone”

    If you have issues, check that you can mount your device as normal user, not as sudo. To do that, when you create mounting point do:
    “sudo mkdir /media/iphone”
    “sudo chmod 777 /media/iphone”

    Then edit line in:
    “sudo gedit /etc/fuse.conf”
    from “#user_allow_other” to “user_allow_other”

    Save, quit, restart computer. Then ad you to the fuse groupe by:
    “usermod -aG your_login fuse”

    Restart computer.

    Check you are in the group by:
    “id”
    You should see being part of group fuse

    Your device is now available by:
    “ifuse /media/iphone”
    Unmount by:
    “fusermount -u /media/iphone”

    Any questions, ask me at dsapoki@yahoo.com

    P.S.: remember, you need to have installed this together with fuse
    “sudo apt-get install libiphone-utils”

  • Very good instructions! I’ve just tried it. It works. :)

    BUT ;)

    You should change this line:

    “CFLAGS=”-g -O0″ sh autogen.sh -prefix=/usr”

    to

    “CFLAGS=”-g -O0″ sh autogen.sh -prefix=/usr”. <- Do you see the difference?! :D

  • Oh… well. Somehow the form changed it again. So, it’s apparently not your fault. Just make sure that if you copy-paste that line to put a different ” before and after this part of the line above: -g -O0 .

  • So now there’s a way to fix the gtkpod problem and sync music with no problems with the iPod Touch/iPhone?

    I have to try it! :)

  • What theme are you using in Ubuntu in this screenshot? I would like to apply it to my current Karmic install… Thanks!

  • I don’t remember, it was in my other computer. You can find it in gnome-look, I think it’s well rated so if you sort the themes by rating you’ll find it soon. It had problems with menus, some programs like OpenOffice and Firefox put black fonts and black menus so you couldn’t read anything.

    Anyway, check my new desktop, maybe you’ll prefer it:

    http://files.cgsbay.com/uploads/Images/Linux/laptop-january-2010.png

    It uses dust mod as theme (it’s like dust but with smaller scrollbar), default karmic koala human icons, bigger in the devices such as my HDD and my iPod (it uses one that I downloaded for it) and small fonts.

  • I am going to give this a try so that I can dd the whole drive to via the USB cable instead of the WiFi, many thanks of sharing this!

  • Hello

    I am using Kubuntu 9.04 and I installed iFuse.
    However all the time I connect the Ipod touch 2nd generation
    OS 3.1.2 jailbroken, kubuntu only mounts the device as a camera.

    Could the version of the OS be the problem.

    thanks

    Uwe Brauer

  • It works!!!

    Sorry I just tried out
    sudo mkdir /media/iPod
    sudo ifuse /media/iPod

    and now it works, this is really great!!!!1

  • @Uwe Brauer I don’t know, but since 10.04 you need to install nothing to mount the /media folder of your ipod/iphone, try to upgrade to 10.04 (better a fresh install)

  • It seems my last message did not arrive
    sudo ifuse /media/iPod
    works in 9.04, but not in 8.04!
    I obtain

    usbmuxd_get_device_list: error opening socket!
    No device found, is it connected?
    If it is make sure that your user has permissions to access the raw usb device.
    If you’re still having issues try unplugging the device and reconnecting it.

    so it seems the package usbmuxd
    but when I tried
    sudo apt-get install usbmuxd
    I obtain
    dpkg: error processing /var/cache/apt/archives/usbmuxd_1.0.1-0ubuntu1~h_i386.deb (–unpack):
    trying to overwrite `/lib/udev/rules.d/85-usbmuxd.rules’, which is also in package libusbmux0
    Errors were encountered while processing:
    /var/cache/apt/archives/libusbmuxd1_1.0.1-0ubuntu1~h_i386.deb
    /var/cache/apt/archives/usbmuxd_1.0.1-0ubuntu1~h_i386.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    so that looks really broken.

    I think it is time for an upgrade

    Uwe Brauer

  • i get the same error as above in Hardy … but i am fairly inexperienced in Linux … please let me know if you find a fix ….. oh yeah i have tried some of the newer versions of ubuntu and have been rather disappointed
    8.04 for life :P

    usbmuxd_get_device_list: error opening socket!
    No device found, is it connected?
    If it is make sure that your user has permissions to access the raw usb device.
    If you’re still having issues try unplugging the device and reconnecting it.

    oh and would it make any difference if i created
    sudo mkdir /media/iPhone
    sudo ifuse /media/iPhone

    i tried both .. neither worked

    meh.

  • I’d come to be of the same mind with you here. Which is not something I usually do! I love reading a post that will make people think. Also, thanks for allowing me to comment!

  • Appreciate the brilliant information. I am glad you took the time to post it. Thanks http://www.thatssocrystal.com

  • Great article. Waiting for more.

  • Super post, not often can I find such quality. Do you write any blogs with similar content?

  • hello there and thank you for your information – I have definitely picked up something new from right here. I did however expertise several technical issues using this web site, since I experienced to reload the site many times previous to I could get it to load properly. I had been wondering if your web host is OK? Not that I am complaining, but sluggish loading instances times will sometimes affect your placement in google and can damage your quality score if advertising and marketing with Adwords. Well I’m adding this RSS to my email and could look out for much more of your respective exciting content. Make sure you update this again soon..

  • This is really interesting, You’re a very skilled blogger. I’ve joined your rss feed and look forward to seeking more of your wonderful post. Also, I’ve shared your website in my social networks!

  • Nice and beneficial details. Let me join your blog site. Thnx. keep up the excellent perform

  • The Ipod touch 4g does not work with Ubuntu 11.04 :( :(

Leave a Reply