Page 1 of 2

[HOWTO] SpiderOak Online Backup

Posted: Sun Jun 13, 2010 5:32 am
by ChillyWilly
Image

When looking for an alternative for CrashPlan, which was way to slow (350kb/sec), I found SpiderOak. Is it not only backup, but allso, syncing and sharing. It supports, Linux, Mac and Windows. And you get 2GB free!

This is what I did to get it up and running on my TS-509 Pro. You do need a debian based linux distro to extract the .deb file. If you are on windows you can use VirtualBox (free) with the Ubuntu LiveCD (free).

Download SpiderOak: https://spideroak.com/download/ubuntulucid and extract it using the following command from the commandline

Code: Select all

dpkg-deb -x spideroak_9667_i386.deb spideroak

Then copy the spideroak directory to you NAS, I used Qdownload/spideroak. Now SSH/Telnet into your NAS and do the following. You need IPKG installed

Code: Select all

ipkg update
ipkg install python26
cp -r /share/Qdownload/spideroak /opt
mkdir /opt/spideroak/conf
vi /opt/spideroak/usr/bin/SpiderOak

Now using VI change the bathfile to look like this:

Code: Select all

#!/bin/sh

if [ ! -d "/root/.SpiderOak" ]; then
    ln -s /opt/spideroak/conf /root/.SpiderOak
fi

LD_LIBRARY_PATH="/opt/spideroak/usr/lib/SpiderOak:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH

exec /opt/spideroak/usr/lib/SpiderOak/SpiderOak "$@"

What we do here is make sure the .SpiderOak configuration directory, which is normally on the ramdisk, is pointing to our conf directory we just created.

The following is an excerpt from: https://spideroak.com/faq/how_do_i_set_ ... ommandline
Go to https://spideroak.com/nus/console and fill out the form and submit. Save the newusersetup.js to your NAS. Then do the following on your NAS:

Code: Select all

/opt/spideroak/usr/bin/SpiderOak --bootstrap=<path to downloaded file>

Now follow the instructions to create a new account.

Commandline options:

Code: Select all

/opt/spideroak/usr/bin/SpiderOak --help


Adding directories to you backup:

Code: Select all

/opt/spideroak/usr/bin/SpiderOak --include-dir=INCLUDE_DIR


Starting backup:

Code: Select all

/opt/spideroak/usr/bin/SpiderOak --batchmode (use the -v option for log output in the terminal)


Now to add the backup to crontab: http://wiki.qnap.com/wiki/Add_items_to_crontab Add this line:

Code: Select all

0 2 * * * /opt/spideroak/usr/bin/SpiderOak --batchmode

NOTE, editing the crontab described above didn't work for me. I edited /var/run/cron/crontabs/admin directly

Re: [HOWTO] SpiderOak Online Backup

Posted: Sun Jun 13, 2010 5:33 am
by ChillyWilly
[RESERVED]

Re: [HOWTO] SpiderOak Online Backup

Posted: Mon Nov 08, 2010 9:29 pm
by MrOrange
Hi ChillyWilly - Great post!

I've been using Mozy but have decided to try and find a backup solution to run from the QNAP. I've just trialled the windows software for SpiderOak and it looks like it will do the job.

I followed your post to the letter (I think!) however I am getting an error when trying to execute SpiderOak and load the boot strap.

Code: Select all

[/] 
# /opt/spideroak/usr/bin/SpiderOak --bootstrap=/opt/spideroak/conf/newusersetup.js
/opt/spideroak/usr/bin/SpiderOak: line 10: /opt/spideroak/usr/lib/SpiderOak/SpiderOak: cannot execute binary file
/opt/spideroak/usr/bin/SpiderOak: line 10: /opt/spideroak/usr/lib/SpiderOak/SpiderOak: Success


Line 10 of /opt/spideroak/usr/bin/SpiderOak being

Code: Select all

exec /opt/spideroak/usr/lib/SpiderOak/SpiderOak "$@"


I'm using a QNAP-419P with Python 2.7 installed (required for Sickbeard).

