Syncing your iPod Touch with iTunes on your Mac or Windows is a no-brain job. Simply plug in your iPod, fire up your iTunes and your synchronization will be done in a minute. However, since there is no Linux version of iTunes, there is almost no way that you can sync your iPod Touch with your computer. If you are using an Ubuntu system and you don’t want to create a Windows/Ubuntu dual boot just to sync your iPod Touch, here’s a tutorial that teaches you how to sync your iPod Touch with a WinXP virtual machine in Ubuntu Intrepid.
(This tutorial was tested using a iPod Touch 1st generation. I have not tested iPod Touch 2nd Gen, iPhone 2G/3G, but I guess they should work as well.)
(skip this step if you have already installed Virtualbox in your system)
Add the Virtualbox repository to your Apt list. In your terminal:
gksu gedit /etc/apt/sources.list
Add the following line to the end of the file. Save and close.
deb http://download.virtualbox.org/virtualbox/debian intrepid non-free
Add the gpg key
wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
Update the repository and install Virtualbox
sudo apt-get update
sudo apt-get install virtualbox-2.0
During the installation, you will receive a prompt to ask you to add users to vboxusers group.
click OK to continue.
You will then receive the next prompt to recompile the kernel for vboxdrv
click OK to continue, follow by Yes to compile the vboxdrv kernel.
When installation is completed, you need to add yourself to the vboxusr group.
Go to System -> Administration -> Users and Groups
Press the Unlock button. Enter your password and Authenticate.
Press Manage Groups.
Scroll down until you see the vboxusers. Highlight it and click Properties.
Check your username and click OK. Close everything.
Remember the Group ID (in this case, the group ID is 127). You will need to use it later.
Back in the terminal,
echo “vboxdrv” | sudo tee -a /etc/modules
to start the vboxdrv module during bootup.
Configuring the USB support
The following is to configure the Virtualbox to detect any USB devices that are plugged into your system.
gksu gedit /etc/fstab
Add the following line to the end of the file
#usbfs for virtualbox
none /proc/bus/usb usbfs devgid=GROUP_ID,devmode=664 0 0
Replace the GROUP_ID by the group ID that you have recorded just now.
Recompile the kernel USB support
In the terminal, type
You should see something like this
Next, using the kernel information you just obtained, install the source code of the kernel
sudo apt-get build-dep linux-source-2.6.27
sudo apt-get install linux-source-2.6.27 build-essential
Once it is done, type the following to the terminal, line by line
tar -jxvf /usr/src/linux-source-2.6.27.tar.bz2
perl -pi.bak -e 's/16384/131072/' devio.c
make -C /lib/modules/`uname -r`/build/ M=`pwd` modules
strip --strip-debug usbcore.ko
sudo install -m644 -b usbcore.ko /lib/modules/`uname -r`/kernel/drivers/usb/core
sudo depmod -ae
sudo update-initramfs -u
Reboot the computer.
Install Windows XP in your Virtualbox. (skip this step if you have already done so).
Connecting iPod Touch to Windows XP VM
Plug in your iPod Touch using the USB cable.
Ubuntu will detect it and ask if you want to open it with F-spot manager. Click Unmount
Next, open your Virtualbox and boot up the Windows XP VM.
Install iTunes in your Win XP VM.
Activate the iPod Touch by going to Devices -> USB Devices -> Apple Inc. iPod
The WinXP VM should recognize the USB device and configure it for usage.
Open your iTunes. You should be able to sync it like you do in a native Mac or Windows environment.
Note: I have tested this with a iPod Touch 1st Generation. I have not tested this with iPod Touch 2G and iPhone, but they should work as well.
[Reference: Ubuntu Forums]