Login | Register
Use Ubuntu and iFuse to Delete iPhone Calendars PDF Print E-mail
Written by Ben Cheek    |    Wednesday, 31 August 2011 10:07

I try to write tech tips whenever I do something technical, even with my personal technology, especially when I couldn't find a single source on the Internet with the solution I needed.  Last night, I ran into just such a case with my wife's iPhone 3G.  She inherited a jailbroken one (this method will supposedly work with a non-jailbroken one too) and it came with several calendars from the pervious owner.  Famously, iPhone's core calendar app doesn't allow you to delete calendars unless you do so as part of iTunes sync.

I used the following method to remove the calendars with her iPhone and my MSI netbook running Ubuntu 10.10:

 

1. First, Install iFuse

In terminal type:

 

sudo apt-get install ifuse

 

 

2. Add yourself to the "fuse" user group

Go to Adminisration >> Users and Groups.  Click the "Manage Groups" button.  Scroll down the list and select the "Fuse" group.  Click the "Properties" button to the right.  Check your name in the text area to add yourself to the group.  You'll likely be asked to enter your password to Autheniticate.  Close all the dialogs.

3. Create an accessible mount point for the iPhone

In terminal type:

 

sudo mkdir /mnt/iphone

 

 

and give all users permission to access the mount point:

 

sudo chmod 777 /mnt/iphone

 

 

4. Mount the iPhone

In terminal type:

 

ifuse --root /mnt/iphone -s

 

 

5. Copy the Calendar DB to your computer

In terminal type:

 

sudo cp /mnt/iphone/private/var/mobile/Library/Calendar/Calendar.sqlitedb ~/Desktop/Calendar.sqlitedb

 

 

6. Get the SQLite Browser

In terminal type:

 

sudo apt-get install sqlitebrowser

 

 

7. Edit the computer copy of the Calendar DB

Open SQLite Browser by finding it in Applications >> Programming.

Open your computer copy of Calendar.sqlitedb in your Desktop folder.

Click the "Browse Data" Tab.  Select "Calendar" from the drop down menu on the top left.  You'll now see all the calenders on the phone in the list, one per row.  DON'T delete "Default" and "Calendar".  Select any calendar you don't want by clicking on it row and clicking the "Delete Record" button on the top right.

"Save" when you're done.

(This portion based on ??Que Quotion's method here.)

8. Copy the computer copy back to the phone

In terminal type:

 

sudo cp ~/Desktop/Calendar.sqlitedb /mnt/iphone/private/var/mobile/Library/Calendar/Calendar.sqlitedb 

 

 

You can unmount the phone with:

 

sudo umount /mnt/iphone

 

In some cases, it may say the device is busy.  I think it can be unplugged without harm.

 

Last Updated on Wednesday, 31 August 2011 10:40
 

Comments  

 
0 #1 2012-05-19 02:09
another way to add to the user to the fuse group sudo gpasswd -a $LOGNAME fuse
Quote
 
 
0 #2 2012-05-19 02:11
This did not work on my un-jailbroken iPad, it says "Failed to start AFC service 'com.apple.afc2' on the device.
This service enables access to the root filesystem of your device.
Your device needs to be jailbroken and have the AFC2 service installed."

The newer version may fix it though.
Quote
 

Add comment


Security code
Refresh