Recovering iTunes Music

By Paulus, 31 January, 2008

Occasionally I will get a customer in my store whose library has been corrupt or lost but their music is still on their iPod. The way that apple designed iTunes is that if the library gets messed up, you run a high risk of losing your music. Fortunately there is a way around that. What I do to save the customer's music is take their iPod, connect it to my Linux computer. In order to see the files on the iPod, you're going to need a few drivers either compiled as modules or into the kernel:

  • Device Drivers
    • USB Support
      • <*> Support for Host-side USB
      • [*] USB device filesystem
      • <*> EHCI HCD (USB 2.0) support
      • <*> OHCI HCD support
      • <*> UHCI HCD (most Intel and VIA) support
      • <*> USB Mass Storage support
      • [*] USB Mass Storage verbose debug
      • [*] Datafab Compact Flash Reader support (EXPERIMENTAL)
      • [*] Freecom USB/ATAPI Bridge support
      • [*] ISD-200 USB/ATA Bridge support
      • [*] Microtech/ZiO! CompactFlash/SmartMedia support
      • [*] USBAT/USBAT02-based storage support (EXPERIMENTAL)
      • [*] SanDisk SDDR-09 (and other SmartMedia) support (EXPERIMENTAL)
      • [*] SanDisk SDDR-55 SmartMedia support (EXPERIMENTAL)
      • [*] Lexar Jumpshot Compact Flash Reader (EXPERIMENTAL)
  • File systems
    • DOS/FAT/NT Filesystems
      • <*> MSDOS fs support
      • <*> VFAT (Windows-95) fs support
    • Miscellaneous filesystems
      • <*> Apple Macintosh file system support (EXPERIMENTAL)
      • <*> Apple Extended HFS file system support.

I compiled in all the things under USB support for various other things. If you don't need them then you don't have to compile them into the kernel.

Once you recompile the kernel or compile the modules and load them, you can connect the iPod to the computer and then mount it. When you try mounting it, it's going to be a SCSI device. After you have mounted the iPod, Copy all the m4a files from the ipod_control folder, then re-import them into iTunes.