rclone 을 이용한 구글 드라이브 대용량 파일을 안전하게 다운로드
다른 사람이 공유해 준, 구글 드라이브의 대용량 파일을 끊김없이 안전하게 오랫동안 다운로드 하는 방법으로,
rclone 프로그램을 이용해봤다.
Mac OS X 상에서 콘솔로 실행하다 보니, 아무래도 설정파일을 맞추기가 쉽지 않았다. 대충 때려 잡아서...
일단 rclone-v1.59.1-osx-amd64 버전을 다운로드 받아서, zip 압축을 풀었다.
./rclone --config hook.conf config
명령으로 나만의 config 파일을 별도로 생성할 수 있다.
원래 기본 config 파일은 계정의 홈디렉토리 쪽 ~/.config/rclone/rclone.conf 에 있다.
https://vision4me.tistory.com/18
https://hjm79.top/rclone-mount/
위와 같이, 구글 드라이브를 접근 설정하고 나면(구글 웹브라우저 인증을 받고 나면), 기본 설정 파일이 생기는데, 그 안에 추가로 나만의 설정을 넣으면 된다.
[mygoogledrive]
type = drive
scope = drive
token = {"access_token":"...---...","token_type":"Bearer","refresh_token":"...---...","expiry":"2022-09-15T19:25:56.873327+09:00"}
team_drive = 000AAAABBBBCCCCDD
root_folder_id = 1zGG11122233344455_kfkfa_AbCdhw0j
server_side_across_configs = true
공유하는 쪽에서 보내주는 team_drive 값을 반드시 추가해야 하고, root_folder_id 도 반드시 넣어야 한다.
자신의 구글 드라이브에 들어가서, 공유 문서함에서 공유된 폴더에 바로 들어갔을 때, 웹브라우저의 주소창에
https://drive.google.com/drive/u/0/folders/1zGG11122233344455_kfkfa_AbCdhw0j 에서
1zGG11122233344455_kfkfa_AbCdhw0j 와 같은 문자열을 root_folder_id 에 추가한다.
./rclone --config hook.conf ls mygoogledrive:/dir/
명령으로 디렉토리 내용을 나열할 수 있고,
원격 파일의 로컬로 복사는
./rclone --config hook.conf -v --transfers 10 copy mygoogledrive:/dir/bigfile.img /localdir/
와 같은 명령으로, source 쪽은 디렉토리나 파일을 지정할 수 있고, destination 쪽은 디렉토리만 지정하면 된다.
hook.conf 파일을 ~/.config/rclone/rclone.conf로 복사하면, --config hook.conf 옵션이 없는 상태로도 간단히 위의 명령어들을 사용할 수 있다.