0. 설치 환경
iwinv vCore.V1
CPU – 1core
Memory – 512MB
Disk – 25GB(SSD)
swap 메모리 2GB 할당
OS – 우분투 16.04 / CentOS 7.1
1. 개요
리눅스에서 간단히 구글드라이브로 파일 및 디렉토리를 동기화할 수 있는 프로그램입니다.
우분투, CentOS에서 정상 작동하며, 중요한 파일의 경우 자동으로 동기화하도록 설정해두는 것도 나쁘진 않습니다.
(다만 구글드라이브 특성상 해외트래픽이 발생하게 되므로 계획적으로 사용하는 것이 좋습니다.)
동기화를 원하는 디렉토리에 이동한 후, 명령어 하나만 입력하면 바로 동기화를 할 수 있습니다.
여기에서는 우분투 16.04, CentOS 7.1에서 설치해보았습니다.
2. 우분투 16.04 / CentOS 7.1
1) 저장소 패키지 업데이트 및 업그레이드
apt-get update && apt-get upgrade -y
2-1) [우분투] 의존성 라이브러리 설치
apt-get install git cmake build-essential libgcrypt11-dev libyajl-dev libboost-all-dev libcurl4-openssl-dev libexpat1-dev libcppunit-dev binutils-dev pkg-config boost boost-devel
2-2) [CentOS] 의존성 라이브러리 설치
yum install -y libcurl libcurl-devel yajl yajl-devel libstdc++-devel libstdc++ boost-filesystem boost-program-options boost-regex boost-test boost-system expat expat-devel git cmake gcc* libgcrypt-devel boost libgcrypt boost-devel
3) 소스 다운로드 및 설치
# cd /usr/local/src
# git clone https://github.com/vitalif/grive2
# cd grive2
# mkdir build
# cd build
# cmake ..
# make -j4
# make install
# whereis grive
grive: /usr/local/bin/grive
4) 실행(최초 실행시 -a를 붙여서 아래와 같이 진행하여야 하며, 이후에는 옵션 없이 grive만 입력하여 실행하면 됨)
# cd /home/ubuntu/google_sync
# grive -a
생성된 URL을 복사하여 웹브라우저에 붙여넣으면 구글 계정으로 로그인할 수 있도록 창이 뜹니다.
로그인 후 allow를 클릭하면 코드를 확인할 수 있으며, 이 값을 서버에 붙여넣으면 됩니다.
5) 업로드 되었는지 확인
3. 활용
간단히 스크립트를 만들어서 crontab에 등록하여 지정한 시간마다 동기화를 진행하도록 할 수 있습니다.
vi /root/backup.sh
—————————-
#!/bin/bash
cd /home/ubuntu/google_sync
/usr/local/bin/grive
—————————-
crontab -e
—————————-
00 04 * * * /root/backup.sh
—————————-