Remove Application space limit

1.1.1 / 1.1.2 only


From blog.psmxy.org

Apple’s 1.1.1 firmware is much larger than 1.0.2 was. That leaves much less space for installing 3rd-party applications. Couple that with the fact the Installer.app 3.0 doesn’t tell you how much free space you have left, and you have a recipe for disaster. Additionally, I found that by default, you cannot have more than 80 application directories in /Applications, or the SpringBoard crashes and will not start. What’s a person to do? Well, I don’t know what you will do, but this is what I did (Note: if you screw up your iPhone, I take no responsibility):

  1. I installed SummerBoard, which allows for more than 80 application directories in /Applications
  2. I remounted the Media partition without the noexec option, moved my entire /Applications directory to /var/root/Applications, and made /Applications a symbolic link that points to private/var/root/Applications.
Item #1 is simple to do: just install it from within Installer.app. Item #2 requires a little more explanation. What follows is a little tutorial on how I did it. This tutorial assumes you know how to ssh into your iPhone and that you can do so. It also assumes you know how to edit files on your iPhone and that you have basic command line skills. First, remove the “noexec” option from the Media partition, and remount it. Note: this step may not be needed, as some of the recent jailbreak procedures remove it for you.

  1. (this step is not necessary for 1.1.2 or higher)
    ssh into your iPhone
    edit /etc/fstab
    change the second line to change “rw,noexec” to “rw”
    When you are done, the second line should look like this:
    /dev/disk0s2 /private/var hfs rw 0 2

  2. Now power your iPhone off and back on again, before proceeding. Now we’ll move the Applications directory:
    ssh into your iPhone
    cd /
    cp -pr Applications /var/root
    mv Applications Applications.old
    ln -s private/var/root/Applications /Applications

  3. Now power your iPhone off and back on again. If everything is working ok, finish up by doing this:
    ssh into your iPhone
    cd /
    rm -rf Applications.old
    Now install all the apps you want. :) Note: A few packages still get installed into the root partition, but there is plenty of room for those, at this time. The vast majority go in Applications though, which now has plenty of room. Enjoy!
Final note: I haven’t tried this, but if you restore your iPhone, the root partition gets wiped and recreated. What this means is that the /Applications symbolic link will be replaced by a new, real /Applications directory, with the default Apple apps in it. You should be able to redo everything above, except for step #3 (where you copy /Applications), to recover, and all your applications will be back - because they are on a partition that doesn’t get wiped during a restore. Note, however, that a handful of apps do install a few files outside of /Applications and those files will have been lost. A few examples of apps that do this are: Ants, Dock, OpenSSH, BSD Subsystem, and others. You will have to reinstall them to get them working again. If all else fails, you can always 1) restore 2) delete /var/root/Applications and 3) start fresh.
Related Entries:
Rearranging Application Icons
Boot iPhone or iPod Touch in verbose mode
Fix for Weather icon not changing
Removing Dropear SSH from iPhone or iPod Touch
How to make screenshots on iPhone or iPod Touch
Comments (7)  Permalink