Using link scripts with /system


Well-known member
Jun 4, 2012
Visit site
Been looking at the kitkat roms for the Optimus S and was wondering whether it'd be possible to use link scripts to move system to the SD. The big problem with running kitkat on the optimus is a small internal system partition. Options are currently:

  1. (1) cut as much out of system as possible so it fits. I'd like the full system partition.
  2. (2) use OS2SD with 3 partitions on SD card of /data, /system, /cache. I find there are advantages to being able to move single apps to SD using Link2SD (some don't like running off of SD, others just run better of of internal). I also see performance/battery problems are common with this setup.

So what I'd like to do is simply link some or all of /system to my SD. Is linking some or all of /system to SD even possible or will android get angry.

Currently on my Optimus, I'm running REBORN ROM with a little personal tweak. I've got my cache and dalvik-cache linked to the same partition that Link2SD creates. I then link my apps (some, not all) and their libraries to SD using Link2SD. This way I have virtually no app count limitation whatsoever (currently have 126 apps I think). I'm sure I could write the script that would link an existing /system to SD (although with my android knowledge it'd be ugly--you should see my script linking cache and dalvik), but how can I do so when I'm installing a new ROM, especially when the /system I want won't fit on internal to begin with. Would it be feasible to copy system from the zip to where I want to link in my SD, and then add a link script to the zip pointing at what I copied/pasted? Doesn't sound like something for someone with brickiphobia (the optimus S is my only phone).


Well-known member
Jun 4, 2012
Visit site
Here's the script I used with reborn rom to move cache and dalvik to SD:


# from A
setprop 1k.filesystem.ready 1;

# empty mount permission sdext2
busybox mount -o rw,remount -t rootfs rootfs /
busybox rm -rf /data/sdext2
busybox mkdir /data/sdext2
busybox mount -o rw,nosuid,nodev,noatime,nodiratime -t ext2 /dev/block/vold/179:2 /data/sdext2
busybox chmod 0771 /data/sdext2

# move cache & bind-mounts it

busybox mkdir /data/sdext2/cache
cp -r /cache/* /data/sdext2/cache
umount /cache
busybox mount -o bind /data/sdext2/cache /cache
busybox chown 1000:2001 /data/sdext2/cache
busybox chmod 0771 /data/sdext2/cache
busybox chown 1000:2001 /cache
busybox chmod 0771 /cache

# edited from
if [ ! -d /data/sdext2/cache/dalvik-cache ]
busybox rm -rf /data/sdext2/cache/dalvik-cache /data/dalvik-cache
mkdir /data/sdext2/cache/dalvik-cache /data/dalvik-cache

busybox chown 1000:1000 /data/sdext2/cache/dalvik-cache
busybox chmod 0771 /data/sdext2/cache/dalvik-cache

# bind mount dalvik-cache
busybox mount -o bind /data/sdext2/cache/dalvik-cache /data/dalvik-cache
busybox chown 1000:1000 /data/dalvik-cache
busybox chmod 0771 /data/dalvik-cache

# remove debugger memory dumps
busybox rm -rf /data/tombstones/*

Sent from my Nexus 7 using AC Forums mobile app

Trending Posts

Forum statistics

Latest member
Rodrigo Domingues