Updating Crashplan on the Synology

So you may have noticed, I use Crashplan for my backups. Even though many people complain about it’s slow upload speeds (mainly in the US). It’s one of the few cloud backup services that actually has a presence in Australia. Since Australia is more or less known for it’s backwater internet speeds, there isn’t much more you can expect living here. Fortunately, I am lucky enough to live in an area where I can get fibre and the upload speeds really aren’t anything to complain about.

The short is Crashplan is a great choice despite the limited choices I do have. But enough about that.

As you may have gathered from the title, I run my Crashplan instance on my Synology NAS. This has the benefit of providing a local backup for all my family’s machines and also a way for me to backup the data on the NAS to Crashplan’s cloud.

Unfortunately, this isn’t exactly a supported configuration for Crashplan. One of the brilliant members of the Synology user community, namely PC Load Letter (patters), has packaged the Linux version of Crashplan that we may all reap the benefits. He even regularly updates it too.

However, being an unsupported configuration, sometimes updating the instance gets a bit tricky. There are three main points I need to remember.

The Short List

  1. Java needs to be either installed separately or downloaded separately.
  2. After installation, Crashplan will likely download an upgrade and it will fail causing the package to stop running. The upgrade will need to be run manually from the Synology’s shell.
  3. A new UI token will probably be generated and I’ll need to update the VM where I manage the NAS’s instance in order to connect to it again.

This is the short list. If you remember what you need to do from this, you need read no further. Otherwise, detailed steps will follow.

Detailed Steps

OK, detailed steps because sometimes we can’t always remember how to do things exactly.

Download Java from Oracle

If you’re using Synology’s Java 8 package, you can probably skip this step. I haven’t fully tested it personally but it seemed it like was working last time I tried. I had hypothesised that the upgrade download was being triggered because the Java package wasn’t found or something. Turns out I was wrong but I had already switched to the dedicated package. I figure it’d be more predictable since patters is going to update his package regularly anyway.

Anyway patters will tell you which version of Java 8 SE runtime to download and provide a link. If you’ve done it on time, it’ll be the latest release. If you’ve been lazy like me, you’ll need to download one of the previous releases (which requires an oracle login).

Copy CPIO

sudo su -
cp /var/packages/CrashPlan/target/bin/cpio /bin

Not exactly sure what CPIO does but it seems essential to applying the upgrade from Crashplan.

Run upgrade script again:

cd /volume1/@appstore/CrashPlan
cat ./upgrade.cpi | gzip -d -c -- | cpio -iv

This will run the downloaded upgrade from Crashplan manually and shouldn’t run into issues this time.

Get new UI token

The UI token is needed for the Crashplan client to connect to the backup service running on the NAS. When you install Crashplan on Windows it actually installs two components. The backup service: which actually does all of the work for backing up files. And the client UI: which provides you the interface to configure and maintain the backup service. The package for the NAS only installs the backup service on the NAS. You’ll need to install the client UI on an actual PC so that you can configure the backup service on the NAS.

Run up Bash on Windows (what, you don’t have bash installed on Windows?) and ssh to the NAS. Then:

cd /var/lib/crashplan
more ./.ui_info

And you should get something like this:

4243,bacae745-deaa-4d74-bbaf-7a4c4afd8c35,0.0.0.0
^^^^         ^^^^^^^^^^^^^^^^^^^^         ^^^^^^^
TCP Port           UI Token               IP Address

Copy the bit in the middle and go to where you’ve installed the Crashplan client somewhere and find the .ui_info file. Edit the .ui_info file in a text editor and replace the token in there with the one you have copied from the NAS. Also change the Port and IP address to match your NAS and save the file.

If all is correct you can run up the Crashplan client and it should ask you to login. Login with your existing Crashplan account and all should be back to normal. That’s it!

Leave a comment