Hope you can help!

Thanks,
James

Re: [HOWTO] SpiderOak Online Backup

Posted: Tue Nov 09, 2010 4:50 pm
by ChillyWilly
Is "/opt/spideroak/usr/lib/SpiderOak/SpiderOak" the correct path? check with

Code: Select all

ls /opt/spideroak/usr/lib/SpiderOak/SpiderOak

Re: [HOWTO] SpiderOak Online Backup

Posted: Tue Nov 09, 2010 5:53 pm
by MrOrange
Thanks for the reply;

Yep

Code: Select all

[/] # ls /opt/spideroak/usr/lib/SpiderOak/SpiderOak
/opt/spideroak/usr/lib/SpiderOak/SpiderOak*


Would it have anything to do with different python versions?

Really want this to work! Online backups are the last thing I rely on for PC's - except for browsing and gaming :)

Re: [HOWTO] SpiderOak Online Backup

Posted: Tue Nov 09, 2010 7:08 pm
by MrOrange
Bit more reading, looks like you need an x86 processor for SpiderOak... Doesn't look like they support ARM :(

Back to the drawing board then!

Re: [HOWTO] SpiderOak Online Backup

Posted: Wed Dec 29, 2010 11:30 pm
by orx57
Hello,

Thank you for this HowTo!
I have a little problem... :)

On a QNAP SS-439 Pro (Version 3.3.6 build 1110T) with Python 2.7 (QPKG) and SpiderOak 9740, I get the following message:

Code: Select all

[~] # /share/MD0_DATA/.qpkg/SpiderOak/usr/bin/SpiderOak --bootstrap=/share/MD0_DATA/.qpkg/SpiderOak/etc/newusersetup.js
Traceback (most recent call last):
  File "<string>", line 6, in <module>
  File "__main__.py", line 105, in <module>
  File "__main__SpiderOak__.py", line 53, in <module>
  File "__main__SpiderOak__.py", line 27, in main
  File "oak/Oak.py", line 16, in <module>
  File "PyQt4/QtCore.py", line 14, in <module>
ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory


How to obtain and properly install this library?
And perhaps other pre-requisites?
I have ipkg installed, but I have no idea...

Regards,

Re: [HOWTO] SpiderOak Online Backup

Posted: Thu Dec 30, 2010 12:02 am
by orx57
I answer myself... :)
I installed the following packages via ipkg :

Code: Select all

[/share/MD0_DATA/.qpkg/SpiderOak/usr/bin] # ipkg list_installed
expat - 2.0.1-1 - XML Parser library
fontconfig - 2.8.0-0 - Font configuration library
freetype - 2.3.6-1 - Free truetype library
gconv-modules - 2.6.1-1 - Provides gconv modules missing from the firmware.  These are used by glibc iconv() implementation.
glib - 2.20.4-1 - The GLib library of C routines.
ice - 6.3.5cvs20050130-2 - X inter-client library
sm - 6.0.4+cvs20050207-2 - X session management library
x11 - 6.2.1+cvs20050209-3 - X protocol library
xau - 0.1.1+cvs20050130-2 - X authorization library
xdmcp - 0.1.3+cvs20050130-2 - XDMCP protocol library
xext - 6.4.3+cvs20050130-2 - X extensions library
xrender - 0.8.4+cvs20050130-4 - X render extension library
zlib - 1.2.5-1 - zlib is a library implementing the 'deflate' compression system.
Successfully terminated.


All of this are required by SpiderOak.

Regards,

Re: [HOWTO] SpiderOak Online Backup

Posted: Thu Dec 30, 2010 4:08 am
by ChillyWilly
Yes, you need glib installed, thanks for the reply.

Re: [HOWTO] SpiderOak Online Backup

Posted: Thu Dec 30, 2010 5:47 pm
by bjmac3point0
Hi,

I also have attempted to configure SpiderOak
I have a QNAP TS-439 Pro (Version 3.3.6 build 1110T) with Python 2.7 (QPKG) and SpiderOak 9740, I also get a similar message:

