※ 제가 사용하는 방법은 기본적으로 SMTP서버 가 지원되는 메일 계정과 PHP Gmail Drive를 사용할 시에는 CURL Extension이 설치된 호스팅 계정이 있어야 됩니다. 저 같은 경우 메일은 네이버에서 포인트를 모아 으뜸사용자가 되서 사용가능하고, PGD는 247ihost.com이라는 해외 무료 호스팅을 받고 있습니다. CURL Extension이 설치된 무료 호스팅은 해외에 상당수 있기 때문에 쉽게 찾으실 수 있으리라 생각됩니다.

기존에 Gmail을 웹하드 즉, 파일 저장 공간으로 사용하신 분들은 아마 대부분 Gmail Drive Extension 이나 Gspace, RoamDrive 등을 이용하셨을 겁니다. 하지만 이런 툴은 업로드 속도가 느리고, 장시간 트래픽 유발시 24시간 동안 계정이 정지당할 수 있다는 문제점이 있습니다.

그래서 이곳저곳 검색엔진을 뒤져 봤는데, 조금은 다른 방법을 알게 됐습니다. Gmail에 저장하고자 하는 파일을 자동 분할해서 SMTP를 통해 전송하고, Gmail로 받은 분할 파일을 자동으로 검색, 합치는 것입니다. 각각의 파일을 웹링크로 만들어서 Flashget 등의 다운로드 프로그램으로 받은 후에 합칠 수도 있구요. 자세한 내용은 글을 읽어보시면 이해가 좀 더 빠르지 않을까 싶습니다. 글이 좀 길어질 것 같아 3 부분으로 나누었습니다. *^^*

앞서 말한 방법을 실행에 옮기기 위해서는 Backup To Email(바로 다운로드), Peer2Mail(바로 다운로드) 이라는 프로그램과 이전에도 포스팅 한 적 있는 PHP Gmail Drive 스크립트가 필요합니다.

우선 Backup To Email(이하 'B2E')에 대해 소개하도록 하겠습니다. B2E는 Java로 짜여진 프로그램으로 설치를 하시면 아래와 같이 파일의 확장 메뉴에서 'Backup To Email' 이라는 메뉴가 생깁니다.


Gmail에 저장하고자 하는 파일을 선택한 후에 'Backup To Email'을 클릭합니다. 이 때, 자체적으로 파일을 분할 압축한 후에 전송하기 때문에 Gmail 최대용량 한도 내에서는 파일의 용량은 상관없습니다. 클릭하면 아래와 같은 화면이 나타납니다. Email Address 에는 파일을 저장할 Gmail 주소를 입력해줍니다.


입력한 후 Save를 클릭하면 아래와 같은 화면이 나타납니다.


이제 SMTP 서버를 설정해 줘야 합니다. Configuration -> Accounts를 클릭합니다. 이 설정 창에서 Email Address는 메일을 보낸 사람의 주소를 입력하시고, Outgoing Server에는 자신이 사용하는 이메일의 SMTP 서버 주소를 입력합니다. 저 같은 경우는 네이버 으뜸 사용자여서 네이버 SMTP 주소를 입력했습니다. 그리고 자신이 사용하는 메일환경에 따라 Requires Authentication (사용자 인증)을 체크한 후에 아이디와 패스워드를 차례대로 입력합니다. 마지막으로 Max attachment에 분할될 파일 하나당 용량을 설정합니다. 국내 이메일 서비스의 파일 첨부 용량을 고려했을 때 10000000 bytes (약 10MB)가 적당합니다. 테라메일 같은 경우 20MB도 가능하지만 TLS 방식을 사용해서 B2E에서는 설정이 불가능하더군요. 이 점은 상당히 아쉽기도 합니다. 물론, 조금 있다 설명할 Peer2Mail에서는 MAPI를 이용해서 가능할 것도 같습니다. Gmail은 첨부파일이 20MB까지 지원이 되는데 정작 그에 걸맞는 SMTP 서버를 국내에선 찾기가 힘드니까 말이죠. 개인이 서버를 돌리지 않는 한 말입니다.


