*^^*
iPhone(iPod Touch)을 사용중..
인스톨러를 이용해 어플리케이션을 추가하다보면..
또는 Apache웹서버에 PDF 화일을 넣다보면...
다음과 같이..
"경고, 디스크 사용 공간이 부족합니다. 일부 사진 또는 비디오를 삭제하십시오."
라는 문구가 뜬다.
사용자 삽입 이미지
해결법은 아주 간단하다.

1) iPhone(iPod Touch)의 시스템 영역 확보하기 - 응용프로그램영역 확보

아이폰과 아이팟 터치의 Filesystem은.. 다음과 같이 두가지 파티션으로 나뉘어져 있다.
사용자 삽입 이미지
위에서..
/로 마운트된 /dev/disk0s1 300M짜리에.. OS와 모든 어플리케이션이 들어가 있다.
/private/var 로 마운트된 /dev/disk0s2 3.5G짜리가.. 음악과 동영상 등 각종 data영역이다.
여기서...
어플리케이션을 설치하려는데... 저장공간이 부족하다는 메시지는..
/아래에 있는 Applications 디렉토리에 어플리케이션을 설치하려는데..
/disk0s1이 꽉차있으므로 응용프로그램을 설치할 수 없다는 이야기다.
즉 /dev/disk0s1 300M짜리에 공간이 없다는 것을 뜻한다.

그러므로..
응용프로그램이 설치되는 /Applications 디렉토리를 .. 용량이 남아도는 /disk0s2 로 옮기면 될것이다.
# mv /Applications /private/var/Applications
사용자 삽입 이미지
시스템 영역의 Applications 디렉토리가 데이터 영역으로 이동 되었으므로..
이제 심볼릭 링크를 시스템 영역에 만들어주어.. 
Applcations 디렉토리 참조시.. 이동된 곳으로 연결해주면 된다.
# ln -s /private/var/Applications /Applications
사용자 삽입 이미지
이제끝~!!
아이폰을 재시작 시키면 된다.


2) Apache 서버의 DocumentRoot 를 데이터영역으로 설정하자.

아이폰(아이팟 터치)에서 아파치 서버의 역할은 무궁무진 하다.
각종 PDF, mp3, 이미지 화일등의 뷰어로 사용되면서..
동시에 php와 perl을 설치해 웹어플리케이션을 돌릴 수 있다.
그런데.. Apache 서버의 기본디렉토리는.. /Library/Webserver/Documents 이다.
즉.. 시스템 영역을 사용한다는 소리.
그러므로..
아파치 서버의 공간을 확보하기 위해서..
역시 Apache의 DocumentRoot를 다음과 같이 변경해 주자.

우선 아파치 서버의 기본 디렉토리루트가 될 디렉토리를 만든다.
# mkdir /private/var/webserver
사용자 삽입 이미지
그리고..
/etc/httpd/httpd.conf 화일을 다운받아서..편집한다.
다운받기위해..
# exit  
iPhone과 접속종료하고...
맥킨토시 터미널에서
$ scp root@192.168.1.104:/etc/httpd/httpd.conf .
(일반sftp로 전송 받아도 상관없다. 편집하기 위한것이므로.)
(192.168.1.104는 아이폰의 IP)
사용자 삽입 이미지
편집기로 열어서
283행 근처..
DocumentRoot "/private/var/webserver"
308행 근처..
<Directory "/private/var/webserver">
로 수정후..
사용자 삽입 이미지
수정된 httpd.conf 를 업로드.
$ scp ./httpd.conf root@192.168.1.104:/etc/httpd/
사용자 삽입 이미지
이제 아이폰에서 터미널 열고..
아파치를 재시작 해주면 된다.
# apachectl restart
사용자 삽입 이미지
자~! 끝.

모든 아파치 서버의 기본디렉토리루트는.. 이제 /private/var/webserver 이다.
/private/var/webserver 에.. 주루룩 화일들을 집어넣어서 사용하면 된다.

이제는 더이상
"경고, 디스크 사용 공간이 부족합니다. 일부 사진 또는 비디오를 삭제하십시오."
라는 경고 메시지는 절대 볼일이 없을 것이다.

+^^+

+ Recent posts