Code: Select all

[/opt/spideroak/usr/bin] # sh SpiderOak --bootstrap=/share/MD0_DATA/.qpkg/Optware/spideroak/newusersetup.js
Traceback (most recent call last):
  File "<string>", line 6, in <module>
  File "__main__.py", line 105, in <module>
  File "__main__SpiderOak__.py", line 53, in <module>
  File "__main__SpiderOak__.py", line 27, in main
  File "oak/Oak.py", line 16, in <module>
  File "PyQt4/QtCore.py", line 14, in <module>
ImportError: libXext.so.6: cannot open shared object file: No such file or directory


The difference being the shared object that is unable to be found, in my case: libXext.so.6
I was excited to find the previous post from "orx57" and promptly installed the packages listed but I still receive the ImportError message

My ipkg installed as listed:

Code: Select all

[/opt/spideroak/usr/bin] # ipkg list_installed
apr - 1.3.9-1 -
apr-util - 1.3.9-1 - Apache Portable Runtime utilities library
busybox - 1.10.3-1 - A userland replacement for embedded systems.
busybox-base - 1.10.3-1 - A userland replacement for embedded systems.
busybox-links - 1.10.3-1 - A userland replacement for embedded systems.
bzip2 - 1.0.6-1 - Very high-quality data compression program
cyrus-sasl-libs - 2.1.23-1 -
e2fslibs - 1.41.9-1 - Ext2 Filesystem Libraries
expat - 2.0.1-1 - XML Parser library
fontconfig - 2.8.0-0 - Font configuration library
freetype - 2.3.6-1 - Free truetype library
gconv-modules - 2.6.1-1 - Provides gconv modules missing from the firmware.  These are used by glibc iconv() implementation.
gdbm - 1.8.3-2 - GNU dbm is a set of database routines that use extensible hashing. It works similar to the standard UNIX dbm routines.
glib - 2.20.4-1 - The GLib library of C routines.
ice - 6.3.5cvs20050130-2 - X inter-client library
ipkg-web - 7-7 - A web frontend for ipkg
libdb - 4.2.52-3 - Berkeley DB Libraries
libstdc++ - 6.0.9-6 - Standard C++ library, needed for dynamically linked C++ programs
libxml2 - 2.7.6-1 -
mysql - 4.1.22-3 - Popular free SQL database system
ncurses - 5.7-1 - NCurses libraries
ncursesw - 5.7-1 - NCurses libraries with wide char support
neon - 0.29.3-1 - an HTTP and WebDAV client library, with a C interface
openldap-libs - 2.3.43-1 -
openssl - 0.9.8l-1 -
perl - 5.10.0-6 - Practical Extraction and Report Language.
perl-appconfig - 1.56-3 - Perl5 module for reading configuration files and parsing command line arguments.
perl-carp-clan - 5.3-1 - This module reports errors from the perspective of the caller of a clan of modules, similar to Carp.pm itself.
perl-date-calc - 5.4-2 - Gregorian calendar date calculations.
perl-date-manip - 5.48-1 - date manipulation routines
perl-dbd-mysql - 4.006-1 - DBD-mysql - The Perl Database Driver for MySQL.
perl-dbi - 1.607-1 - DBI - The Perl Database Interface by Tim Bunce.
perl-email-address - 1.889-1 - RFC 2822 Address Parsing and Creation.
perl-email-messageid - 1.401-1 - Generate world unique message-ids.
perl-email-mime - 1.863-3 - Easy MIME message parsing.
perl-email-mime-contenttype - 1.015-1 - Parse a MIME Content-Type Header.
perl-email-mime-encodings - 1.312-1 - A unified interface to MIME encodings and decoding.
perl-email-mime-modifier - 1.443-2 - Modify Email::MIME Objects Easily
perl-email-send - 2.194-2 - Simply Sending Email.
perl-email-simple - 2.005-1 - simple parsing of RFC2822 message format and headers.
perl-module-pluggable - 3.8-1 - Automatically give your module the ability to have plugins.
perl-return-value - 1.302-1 - Polymorphic Return Values
perl-template-toolkit - 2.19-1 - The Template Toolkit is a fast, powerful and extensible template processing system. (www.template-toolkit.org)
perl-timedate - 1.16-1 - A date and time module for perl.
perl-uri - 1.35-3 - URI - <module_description>
readline - 6.1-1 -
sm - 6.0.4+cvs20050207-2 - X session management library
sqlite - 3.6.22-1 -
svn - 1.6.9-1 -
x11 - 6.2.1+cvs20050209-3 - X protocol library
xau - 0.1.1+cvs20050130-2 - X authorization library
xdmcp - 0.1.3+cvs20050130-2 - XDMCP protocol library
xext - 6.4.3+cvs20050130-2 - X extensions library
xextensions - 1.0.2-2 - Headers for standard extensions to the X protocol
xrender - 0.8.4+cvs20050130-4 - X render extension library
zlib - 1.2.5-1 - zlib is a library implementing the 'deflate' compression system.
Successfully terminated.


