Server rentals :: NFOservers.com

Forums

All times are UTC - 8 hours



Author Message
PostPosted: Wed Jul 17, 2013 12:04 pm 
Offline
Compulsive poster
Compulsive poster

Joined: Fri May 24, 2013 7:41 pm
Posts: 74
Have some Dropbox space free? Want to keep backups of all your important server files? Well you have come to the right place!

For my tutorial I will be doing this on Ubuntu 13.04, however with some basic Linux knowledge you should be able to adapt this for almost any Linux deployment.

Now first of all we will need to install Dropbox itself from the official website. This is pretty straight forward and works well on Debian. I am not going to go into detail on how to compile from source. If you need to compile from source I would hope you already have that knowledge.

Image

For me I downloaded the 32 bit .deb and it opened up automatically in Ubuntu Software Center. It was as easy as a few clicks.

Image

After Ubuntu Software Center was finished I was prompted with a notification on the desktop requesting to open Dropbox and download more required files.

Image

From there log into Dropbox and go through the general config. The Linux version of Dropbox is great and runs just like the Windows version.
Image

Now that we have Dropbox setup we need need to get this really cool Bash script "Dropbox Uploader". This script does use curl so you will want to check that you have curl installed.

https://github.com/andreafabrizi/Dropbox-Uploader

I used the instructions on the github to download the file to my home directory. It will create a directory named Dropbox-Uploader
Code:
git clone https://github.com/andreafabrizi/Dropbox-Uploader/


Now we need to make a script that can easily call our bash script that we just downloaded. So open up a text editor and lets start scripting.

Here is a simple perl script. Enter in the required information and save it as .pl (I named mine backupscript.pl)

Image

Code:
#!/usr/bin/perl -w

use strict;
use POSIX qw(strftime);

my $time = strftime "%Y-%m-%d_%H-%M-%S", localtime;
my $backup_folder = "/home/furntree/srcds";
my $path = "/home/furntree/Dropbox-Uploader/";
my $bu_prefix = "furntree";
my $script = "dropbox_uploader.sh";
my $exe = $path . $script;
my $filename = $bu_prefix . "_" . "backup_" . $time . ".tgz";
my $tar = "/bin/tar";
my $rm = "/bin/rm";
my $target_folder = "/LocalBackup/" . $filename;
 
system($tar . " -cvzf " . $path . $filename . " " . $backup_folder);
system($exe . " upload " . $path . $filename . " " . $target_folder);
system($rm . "  " . $path . $filename);


What this script does.
Code:
Performs tar on the directory you wish.
Executes the upload using the bash script.
Removes the temporary tarball from the disc.



These are the things you will need to worry about.

Code:
my $backup_folder =


What directory you want backed up. (In this example I am backing up a directory I might use for a Valve game)

Code:
my $path =


The location of our upload bash script.

Code:
my $bu_prefix


What you want your backups named.

Code:
my $target_folder =


The folder you want uploaded to on Dropbox itself.


Once everything is setup you should be able to run your script. For myself I did.
Code:
perl backupscript.pl


The first time the script runs you will be asked to create an application with the Dropbox API.
Go to https://www.dropbox.com/developers/apps/create and create the the following.

Database App
Files and datastores
App not limited or App folder (I did not limited)
All file types

Use the app name given to you in console.

Image

Enter in the information given to you by Dropbox and follow all instructions you see. Once the setup is complete you can run your perl script again and it should work! From here you can add the script to Cron to run everyday, week, etc. Making automatic backups easily available offsite.

Image

If you run into any problems or have suggestions on how to improve this post below!


Last edited by furntree on Sun Oct 13, 2013 8:10 pm, edited 1 time in total.
Spelling


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 

All times are UTC - 8 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
It is currently Mon Dec 22, 2014 11:24 am
Powered by phpBB® Forum Software © phpBB Group