Gdrive 명령줄 가이드 — Linux에서 Google Drive 사용하기

중요: 이 문서의 예시는 Ubuntu 16.04에서 테스트된 명령어를 바탕으로 작성되었습니다. 다른 배포판이나 아키텍처에서는 실행 파일 이름(예: gdrive-linux-386)이나 권한 설정이 달라질 수 있습니다.
소개
Google Drive는 가장 널리 쓰이는 클라우드 저장소 서비스 중 하나지만, 공식 Linux 데스크탑 클라이언트가 제공되지 않아 불편할 때가 있습니다. 커뮤니티는 이 문제를 다양한 비공식 클라이언트로 보완했습니다. 그중 하나가 Gdrive입니다. Gdrive는 명령줄 인터페이스(CLI)를 통해 Google Drive를 관리할 수 있게 해 주는 도구입니다.
간단 정의: Gdrive — 터미널에서 구글 드라이브 파일을 업로드·다운로드·공유·조회하는 소형 커맨드라인 유틸리티입니다.
이 문서의 범위
- 설치 및 인증 절차(실습형 단계)
- 주요 명령어 예제(목록·업로드·다운로드·공유·정보 조회)
- 보안·토큰 관리 주의사항
- 문제 발생 시 점검 목록 및 해결 방법
- 대체 도구 비교 및 선택 가이드
- 운영자·사용자·개발자별 체크리스트
- 간단한 테스트/수락 기준
Gdrive 다운로드, 설치 및 초기 설정
공식 GitHub 저장소에서 시스템에 맞는 실행 파일을 다운로드합니다. 예시에서는 32비트 리눅스용 파일(gdrive-linux-386)을 사용했습니다.
실행 권한을 부여합니다. 예:
chmod +x gdrive-linux-386
- 도구가 Google Drive에 접근할 수 있도록 인증 절차를 진행합니다. 최초 인증 명령은 보통 도구의 상태 또는 계정 정보를 요청하는 about 서브커맨드로 시작합니다:
./gdrive-linux-386 about
- 명령 실행 후 출력되는 URL을 웹 브라우저로 열고 Google 계정으로 로그인하여 접근 권한을 허용합니다. 웹 화면에서 표시되는 인증 코드를 복사해 터미널에 붙여넣으면 인증이 완료됩니다.
웹 브라우저에서 권한 허용을 누르면 인증 코드가 생성됩니다.
인증 코드 입력 후, 터미널에 연결 성공 메시지가 나타납니다.
중요: 인증 과정에서 홈 디렉토리에 .gdrive 폴더와 토큰 파일이 생성됩니다. 이 파일은 인증된 계정의 접근권한을 담고 있으므로 다른 사용자에게 노출되면 안 됩니다.
기본 사용법 및 예제
아래 예제는 도구가 현재 작업 디렉토리에 있고 파일명도 gdrive-linux-386인 경우를 가정합니다. 실행 파일 경로가 다르면 경로를 적절히 바꿔 사용하세요.
목록 보기
드라이브에 있는 파일/디렉토리를 나열합니다:
./gdrive-linux-386 list
기본 출력 건수는 30개입니다. 최대 표시 개수를 변경하려면 -m 플래그를 사용하세요:
./gdrive-linux-386 list -m 10
특정 조건으로 필터링하려면 –query를 사용하세요(예: 이름에 gmail 포함):
./gdrive-linux-386 list -m 10 --query "name contains 'gmail'"
설명: query 구문은 Google Drive API의 검색 쿼리 문법을 따릅니다. 큰따옴표와 작은따옴표 사용에 유의하세요.
업로드
파일 업로드 기본 명령:
./gdrive-linux-386 upload [file-name]
특정 디렉토리로 업로드하려면 –parent 플래그에 디렉토리 ID를 지정합니다. 디렉토리 ID는 list 명령의 출력에서 확인할 수 있습니다:
./gdrive-linux-386 upload --parent [dir ID] [filename]
디렉토리 생성:
./gdrive-linux-386 mkdir [directory-name]
한 번에 디렉토리를 만들고 업로드하려면 순서대로 mkdir로 디렉토리를 만들고 그 ID에 업로드합니다.
업로드 시 사용할 수 있는 주요 플래그:
- –delete: 업로드 성공 시 로컬 파일을 삭제합니다.
- –role: 공유 권한 관련 플래그(업로드 자체와는 별개로 사용).
다운로드
파일 다운로드 기본 명령:
./gdrive-linux-386 download [file-name]
유용한 플래그:
- -f: 동일한 이름의 로컬 파일이 있으면 덮어쓰기
- -r: 디렉토리 재귀적 다운로드
- –delete: 다운로드 성공 후 원격 파일 삭제
참고: -r과 –delete 플래그는 업로드에서도 동작합니다(동일한 의미로 사용 가능).
공유
파일을 모두에게 읽기 권한으로 공개하려면:
./gdrive-linux-386 share [file ID]
특정 사용자와 공유하려면 –type과 –email을 사용합니다:
./gdrive-linux-386 share [file ID] --type user --email [email add]
추가로 권한 수준을 지정하려면 –role 플래그를 사용하세요. 허용되는 값:
- owner
- writer
- commenter
- reader
예: 친구에게 쓰기 권한을 부여하는 명령 예시(실제 ID/이메일로 치환):
./gdrive-linux-386 share 1a2B3cD4E --type user --email [email protected] --role writer
파일 정보 확인
파일의 메타데이터나 권한 등의 자세한 정보를 보려면 info 명령을 사용하세요:
./gdrive-linux-386 info [file ID]
명령어 치트시트
간단 표 형태로 자주 쓰는 명령을 정리합니다.
목적 | 명령 예시 | 비고 |
---|---|---|
목록 조회 | ./gdrive-linux-386 list | -m, –query 사용 가능 |
업로드 | ./gdrive-linux-386 upload 파일명 | –parent로 폴더 지정 |
디렉토리 생성 | ./gdrive-linux-386 mkdir 폴더명 | 생성 후 ID로 업로드 |
다운로드 | ./gdrive-linux-386 download 파일ID | -f, -r, –delete 지원 |
공유(공개) | ./gdrive-linux-386 share 파일ID | 기본은 모두 읽기 |
공유(개별) | ./gdrive-linux-386 share 파일ID –type user –email a@b | –role로 권한 지정 |
정보 조회 | ./gdrive-linux-386 info 파일ID | 메타·권한 확인 |
보안 및 개인정보 주의사항
- 인증 토큰(.gdrive 폴더)은 민감 정보입니다. 백업하거나 다른 사용자와 공유하지 마세요.
- 공개 공유(모두에게 읽기)는 신중히 사용하세요. 퍼블릭 링크는 검색 대상이 될 수 있습니다.
- 조직 계정(예: G Suite/Workspace)의 규칙을 준수하세요. 관리자 정책으로 외부 공유가 차단될 수 있습니다.
- GDPR/개인정보 관점: 개인 데이터 업로드 시 적절한 보안·암호화 및 권한 관리를 확인하세요.
문제 해결 체크리스트
- 인증 실패
- 홈 디렉토리의 .gdrive/token 파일이 올바른지 확인
- 인터넷 연결 상태와 방화벽(포트 80/443) 확인
- 동일 계정으로 여러 토큰을 생성했는지 확인
- 명령이 작동하지 않음
- 실행 파일 권한 확인: chmod +x
- 아키텍처 불일치(예: 64비트 시스템에 32비트 바이너리) 여부 확인
- 권한 문제(공유 불가 등)
- 계정의 조직 정책 또는 소유자 권한 확인
- 느리거나 메모리 사용량이 큼
- 공식 문서에서 ‘현재 구현은 느리고 메모리를 많이 사용한다’는 주의가 있음. 대규모 전송 시 주의.
언제 Gdrive가 맞지 않는가(실패 사례/제한)
- GUI 기반 동기화가 필요한 경우: Gdrive는 실시간 동기화 기능을 제공하지 않습니다. 배경 동기화가 필요한 데스크탑 사용자는 다른 도구를 고려하세요.
- 대규모 파일/수백만 파일 처리: 구현상 메모리 사용량과 성능 이슈가 보고되므로 대용량 워크로드에는 적합하지 않을 수 있습니다.
- 멀티유저 환경에서 중앙관리 필요: 엔터프라이즈 정책 및 감사 로그가 필요한 환경에서는 공식 클라이언트 또는 엔터프라이즈 솔루션이 더 적합합니다.
대안 도구 비교
아래는 Linux에서 Google Drive를 다루는 몇 가지 대안과 간단 비교입니다. (정량적 벤치마크는 포함하지 않음 — 사용 환경에 따라 달라집니다.)
- rclone: 기능이 매우 풍부하고 다양한 클라우드 지원, 스크립트 자동화에 강함. 동기화·마운트 기능 제공.
- google-drive-ocamlfuse: FUSE를 사용해 드라이브를 로컬 파일시스템처럼 마운트할 수 있음. GUI/파일매니저와 자연스럽게 사용 가능.
- Insync, overGrive: 상용/유료 GUI 클라이언트로, 데스크탑 동기화와 편의 기능 제공.
- Gdrive: 단일 실행 파일 형태의 간단한 CLI. 스크립트·자동화에 적합하지만 성능/메모리 면에서 제약이 있을 수 있음.
선택 팁: 자동화·백업 스크립트 용도라면 Gdrive나 rclone이 적합합니다. 파일 시스템 통합(탐색기 연동)이 필요하면 google-drive-ocamlfuse나 상용 클라이언트를 고려하세요.
설치 및 운영을 위한 미니 절차(메서드)
- 요구사항 확인: 시스템 아키텍처(32/64비트), OS 버전
- 다운로드: 공식 GitHub에서 바이너리 확보
- 권한 부여: chmod +x
- 초기 인증: ./gdrive-linux-386 about → 웹 인증 코드 입력
- 토큰 보안: .gdrive 폴더 권한을 700으로 설정
- 간단 테스트: list → upload → download 순으로 확인
- 자동화 스크립트 적용: cron 또는 systemd.timer로 정기 작업 등록(토큰 보안 유지)
예: 토큰 폴더 권한 변경
chmod 700 ~/.gdrive
chmod 600 ~/.gdrive/token_v2.json
운영자·사용자·개발자 별 체크리스트
운영자(시스템 관리자):
- 설치 대상 시스템 아키텍처 확인
- 계정별 토큰 파일 접근 제한
- 백업 정책에 토큰 파일 제외
- 조직 공유 정책 검토
일반 사용자:
- 인증 코드 안전하게 입력
- 파일 업로드 전 권한 확인
- 공개 공유 시 링크 재확인
개발자/자동화 담당자:
- 스크립트에 토큰 경로 하드코딩 금지
- 실패 시 재시도 정책 구현
- 로그·감사 추적(업로드/삭제 이력) 구현
테스트 케이스 및 수락 기준
- 인증: about 명령 실행 후 웹 인증을 통해 토큰 생성, 터미널에서 계정 이름 또는 정상 응답 확인
- 업로드 기본: 작은 텍스트 파일 업로드 후 list에서 파일 ID 확인
- 다운로드 기본: 업로드한 파일을 다운로드하고 해시(또는 크기) 일치 확인
- 공유 권한: 친구 이메일로 reader 권한 부여 후 해당 이메일 계정으로 파일 접근 가능 확인
- 디렉토리 재귀 다운로드: 폴더 업로드(하위 포함) 후 -r 옵션으로 로컬에 동일 구조로 복원
수락 기준: 위 5가지 테스트가 성공하면 기본 기능 수락.
성능 및 운영상 권고
- 대용량 전송은 배치로 나눠 진행하세요(파일 크기별 스플리팅).
- 메모리 사용량이 높은 작업은 서버 스펙을 높이거나 rclone 등 더 최적화된 툴을 검토하세요.
- 자동화 시 전송 실패에 대비한 백오프와 재시도 로직을 구현하세요.
예시 운영 시나리오
- 주기적 백업: 로컬 백업 디렉토리를 tar로 묶어 업로드하고 원본은 삭제(–delete)한다.
- 로그 아카이브: 로그를 주간 단위로 묶어 업로드하고 오래된 로컬 로그는 정리한다.
- 협업 파일 교환: 프로젝트 결과물(보고서, 바이너리)을 팀 드라이브의 지정 폴더에 업로드하고 특정 동료에게 writer 권한을 부여한다.
결론
Gdrive는 명령줄 중심의 단순하고 가벼운 Google Drive 클라이언트입니다. 설치와 사용이 간단하고 자주 쓰는 명령이 기억하기 쉬운 장점이 있습니다. 반면 공식 문서에서도 밝힌 대로 성능(속도)과 메모리 사용 측면에서 개선의 여지가 있습니다. 개인의 목적이 단순 스크립트 자동화나 소규모 파일 관리라면 유용합니다. 반면 데스크탑 동기화, 대규모 데이터 처리, 엔터프라이즈 감사 요구가 있는 환경이라면 rclone, google-drive-ocamlfuse, 또는 상용 클라이언트를 고려하세요.
참고 및 추가 자료
- 프로젝트의 공식 GitHub 페이지(최신 사용법과 이슈 확인 권장)
—
요약(핵심 포인트):
- Gdrive는 CLI 기반의 Google Drive 도구로 설치·인증이 간단합니다.
- .gdrive 토큰 파일은 매우 민감하므로 안전하게 관리하세요.
- 파일 목록·업로드·다운로드·공유 기능을 제공하며, 옵션으로 재귀 다운로드·덮어쓰기·원격 삭제 등이 가능합니다.
- 성능 문제를 겪을 수 있어 대규모 워크로드에는 적합하지 않을 수 있습니다.
발표용 요약(100–200자): Gdrive는 Linux용 명령줄 기반 Google Drive 클라이언트입니다. 설치와 인증이 간단하고 기본 업로드·다운로드·공유 작업을 스크립트로 자동화하기 좋습니다. 토큰 보안과 대규모 처리 성능은 주의가 필요합니다.