제가 일전에 /cache파티션을 사용할수 있는 부트 이미지를 만들었다고 언급한적이 있었는데, 업로드 요청이 있어서 여기에 올립니다.. 시도를 해 보시는건 자유이고, 거기에 대한 답변도 드리겠습니다만.. 위험할수 있는 과정이라, 복구가 가능하신 분만 시도하십시오. 


커넬은 다음 링크에서 받으실수 있습니다. 일단 제 커넬은 Chevy의 OC Kernel과 동일하고 Startup Script만 다릅니다. 


http://www.4shared.com/file/242937161/342179c3/update.html


이 커넬이 하는 역할은 간단한데요, cache partition을 사용할수 있도록 해 줍니다.. 구체적으로는 디렉토리가 적어도 771 permission을 가지고 있어야 SuperUser권한이 없는 어플들이 디렉토리를 사용할수 있는데, /cache파티션은 770퍼미션이라, 접근을 못하게 되어 있습니다.. 따라서 부팅을 할때 부트스크립트에 771 퍼미션으로 바꿔주는 코드를 넣었습니다.. 


그러면 데이터를 /cache파티션으로 옮기는 작업입니다.. adb로 하셔도 되고, Android Terminal로 하셔도 됩니다.. 먼저 /data/data가 90MB이하인지 확인해야 됩니다.. /cache파티션의 크기가 그것밖에는 안되니 말입니다.. 


1. su

2. cd /data/data

3. busybox du -k 


이렇게 하면 숫자가 하나 출력되는데, 단위는 kb입니다.. 90메가 보다 작은지 확인되었으면 /cache로 옮길수 있습니다. 일단 제 커넬로 update를 하십시오. 재부팅하신다면 volume up + camera button으로 들어가서 allow update.zip 하신 다음 apply update.zip인가 하시면 되죠.. 그리고 재부팅이 끝나셨으면, 다시 터미널로 나가서, (재부팅 명령어는 terminal에서 reboot)


1. su

2. cd /

3. busybox ls -al


을 실행하셔서, /cache파티션의 퍼미션이 771인지 확인하십시오. 771이라면 제 커넬로 업데이트가 제대로 된것입니다. 


drwxrwx--x    1 1000   2001    2048 Feb 22 12:12 cache


뭐 이런식으로 보입니다. rwxrwx--x가 771이죠.. 그 다음엔


1. cd /cache

2. busybox cp -pr /data/data .

3. busybox chown 1000:1000 /cache/data

4. busybox chmod 771 /cache/data

5. sync


이렇게 하면 모든 데이터가 /cache로 카피는 되었습니다.. 여기서 한번 재부팅을 하신 다음 /cache파티션에 데이터가 남아 있는지 확인하세요.. Pete의 0.6버전이던가에서 재부팅할때마다 /cache파티션의 데이터가 날아가는 문제가 있었습니다.. 제가 업로드한 커넬로 업데이트 했을땐 그런 문제가 없었는데, 혹시나 확인차원에서.. 


그 다음에, Task killer로 모든 어플을 죽인다음, (혹시나 모르니까) 다시 터미널로 가서


1. su

2. cd /data

3. busybox rm -R data

4. busybox ln -s /cache/data .


그리고 재부팅하면.. 끝입니다.. 확인하고 싶으시면.. 


1. su

2. busybox df -h


를 실행하시면 각 파티션에서 얼마만큼 사용되었는지 보여주는데, cache파티션이 사용되는걸 보실수 있습니다.. 


단.. 시도하시기 전에 데이터 전부 백업 잘 하십시오.. ^^