rclone 이란 여러 Storage 서비스를 연동하는 프로그램이다. (AWS S3, Cloudflare R2, Google Drive 등)
로컬의 자료를 구글 원격 드라이브에 백업하기 위해, rclone 을 사용해보자
- install rclone (아래는 맥의 경우이며, 리눅스나 윈도우의 경우 별도 방식으로 설치하자)
brew install rclone
- rclone config 수행하기
rclone config
- new Remote 선택
- 이 때 입력할 서버명은
remote 를 추천. 앞으로 나올 예시가 모두 remote 명칭이라서.
- google client-id 발급받기
아래 링크에 작성된 순서대로 수행한다.
- https://rclone.org/drive/#making-your-own-client-id
- Google API Console 접속
- 새 프로젝트 생성
- API 및 서비스
- OAUTH 동의화면 구성하기. 아래는 예시
- 앱 이름: my-rclone
- 지원 이메일: my-email@gmail.com
- 대상: 외부 (별도의 구글 workspace 설정이 없는 경우 외부만 선택 가능)
- scope 지정
- 좌측패널 > 데이터 엑세스 > 범위 추가 또는 삭제에서 위 링크에 있는 3개의 api 선택
- 대상 지정
- OAuth Client 생성
- 데스크톱 앱. 이름은 뭐든 상관없음. 한글이라, 영어로 바꾸기 위해 rclone-homeserver 이라 해야지
- OAuth consent screen 동의화면에 가서 publish app 해서 id 얻기
- 생성된 client-id를 입력
- 생성된 client_secret 를 입력
- scope 설정. 이는 권한설정으로 1번을 선택하면 모든 권한이 부여된다
- service_account_file 는 넘어가자
- advanced config 도 n 으로 넘어가자
- 구글 자동인증 단계
Use web browser to automatically authenticate rclone with remote?
- 이 단계부턴 app 인증을 위해 인터넷 브라우저 연동이 가능한 PC에서 작업을 수행해야 함.
- PC에 브라우저가 있는 경우, 제시된 rclone 명령어를 그대로 복사해서, 진행하면 됨
- 없는 경우, 브라우저가 있는 PC에서 rclone 을 새로 설치하고, 해당 명령어를 실행해야 함.
- 이는 나의 google 계정을 내가 cloud 에 만든 앱에 등록하는 과정으로 보이며, google drive에 대한 인증을 딱 1회만 수행하면 되는 것으로 보임
- 수행시 토큰이 생김. 이걸 기존에 진행중이던 원 rclone 터미널에 붙여넣으면 됨
이렇게 하면 ~/.config/rclone/ 디렉토리에 rclone.conf 파일이 생김
단 이렇게 받은 토큰은 테스트용으로, 기간이 짧다.
- 이렇게 발급받은 google token 의 만료기간은 약 일주일이다.
- 갱신을 위해서는
rclone config 명령을 통해 edit 을 하여 위 과정을 똑같이 수행하면 된다
- 이미 client_id 와 secret은 발급 받았으므로 새로 발급받을 필요는 없고, 토큰만 갱신하면 됨
- 위 8번 단계에서
Already have a token - refresh? 항목이 나오며, 여기서 y를 눌러 8번 단계를 다시 수행할 수 있음
이후 아래와 같은 명령어를 통해 사용 가능.
참고자료