I would really appreciate if someone is able to point out the package I need to install to have this library available to SpiderOak.
Also if at all possible, a method to locate and solve this type of problem in the future ...

Thankyou, Ben

Re: [HOWTO] SpiderOak Online Backup

Posted: Thu Dec 30, 2010 6:31 pm
by orx57
Hi bjmac3point0,

The libXext.so is in xext...
After installation of packages, i have modifed the following lines in the startup script :

Code: Select all

LD_LIBRARY_PATH="$SPIDEROAK_ROOT/usr/lib/SpiderOak:/usr/lib:/opt/lib:$LD_LIBRARY_PATH"


This line add path (/usr/lib and /opt/lib) to shared libraries of installed packages (x11, glib, etc...)
Maybe this is the solution for you too...

Regards,

Re: [HOWTO] SpiderOak Online Backup

Posted: Thu Dec 30, 2010 7:13 pm
by bjmac3point0
AWESOME!! Thanks, that worked a treat.

Kinda obvious now that I look in /opt/lib .... thanks, I'm very new to Linux and very much appreciate your taking time to reply

Re: [HOWTO] SpiderOak Online Backup

Posted: Tue Jan 04, 2011 12:20 am
by daniel_engvall
MrOrange wrote:Bit more reading, looks like you need an x86 processor for SpiderOak... Doesn't look like they support ARM :(

Back to the drawing board then!


Have you or anyone else thought about running QEMU on QNAP (ARM) to emulate x86 and running SpiderOak?
Nothing that I've tested myself - so I don't know for sure, but it looks like it might be possible to

1. Install "Optware IPKG" on QNAP if you like to install QEMU as an ipkg-package
instructions: http://wiki.qnap.com/wiki/Install_Optware_IPKG

2. Install "QEMU" (available as ipkg) - at least working for NSLU2 (ARM-based)
instructions: http://www.nslu2-linux.org/wiki/Optware ... slung.Qemu

Would be interresting if this could be one way to run SpiderOak-x86 on QNAP (ARM-based)

Cheers,
/Daniel

Re: [HOWTO] SpiderOak Online Backup

Posted: Sun Mar 06, 2011 3:35 am
by TorturedLuddite
If you are still having trouble, the new firmware (you can upgrade if you've got an old model, or you may already have it if you've bought recently) includes two automatically built in cloud backup options: direct to Amazon S3 and ElephantDrive.

Both can be set up entirely through the admin web pages, so no need for shell access or command line coding. Check 'em out here:

Cloud Storage Overview:
http://www.qnap.com/fw_v34/CloudStorage.aspx?lang=eng

Amazon S3 Notes: http://www.qnap.com/pro_application.asp?ap_id=228
ElephantDrive Notes: http://www.qnap.com/pro_application.asp?ap_id=613

Re: [HOWTO] SpiderOak Online Backup

Posted: Thu Mar 19, 2015 3:14 pm
by ChillyWilly
I have moved away from using SpiderOak. Dealing with the supported backup systems is a lot easier.