이 제 모든 설정이 끝났습니다. Gmail에 저장하고자 하는 파일을 선택하고 업로드를 해봅니다. 앞서 설정했듯이 10MB 이상이 되는 파일은 아래와 같이 자동으로 파일명 뒤에 숫자를 붙여서 분할한 후에 전송합니다. 전송이 완료되고 나면 자동으로 삭제가 되구요. 분할 속도는 하드에 특별히 이상이 없는 한 꽤나 빠른편입니다. (^^;)


분할을 마치고 나면 아래와 같이 업로드가 이루어집니다. 네이버 SMTP의 경우 초당 1MB~2MB 정도는 나와주는 것 같더군요. 더욱이 분할 파일이 많아 순차적으로 많은 메일을 전송함에도 스팸으로 인식하지 않고 몇 백개씩 잘 보내줍니다. 심지어 여러개 파일을 동시전송도 가능합니다. 단, 이 경우에는 리소스를 많이 차지해서 자칫 컴퓨터가 뻗을 수도 있으니 1~2개 큰 파일을 전송할 때 사용하는 편이 좋을 것 같습니다.


※ B2E는 확장자가 exe인 파일은 자동으로 exe.mp3로 변경하여 업로드 합니다. 이유는 Gmail 측에서 exe 확장자 파일은 보안상 문제로 거부하고 있기 때문입니다.

이렇게 분할된 파일은 Peer2Mail과도 호환 이 되어서 Gmail 계정을 자동검색 후 다운로드와 동시에 합칠 수 있고, PGD를 통해 하이퍼 링크를 생성한 하고 다운로드 후 Total Commander나 WinRAR 등으로 직접 합칠 수도 있습니다. 또, B2E 메뉴에 있는 Merge Split Files를 통해서 합칠 수도 있습니다. 파일을 나누는 방식이 매우 단순하기 때문에 다른 프로그램과도 별 문제없이 호환이 됩니다. (^^!)


다음에 소개할 프로그램을 Peer2Mail(이하 'P2M')입니다. 이 프로그램은 그래도 Download.com에도 올라와 있더군요. P2M은 Gmail 뿐만 아니라 Walla, Yahoo에서도 사용이 가능합니다. 프로그램을 실행하면 아래와 같은 화면이 나타납니다.


우선 파일을 전송하기 위해서 설정을 해줘야 합니다. P2M에는 파일 전송 방법이 3가지가 있습니다. SMTP 서버를 이용하는 방법, 아웃룩(아웃룩 익스프레스 X) MAPI를 이용하는 방법, Direct Send라 하여 서버의 MX 레코드를 이용하는 방법입니다. SMTP 서버의 경우 B2M을 설정했던 것처럼 SMTP 서버정보와 계정 정보를 입력하고 Test Server...를 클릭해서 테스트를 한번 해주시고 OK 하시면 됩니다.


정확한 서버 주소와 아이디, 패스워드를 입력하시면 Success 표시가 뜨게 됩니다.


그 외에 방법에 대해서는 테스트를 하지 못했습니다. MAPI를 이용할 경우 아웃룩에 기본값으로 설정된 SMTP 서버를 통해서 파일을 전송할 수 있습니다. 전 PC에 아웃룩이 설치가 되어있질 않아서 테스를 못해봤습니다만, 이 경우 테라메일을 이용하면 20MB까지 첨부파일 전송이 가능할 것 같습니다.


설정이 끝나면 메인 창에서 Split/Send File 탭을 클릭하고 툴바에 있는 아이콘을 클릭하여 Plain Transfer를 선택합니다.

그럼 아래와 같은 창이 뜨게 됩니다. P2M은 B2M과 다르게 여러개의 파일을 대기열 목록에 두었다가 순차적으로 전송합니다. 즉, 여러개의 파일 선택이 가능합니다. 단, 최대 파일 용량 제한을 프로그램 자체적으로 10MB로 해놨기 때문에 10MB가 넘는 리스트에 있어도 전송이 되질 않습니다. 그래서 미리 파일을 분할한 후에 목록에 추가해서 전송을 해야 합니다. 이런 면에서 10MB가 넘는 큰 파일은 B2M으로 전송하는 것이 훨씬 편리합니다. 반면에 P2M은 10MB 이하의 사진이나 MP3 파일 등을 전송하는 데 편리합니다.


전송하고자 하는 파일을 여러개 선택합니다.


여러개의 파일이 선택되었습니다.


전송하고자 하는 파일을 선택하고 나면 아래와 같이 대기열 목록이 생깁니다.


