드롭박스(Dropbox) 백업 서버를 설정하는 것은 간단합니다. 핵심은 드롭박스의 명령줄 인터페이스를 활용하는 것입니다. 여기서는 ‘드롭박스 업로더’라는 도구를 사용할 것입니다. 이 스크립트를 통해 명령줄 환경에서 드롭박스에 콘텐츠를 자동 업로드할 수 있습니다.
필수 구성 요소 설치
이 스크립트를 사용하려면 먼저 리눅스 PC에 Git 패키지가 설치되어 있어야 합니다. 터미널을 열고 다음 명령어를 입력하여 Git을 설치하세요. 운영체제에 맞는 명령어를 선택해야 합니다.
우분투(Ubuntu)
sudo apt install git
데비안(Debian)
sudo apt-get install git
아치 리눅스(Arch Linux)
sudo pacman -S git
페도라(Fedora)
sudo dnf install git
오픈수세(OpenSUSE)
sudo zypper install git
기타 리눅스 배포판
대부분의 리눅스 배포판에서 Git은 쉽게 구할 수 있습니다. 패키지 관리자를 사용하여 “git”을 검색하고 설치하거나, Pkgs.org에서 다운로드 가능한 설치 파일을 찾아보세요.
드롭박스 업로더 다운로드
Git이 설치되었다면, 이제 드롭박스 업로더 코드를 다운로드할 차례입니다. 터미널에서 다음 명령어를 입력하여 소스코드를 복제하세요.
git clone https://github.com/andreafabrizi/Dropbox-Uploader.git
복제가 완료되면 ‘cd’ 명령어를 사용하여 ‘Dropbox-Uploader’ 폴더로 이동합니다.
cd Dropbox-Uploader
여기서 바로 스크립트를 실행할 수 있지만, 제대로 작동하도록 몇 가지 설정을 해야 합니다. 드롭박스 업로더는 쉘 스크립트이므로 실행 권한을 부여해야 합니다. 다음 명령어를 사용하세요.
chmod +x dropbox_uploader.sh
드롭박스 업로더는 ‘dropbox_uploader.sh’ 파일을 실행하여 작동합니다. 또한, 이 도구에는 다른 유용한 스크립트들도 포함되어 있습니다. 선택적으로 다음 명령어를 사용하여 이 파일들에 대한 실행 권한을 부여할 수 있습니다.
chmod +x dropShell.sh chmod +x testUnit.sh
드롭박스 API 설정
이제 드롭박스 백업 소프트웨어가 리눅스 PC에 설치되었으므로 백업 시스템을 구성해야 합니다. 우선, 드롭박스 계정에 로그인할 때 사용할 새로운 API 코드를 생성해야 합니다. 드롭박스 개발자 페이지로 이동하여 “앱 만들기” 버튼을 클릭합니다.
“앱 만들기”를 클릭하면 API 설정 페이지로 이동합니다. “Dropbox API”를 선택합니다.
다음으로, 드롭박스 업로더가 가져야 할 접근 수준을 선택합니다. 최대한의 기능을 활용하려면 “전체 접근”을 선택하는 것이 좋습니다. 이렇게 하면 계정 내 모든 폴더에 접근하여 백업을 수행할 수 있습니다.
앱 이름을 입력하고 “앱 만들기” 버튼을 클릭하면 새로운 앱이 생성됩니다.
앱 생성이 완료되면 생성된 액세스 토큰을 찾아서 “생성” 버튼을 클릭합니다. 이 토큰은 드롭박스 업로더가 드롭박스에 접속하는 데 사용됩니다.
백업 생성 및 실행
액세스 토큰을 얻었으면, 이제 드롭박스 업로더 스크립트와 계정을 연결할 차례입니다. 터미널에서 드롭박스 업로더 도구를 실행합니다.
./dropbox_uploader.sh
스크립트를 처음 실행하면 액세스 토큰을 요청합니다. 드롭박스 API 페이지에서 생성한 액세스 코드를 복사하여 붙여넣으세요.
액세스 코드를 입력한 후, 백업 실행을 시작할 수 있습니다. 먼저 드롭박스 계정에 새로운 백업 폴더를 생성합니다.
./dropbox_uploader.sh mkdir Backup
이 명령어를 실행하면 드롭박스 계정에 ‘Backup’이라는 이름의 폴더가 생성됩니다. 이제 파일을 업로드할 수 있습니다. 다음 명령어를 사용하여 파일을 업로드합니다.
참고: 드롭박스 업로더는 Tar.gz 파일뿐만 아니라 다양한 종류의 파일을 처리할 수 있습니다. 업로드하려는 파일에 맞춰 아래 명령을 사용자 정의하세요.
./dropbox_uploader.sh upload /home/username/location/of/file.tar.gz
백업 자동화
수동 백업도 유용하지만, 이러한 종류의 작업은 자동화하는 것이 좋습니다. Cron을 사용하여 백업 작업을 자동화할 수 있습니다. 터미널에서 ‘su’ 또는 ‘sudo’ 명령어를 사용하여 루트 권한을 얻습니다.
su –
또는
sudo -s
루트 쉘에서 Cron에 접근합니다.
crontab -e
편집기를 선택하라는 메시지가 나오면 Nano를 선택합니다. 그런 다음 Cron 파일에 다음 내용을 붙여넣습니다.
참고: 다음 Cron 명령어는 리눅스 PC의 백업 파일을 압축하여 매일 오전 8시 6분에 드롭박스의 ‘Backup’ 폴더에 업로드하도록 설정합니다.
06 08 * * * tar -zcvf backup-$(date +%Y-%m-%d).tar.gz /home/username/;/home/username/Dropbox-Uploader/dropbox_uploader.sh upload /home/username/backup-$(date +%Y-%m-%d).tar.gz Backups
명령어를 Cron 파일에 저장합니다. 이제 설정된 시간에 자동으로 ‘/home/username/’ 디렉토리의 스냅샷이 Tar.gz 아카이브로 압축되어 드롭박스에 업로드됩니다. 홈 폴더 전체가 아닌 특정 폴더만 백업하고 싶다면, 폴더 경로를 원하는 대로 변경하면 됩니다.
모든 설정이 완료되었다면 Ctrl + O를 눌러 Nano 편집기에서 Cron 파일을 저장합니다.
자동 백업 중단
자동 백업이 필요하지 않고 수동으로만 처리하고 싶다면 Cron에서 해당 명령어를 삭제하면 됩니다.
su - crontab -e
이전과 마찬가지로 Ctrl + O를 눌러 편집 내용을 저장합니다. 저장 후 자동 백업은 중단됩니다.