iPhone/Tool & Tip2011.02.23 14:22

데비안 패키지(deb) 파일을 터미널을 통해서 설치 해 보신 분들이라면 dpkg라는 명령어를 사용 해 본적이 있으실 겁니다.
deb 설치 방법은 이미 살펴 봤으니 삭제 방법을 알아보겠습니다.

패키지를 설치하고 나서 수동으로 삭제 할 일은 그렇게 많지 않습니다. 보통  시디아의 Manage - Packages메뉴를 통해서 삭제를 하고 이렇게 하는게 편합니다. 다만 시디아의 오류로 인해서 삭제가 안되거나 분명 설치를 했는데 시디아에 나타나지 않는 앱들을 삭제할때 사용하는 방법 입니다.

또한 아래 처럼 설치 할 때는 종속 어플들을 여러개 설치 하면서 삭제 할 때는 해당 어플만 삭제 될 경우 나머지까지 깨끗하게 삭제 하고 싶을때 사용 하기도 합니다.


※ 해당 작업은 아이폰에서 Mobile Terminal을 이용하거나 PuTTY같은 SSH 클라이언트를 이용하시면 됩니다.


root로 로그인 변경하기 위해 "su -"를 입력 합니다. Mobile Terminal의경우 이 단계에서 비밀 번호를 요구 할 수 있습니다. 따로 변경을 안하셨다면 alpine입니다.



▷ 설치 되어있는 패키지 확인 하기 방법1.
dpkg -l또는 dpkg --list로 설치 되어 있는 모든 패키지를 출력 할 수 있습니다. 하지만 라인이 너무 길어서 삭제를 원하는 패키지의 정보를 확인 하기 어렵습니다. 그래서 보통 grep을 함께 사용합니다.

예) MobileTerminal을 찾아서 삭제 해 보겠습니다. 키워드는 mobile정도가 적당 할꺼 같네요.
"dpkg -l | grep 찾을문자"형식으로 입력 하시면 됩니다.
dpkg -l | grep mobile

저의 경우 결과가 2개 나왔네요. 이중에 원하던 결과는 첫번째 라인 이군요. 여기서 중요한건 붉은 색으로 강조한 부분 입니다. 이것이 패키지의 정확한 명칭 입니다. 이것을 알고 있어야 삭제가 가능합니다.

팁: 해당 명령은 /var/lib/dpkg/폴더 아래의 status파일을 참조 합니다. 해당 파일을 열어보시면 설치 되어 있는 모든 패키지의 정보를 확인 할 수 있습니다.


▷ 설치 되어있는 패키지 확인 하기 방법2.
설치 했던 앱의 정보가 하나도 없어서 위의 방법으로 찾지 못하지만 설치했던 deb파일을 가지고 있을때 사용하는 방법 입니다.
해당 deb파일을 아이폰의 /private/var/root폴더에 복사 해 주고 아래 명령어를 입력 합니다.
"dpkg --info 확인할 deb파일"형식으로 입력 하시면 됩니다.
dpkg --info mobilterminal_511-1.deb

여기서 중요한 부분은 Package부분 입니다. 해당 패키지의 정확한 명칭이 출력 되는 부분 입니다.

팁: deb파일을 설치 할때 어떤 경로에 어떤 파일들이 설치 되는지 알아볼때는 dpkg --contents를 이용하면 됩니다.
dpkg --contents mobileterminal_511-1.deb


팁: 이미 설치되어 있는 패키지에 의해 설치 되어 있는 파일들이 궁금하면 /private/var/lib/dpkg/info폴더 아래를 살펴보면 "패키지.list"파일들이 있습니다. 이 파일을 열어보면 어떤 경로에 어떤 파일들이 설치 되어 있는지 확인 하실 수 있습니다.
최후의 경우 수동 삭제 할때 파일 리스트를 확인 하고 일일이 삭제하면 됩니다. @.@



위의 작업으로 설치되어 있는 패키지명을 알아 냈습니다. 이제 삭제를 하면 되겠네요 ^^;
▷ 설정 파일은 남기고 삭제하기: dpkg -r또는 dpkg --remove
▷ 설정 파일까지 깨끗하게 삭제하기: dpkg -P또는 dpkg --purge

위 처럼 두가지 방법이 있으니 필요에 따라 사용하시면 됩니다.

저는 설정 파일까지 깨끗하게 삭제 해 보겠습니다.
dpkg -P com.xsellize.mobileterminal



삭제가 완료 되었습니다.

※ 아이폰에 시디아가 실행되어 있을때는 삭제가 정상적으로 진행되지 않을 수 있으니 시디아는 종료후에 삭제하세요.



Posted by prologos

티스토리 툴바