이 상태에서 툴바에 있는 Send the segments...를 클릭하면 파일을 순차적으로 전송합니다.

P2M 역시 B2M 처럼 파일을 분할하고 합치는 데 있어서 도구를 제공하고 있습니다.


B2M 보다 조금 나은 기능이 있다면 분할하고 합치는 데 있어서 암호 설정이 가능하다는 겁니다.


자! 그럼 지금부터는 P2M으로 파일을 다운로드 받아보겠습니다. 앞서 언급했습니다만, P2M을 이용하면 분할된 파일을 자동으로 검색할 수 있고 다운로드가 완료되면 파일을 자동으로 합쳐줍니다. Browse 탭을 클릭한 후 Gmail 계정에 로그인 합니다.


로그인 하면 B2M이나 P2M 혹은 직접 다른 프로그램으로 분할해서 전송한 파일들이 보이실 겁니다.


툴바에 있는 Auto Download Segments...를 클릭합니다.


클릭을 하고 나면 Segment Manager가 뜨면서 현재 로그인 되어 있는 Gmail 계정 내에 있는 첨부 파일들의 리스트를 모조리 불러들입니다. 그런데, 이게 속도가 좀 많이 느립니다. 인내심이 많이 요구될 거라 생각됩니다. 더욱이 분할 파일이 많으면 많을수록 말이죠. 포럼에도 보면 이 문제에 대해서 개선을 요청하고 있는데, 다음 버전에 반영이 될지는 미지수입니다.


일부 파일을 다운로드 해보니 250~300KB/s 정도의 속도가 나오는군요. 그럭저럭 쓸만합니다. (^^;) 여담이지만 야후의 경우 메일이 무제한 용량인데, 첨부파일 다운로드 속도가 1MB/s도 넘었던 기억이 납니다. 다시금 테스트 해보고 싶은 의욕이 생기네요. 다만, 야후 메일은 메일이 잘 안간다는 게 문제이긴 합니다. (ㅡ.ㅡ^)


2. Peer2Mail 소개 및 사용법 닫기
이렇게 두 프로그램에 대해서 알아봤습니다. 저 같은 경우엔 CD 이미지 같은 파일을 B2M으로 전송한 후에 필요시에 P2M으로 다운로드 받고 있습니다. 마땅히 영구(?) 보관이 가능한 백업 장소를 찾지 못했기 때문에 Gmail을 택한건지도 모르겠군요.

지금까지는 B2M과 P2M의 소개와 사용법에 대해 말씀드렸는데요. 이번엔 B2M과 P2M 또는 웹메일, 메일 클라이언트로 전송한 첨부파일을 하이퍼링크 즉, URL을 통해서 바로 다운로드 받는 방법을 살펴보도록 하겠습니다. 이미 이에 대해서는 PHP Gmail Drive를 이용한 Gmail 첨부파일 웹 링크로 공유하기라는 글에서 설명을 하였습니다만 좀 더 보충을 하도록 하겠습니다. 고로 이전 글을 필히 읽어주시기 바랍니다.

3. PHP Gmail Drive로 하이퍼링크 만들기 닫기 아래 그림을 보시면 아시겠지만 이전 글에서 GSpace로 업로드 한 파일보다 B2M으로 업로드 한 파일의 디스플레이가 훨씬 나았습니다. 파일명이 일단 깨지지 않구요. 확인해보니 정상적인 메일의 첨부파일은 저렇게 나타나더군요. 물론, 한글 파일명의 경우에는 깨집니다. ('ㅇ')

테스트 : Gmail 계정에서 받는 P2MSetup.exe.mp3 (다른이름으로 저장)
이전 글에서 말씀 드렸듯이 여기서 직접 다운로드가 가능한데요. 링크에다 대고 다른 이름으로 대상 저장을 하셔도 되고 Flashget과 같은 다운로드 매니저로 받으셔도 됩니다. 그럼 여기서 생각해볼 수 있는 것이 파일 링크만 URL 목록으로 쭈~욱 만들 수 있다면 본인 뿐만이 아니라 다른 사람들 역시 편하게 파일을 다운로드 할 수 있다는 것입니다. 특히 Flashget의 경우에는 '드롭존' 기능이 있어서 URL을 그냥 드래그만 해도 다운로드가 가능하죠.


