OS X 안에는 사용자가 인터넷에서 내려받은 모든 파일의 출처를 기록해 놓는 보관소가 있다?

2013. 1. 21. 00:54    작성자: ONE™

들어가며

다들 이런 경험 한 번쯤은 있으실 것 같습니다. 인터넷에서 내려받은 파일을 실수로, 혹은 이제 필요없을 줄 알고 삭제했는데 시간이 지난 뒤에 다시 필요해져서 인터넷을 한참동안 뒤적거려 보신 경험을 말이죠. 웹사이트를 즐겨찾기라도 해놨으면 그나마 파일을 찾는 시간과 수고를 상당히 덜 수 있는데, 그렇지 않은 경우는 미치고 팔짝 뛸 노릇입니다.

하지만 OS X은 사용자가 인터넷에서 파일을 내려받을 때마다 그 출처를 시스템 한 켠에 상세히 기록해 놓기 때문에 파일을 찾는 수고를 상당히 경감할 수 있습니다. ▼

이 기록 덕분에 command + I 단축키로 파일 정보 창을 띄워 파일의 출처를 쉽게 확인할 수 있으며 ▼

파일을 실행하기에 앞서 해당 파일이 외부에서 유입된 파일이니 주의하라는 경고 메시지를 띄우는 용도에도 이용되고 있습니다. ▼

다시 본론으로 돌아와, 이처럼 사용자가 인터넷에서 파일을 내려받을 때마다 출처를 속속들이 기록해 놓기 때문에 추후 해당 파일이 다시 필요한 경우 이를 참조해 파일을 다시 받는 용도로도 이용할 수 있습니다. 

그런데 이 파일(com.apple.LaunchServices.QuarantineEventsV2)은 SQLite 데이터베이스 방식으로 저장되어 있기 때문에 일반적인 텍스트 편집기에서는 바로 열어볼 수 없고, sqlite3 같은 특수한 터미널 명령어를 이용해야 내용을 들여다 볼 수 있습니다. ▼

sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV* 'select LSQuarantineDataURLString from LSQuarantineEvent'

터미널에 위 명령어를 입력하면 OS X이 설치된 직후부터 최근까지 사용자가 인터넷에서 내려받은 파일의 경로가 주루룩 나열됩니다. ▼

터미널 명령어를 이용한 방법은 별다른 프로그램 설치없이 인터넷에서 내려받은 파일의 경로를 비교적 손쉽게 확인할 수 있다는 점이 장점이지만... 목록의 시인성이 상당히 떨어집니다. 터미널 사용이 익숙하지 않으신 분들은 이걸 '해독'하느니 그냥 인터넷 검색하는데 더 노력을 들이겠다고 하실지도 모르겠습니다. 그래서 조금 더 '인간적인' 방법을 준비해 봤습니다.

사용 방법

1. 파인더를 실행한 다음 command + shift + g 단축키를 입력한 다음 ~/Library/Preferences/ 경로를 입력합니다. ▼

2. com.apple.LaunchServices.QuarantineEventsV2 라는 이름의 파일이 보입니다. ▼

3. ➥ 링크에서 SQLite Database Browser를 내려받습니다. SQLite 데이터베이스를 GUI로 관리할 수 있는 무료 소프트웨어입니다. ▼

4. 내려받은 SQLite Database Browser를 실행해줍니다. ▼

5. 앞서 파인더에서 찾아준 com.apple.LaunchServices.QuarantineEventsV2 파일을 닥(Dock)에 있는 SQLite Database Browser 아이콘으로 끌어넣어줍니다. ▼

6. 이후 SQLite Database Browser 프로그램의 상단에서 'Browse Data" 탭을 클릭해 주시면 → (1) 사용자가 인터넷에서 내려받은 순서대로 (2) 어떤 프로그램으로 내려받았는지와 (3) 해당 파일의 인터넷 경로가 나타납니다. 터미널 화면보다 훨씬 알아보기가 쉽죠? ▼

7. 이제 창을 위아래로 스크롤하면서 지금까지 내려받았던 파일들의 내역을 찬찬히 살펴보시고 필요하신 파일이 있는지 찾아주시면 되겠습니다. 다시 내려받을 파일을 발견하면 파일의 위 (4)번 부근을 우클릭해 경로를 복사한 후 ▼

8. 사파리나 크롬같은 웹 브라우저의 주소 막대에 넣어주시면 (인터넷 서버에 아직 파일이 남아있다는 전재하에) 파일의 다운로드가 정상적으로 시작됩니다. ▼



같이 읽으면 좋은 글
• 지금 사용하고 있는 맥, 보증 기간이 얼마나 남았을까? - OS X에서 애플 케어 기간을 간편하게 조회하는 방법

    
  1. Blog Icon
    아임어디제이

    와.. 정말 좋은 팁입니다.
    저는 아직 맥 초보라서 나중에 재설치할 때를 대비해 인터넷에서 다운로드한 파일들을 따로 모으고 있었거든요.
    그런데, 그렇게 하면 단점이 해당 파일이 업데이트 되었을 때는 반영하지 못한다는 것이었는데 이렇게 하면 최신 버전의 파일을 받을 수 있겠네요. ㅎㅎ (물론 파일명은 동일하다는 전제하에..)
    감사합니다!!

  2. Blog Icon
    s0und0ne

    파일정보와 외부유입파일여부룰 어떻게 판단하는지 궁금했는데 이거였군요!!! 궁금한게 생겼는데요 ... 이 정보는 클린설치할때까지 계속 쌓일까요?? 텍스트형식이라서 크게 용량을 차지하지는 않겠지만^^;;;

  3. 텍스트로 경로만 복사하기 때문에.. 용량은 큰 문제가 되지 않을 것 같습니다.
    경로 500개 정도가 쌓인 데이터베이스의 용량이 0.2메가 정도되니 파일을 100,000개 받았을때 40메가 정도, 100만개 받으면 400메가 정도 되겠네요^^;; 이정도 숫자의 파일을 받을 정도면..

  4. Blog Icon
    경헌

    저걸 보여주는 앱이 간단히 있어도 괜찮겠네요..

    사용자 Preference 에 있는거니 맥 앱스토어 샌드박스에도 위배되지 않을테고..

  5. 말씀하신대로 UI만 잘 가다듬어 주면 꽤 인기를 끌만한 좋은 앱이 나오겠네요.

  6. Blog Icon
    옹퐁

    모든 일에 장단점이 있듯 편리하기도 하겠지만 개인정보의 다운로드 기록이 단순 파일 삭제로 끝이 아니라는 것에 우려가 되기도 합니다;; 그렇다면 이를 보완하기 위해 로그기록도 지울수 있는 방법 없을까요?

  7. OS X Quarantine 서비스를 완전히 꺼버리면 OS X에 보안 구멍이 생길수도 있기 때문에 아예 끄시기 보다는 다음 명령어로 QuarantineEventsV2 파일의 내부 엔트리만 지워주시는 것이 좋습니다.
    http://d.pr/n/6t1b
    위 명령어를 스크립트로 만들어 캘린더앱에 등록해놓고 주기적으로 돌리시는 것도 하나의 방법이구요.

  8. Blog Icon
    살리아

    아,, 어딘가 로그가 있지 않을까,,,,, 했는데 요기 있었군요 ㅎㅎㅎ
    링크걸어놓고 사용하면 되겠어요 'ㅅ'

  9. Blog Icon
    숀빠

    와~ 대박 정보 감사합니다^^