# 터치 2세대와 해킹된 펌웨어 2.2.1를 사용하였습니다.

1.jpg
위그림에서 볼수 있듯이 사용자에게 보여지는 메모리구조는 오디오, 비디오, 사진, 프로그램, 기타, 여유 공간 등으로 나뉘어진다.

우리가 궁금해 하는 기타부분에는 연락처, 일정등 여러가지 데이타들이 합쳐져있다. 물론 순수 데이타 뿐만 아니라 이들을 관리하기 위한 메타데이타와 데이타베이스 파일등도 포함되기 때문에 보다시피 꽤 많은 용량을 차지 하고 있다.

그런데 가끔 기타 용량이 어마어마하게 늘어나는 경우가 있다. 다음과 같은 경우 기타 용량의 급격한 증가가 발생한다.
* 음악, 비디오, 사진, 프로그램 등이 동기화 될때 새로운 항목을 잘복사해 설치한후 temp 파일을 제대로 지워주지 못한경우
* 음악, 비디오, 사진, 프로그램 등이 동기화 될때 터치나 아이튠즈에서 동기화를 취소할경우 정상적인 경우는 temp파일들이 삭제되야 하지만 가끔 삭제가 되지 않는 경우가 있다.
* 프로그램 설치시 아이튠즈가 다운되 아이튠즈를 강제종료하면 기타용량에 그대로 남게되는데 이때 다시 아이튠즈를 실행하고 동기화를 해서 프로그램을 정상적으로 설치해도 기타 용량에 계속 남게된다.

일단 간단히 요약하면 기타용량에 들어가야 하는 정상적인 파일들은 제외하고 일반적으로 동기화시 문제가 발생하면 기타 용량이 늘어나게 된다.

800~900메가 정도되는 터치,아이폰용 미국 네비게이션 프로그램인 G-Map의 설치도중 아이튠즈가 다운되는 상태가 발생했다. 용량이 워낙크다보니 터치내에서 압축을 해제하면서 설치가 진행되다가 아이튠즈가 다운되버린듯 하다. 아이튠즈를 다시 실행해보니 기타 용량이 엄청나게 늘어나있고 다시 설치해서 설치가 완료되도 용량이 줄어들지 않았다.

음악,비디오,사진,프로그램중 어떤것이든 동기화가 진행중일때 아이튠즈의 음악탭이나 다른 탭을 선택했다가 다시 자신의 기기를 클릭하면 기타용량이 증가되있는 것을 볼수 있는데, 동기화중에는 기타용량부분에 파일을 전송하고 전송된 파일을 정상적인 폴더로 이동시키고 메타데이타에도 추가하고 나면 기타 용량은 줄어들어야 정상이다.
2.jpg
3.jpg  4.jpg
5.jpg

프로그램을 동기화 되는 과정을 보면 아이튠즈에 추가된 프로그램들은 ipa라는 압축 파일로 존재하게 되는데 이 파일이 터치로 통채로 전송되고 전송이 완료되면 터치내에서 이 압축파일을 압축해제한다. 압축해제가 완료되면 압축해제된 폴더를 어플리케이션 폴더로 이동시키고 스프링보드에 아이콘을 추가시키고 터치에서 어플리케이션이 실행되기위한 설정파일들도 설정하게 된다. 이과정이 완료되면 프로그램의 설치가 끝난다.

터치의 루트 디렉토리의 구조를 보면 아래와 같은 모습을 볼수 있다.
6.jpg

아이튠즈와 터치가 동기화 될때 설치될 파일이 전송되는 위치는 /private/var/tmp 이다. 현재 동기화가 진행중이지만 파일이 아직 전송이 끝나지 않아 디렉토리가 보이지 않고 있다.
7.jpg

ipa파일이 전송이 완료되면 아이튠즈에서의 동기화 과정은 50%정도 진행된 모습을 보이게 되고 아래처럼 install_staging.xxxxxx 이런 폴더가 보이게 된다. 이 폴더가 전송된 ipa파일을 본격적으로 설치하는 폴더이다.
8.jpg

아이튠즈의 ipa파일은 zip파일형식으로 아래 그림처럼 ipa파일을 zip파일로 파일명을 바꾸고 foo_extracted 에 압축이 해제 되고 있다.
9.jpg

foo_extracted 폴더에는 Payload라는 폴더가 보인다.
10.jpg

Payload 폴더 속에 실제 어플리케이션 이름의 폴더가 보인다. 이 폴더속에 실제 설치파일들이 존재한다.
11.jpg

실제 어플리케이션 이름의 폴더로 들어오면 이제 설치파일들이 보인다.
12.jpg

동기화 중이거나 또는 동기화에 문제가 생긴 경우 아래처럼 기타용량이 엄청나게 증가한것을 볼수 있다. ipa파일의 용량800~900메가와 이 파일이 압축이 해제되고 있는 파일들의 용량까지 합쳐서 실로 엄청난 용량이다.
13.jpg

만약 동기화중 문제가 생겨 비정상적으로 기타 용량이 증가한 경우 다시 동기화를 하기 전에 /private/var/tmp/install_staging.xxxxxx 이 폴더를 통채로 삭제해야 한다. 삭제하지 않고 그냥 동기화 한경우 용량이 그대로 남아있는 경우가 간혹 발생했다. 이 폴더를 날려버리고 터치의 연결을 해제했다가 다시 연결하면 기타 용량이 원래 수준으로 내려간걸 볼수 있다. 이제 다시 동기화를 해서 프로그램이 설치되면 정상적인 모습이 유지된다.
1.jpg

# 프로그램의 경우는 위와 같이 tmp폴더가 따로 존재해서 기타 용량 줄이기가 가능하지만 음악 파일과 동영상의 경우 따로 tmp 폴더가 없이 바로 미디어파일 폴더로 들어가버린다.
14.jpg
터치에 음악 파일과 동영상을 동기화 시키면 이 파일들은 /private/var/mobile/Media/iTunes_Control/Music/F## 폴더들에 들어가게 되는데 이 F##폴더가 하나가 아니라 여러개로 이루어져있다. 또한 파일명도 알아볼수가 없다. 음악과 동영상의 동기화중 문제가 생긴 경우는 파일이 이곳에 존재는 하지만 목록과 메타 DB에 추가가 되지 못한 상황으로 가장 깔끔한 방법은 이 F##폴더에 들어있는 파일들을 모두다 삭제한후(폴더는 삭제가 안된다고 한다) 다시 동기화 해주는 것이 좋다.