그런데 문제는 PGD가 첨부파일이 수십개 이상으로 넘어가면 계정 내에 있는 파일 전부를 리스트로 출력해주지 못한다는 겁니다. 안 그래도 느린데 말이죠. (ㅡ_ㅡ+)

하지만, 이는 리스트가 출력이 다 되지 않았다 뿐이지 계정에는 로그인이 되어있는 상태기 때문에 다른 파일 역시 다운로드 할 수 있습니다. 이럴 경우 주소 형식에 맞게 URL 생성해 주면 됩니다.

기본적으로 PGD가 생성하는 링크는
http://minilogue.247ihost.com/pgd/dl.php?a=0.1&m=11498978729f67cc&f=P2MSetup.exe.mp3&n=0

그러니까 http://yourdomain.com(도메인)/pgd(PGD가 설치된 폴더)/dl.php?a=0.1&m=th값&f=파일명&n=계정순서 로 이루어져 있습니다.

여기서 a=0.1이라는 값과 m=11498978729f67cc이라는 th값은 Gmail에 로그인해서 파일 첨부 정보를 보시면 나옵니다. 다운로드 링크의 속성을 봅니다.


아래와 같이 주소에 th값과 attid값이 있습니다.


그리고 n=0 이라고 하는 계정순서 값은 pgd 폴더 안에 있는 config.php에서 가져옵니다.

$gmail_user[0] = "google0@gmail.com(자신의 Gmail 주소)";
$gmail_password[0] = "pgdyo(자신의 Gmail 암호)"; //Use your Own password
$gmail_user[1] = "google1@gmail.com(자신의 Gmail 주소)";
$gmail_password[1] = "pgdyo(자신의 Gmail 암호)"; //Use your Own password
$gmail_user[2] = "google2@gmail.com(자신의 Gmail 주소)";
$gmail_password[2] = "pgdyo(자신의 Gmail 암호)"; //Use your Own password
즉, 위와 같이 계정을 설정했을 때, 자신이 링크하고자 하는 파일이 google0@gmail.com에 있다면 [값]을 n=값으로 해주는 것입니다. 여기서는 [0]이니 n=0이겠군요. 말 그대로 계정 순서 번호를 써준다고 생각하시면 됩니다.

자! 이제 다 끝났습니다. 첨부파일 하나하나의 th값을 확인해 야 된다는 게 좀 귀찮을 수도 있습니다만, 충분히 활용가능한 방법입니다. (^^!) Firefox에서 그리스몽키 같은 걸로 첨부파일만 따로 볼 수도 있을 것 같은데 아직 못 찾아봤습니다. Webma와 Maxthon에서 첨부파일 주소 추출을 시도해봤지만 한꺼번에는 안되더군요.

제 개인적으로는 빨리 Gmail이 무제한 용량이 되든지 아니면 GDrive와 같은 서비스가 나왔으면 좋겠네요. 하지만 얼마전에 보니 구글에서 구글내 서비스에 사용되는 HDD 용량을 팔고 있더군요. (>.<)/ 역시 무제한은 힘든건가 봅니다.
3. PHP Gmail Drive로 하이퍼링크 만들기 닫기
# 주의사항

1. Gmail 계정이 2.8GB가 되지만 실제로 파일을 올려보면 아시겠지만, HDD에서 사용하는 용량과는 차이가 있습니다. 그래서 2GB가 넘는 파일을 보낼 경우 계정 용량이 꽉 차서 메일이 돌아오는 경우도 있습니다. 고로 파일의 최대용량은 2GB 정도가 적당할 듯 싶습니다. DVD 이미지와 같은 큰 이미지들은 2GB로 잘라서 업로드 하시면 됩니다.

2. PGD에 너무 많은 계정을 설정할 경우 오류가 나서 페이지가 뜨지 않을 수도 있습니다. 더욱이 계정 내에 첨부파일이 꽉 차있는 경우는 더할 나위 없구요. 그렇기 때문에 계정은 2~3개 정도로 설정하시는 편이 좋습니다. 물론, 페이지가 뜨지 않는다 해도 URL로 바로 다운로드는 가능합니다. (^^!)

backup_to_email.exe P2MSetup.exe


http://futures.tistory.com/247
by Anna 안나 2008. 10. 25. 11:16