CrashPlan on Netgear ReadyNAS RN312 – hello!

Edit: Installing according to the instructions below works, but it does place CrashPlan’s log and cache files on the very size constrained root partition of the ReadyNas. Especially the cache files will quickly fill that partition of you have lots of files.
It is however easy to move those cache and log files to a better location, so once done with the instructions below, check out this post for details on how to move cache and log.

 

I’ve been using CrashPlan for a couple of years now, it’s a great service. In particular I like the peer-to-peer backup feature, where I can configure my parents’ (or friends) computer to back up to my small headless server during the night, making sure they don’t loose their pictures due to some unfortunate keyboard sequence.. The paid-for service is very reasonably priced too, giving me unlimited backup space for $4.79/month, given a 2-year signup period. Nice.

The downside is that you must keep your computer on at all times. Sure, that might be fine, but given that I try to reduce the carbon (and energy, in general) footprint around here, I’d rather put my computers in sleep or hibernation when not used. The one exception I am willing to make is a good NAS, and possibly also a jump host that will give me ssh access to my home network. Maybe the two combined in a single server – or the jump host in a very small and low power server. Anyway, after years of trying out different setups, mainly focused around a) my iMac with an external USB drive, and b) headless servers (I have all of the Bubba servers, http://www.excitostore.com/sv/frontpage, awesome servers, but even the B3 is today slightly underpowered. Tough challenge keeping up with all the new hardware architectures coming to market. So when the Atom powered dual core Netgear RN 312 was announced it seemed like a nice platform. The java powered CrashPlan application should not be a problem (others have successfully installed it on other x86 powered Netgear NAS:es), it supposedly also nicely handles lots of UPS:es, including (I hope!!) the slightly uncommon Bluewalker UPS that I use. Anyway, getting CrashPlan up and running on the ReadyNAS was top prio. Turned out that some changes were needed, compared to the walk-throughs for earlier ReadyNAS versions. First, the usual disclaimer: One or more of the suggestions in this blog post and related posts on this blog may very well void the warranty of your NAS devices. So. Enough. Given the risk of myself having to re-do this at a later date, or for the benefit of others having the desire for the same setup, here we go:

  1. www.shasam.net has been invaluably helpful, providing general ideas on how to approach CrashPlan on ReadyNAS:es. Still, as the instructions there doesn’t work for the RN312 series, I feel it might be useful with some additional comments.
  2. On the RN312 (using the standard web UI), create a share named “Crashplan”. It will be stored under /data/Crashplan Enable ssh root access (once again, using the standard UI).
  3. ssh into the NAS, using something like ssh root@192.168.1.x, adjust the IP address as needed. Use the pwd of the admin user, that you set when configuring the NAS.
  4. create a working directory, I use /root/dl (as in “download”):
    [code language=”css”]
    cd
    mkdir dl
    cd dl
    [/code]
  5. Install Java:
    [code language=”css”]
    apt-get install openjdk-6-jre-headless
    [/code]
  6. Get CrashPlan (adjust as needed to get latest version):
    [code language=”css”]
    wget http://download.crashplan.com/installs/linux/install/CrashPlan/CrashPlan_3.5.3_Linux.tgz tar -xvzf CrashPlan_3.5.3_Linux.tgz
    [/code]
  7. You need to install some packages to get things working:
    [code language=”css”]
    apt-get install dialog
    dpkg-reconfigure debconf
    [/code]
  8. Set the debconf level to “dialog” and “medium”. It turns out the pre-installed version of cpio doesn’t quite cut it.. Replace it:
    [code language=”css”]
    apt-get remove busybox-cpio
    apt-get install cpio
    [/code]
  9. With Java installed and some environment changes in place, time to install CrashPlan:
    [code language=”css”]
    cd /CrashPlan-install
    ./install.sh
    [/code]
  10. Just press enter to use the default settings, except for where to store the CrashPlan data. Full conversation follows (with EULA slightly shortened). Also, line breaks were lost in copy-paste process, so what’s shown on screen probably differs a bit from the below:
    [code language=”css”]
    Welcome to the CrashPlan Installer.
    Press enter to continue with installation.
    Validating environment… detected root permissions 49581 blocks
    You must review and agree to the EULA before installation. Press enter to read the EULA.

    <EULA>
    Do you accept and agree to be bound by the EULA? (yes/no) yes
    What directory do you wish to install CrashPlan to? [/usr/local/crashplan]
    What directory do you wish to link the CrashPlan executable to? [/usr/local/bin]
    What directory do you wish to store backups in? [/usr/local/var/crashplan] /data/Crashplan
    What directory contains your SYSV init scripts? [/etc/init.d]
    What directory contains your runlevel init links? [/etc/rc5.d]

    Your selections:
    CrashPlan will install to: /usr/local/crashplan
    And put links to binaries in: /usr/local/bin
    And store datas in: /data/Crashplan
    Your init.d dir is: /etc/init.d
    Your current runlevel directory is: /etc/rc5.d
    Is this correct? (y/n) [y]

    Unpacking /
    ./CrashPlan_3.5.3.cpi … 49581 blocks
    /usr/local/crashplan/bin/CrashPlanEngine: line 113: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8.UTF-8): No such file or directory
    Starting CrashPlan Engine …
    Using standard startup OK
    CrashPlan has been installed and the Service has been started automatically.

    Press Enter to complete installation.

    Important directories:
    Installation: /usr/local/crashplan
    Logs: /usr/local/crashplan/log
    Default archive location: /data/Crashplan

    Start Scripts:
    sudo /usr/local/crashplan/bin/CrashPlanEngine start|stop
    /usr/local/crashplan/bin/CrashPlanDesktop

    You can run the CrashPlan Desktop UI locally as your own user or connect a remote Desktop UI to this Service via port-forwarding and manage it remotely. Instructions for remote management are in the readme files placed in your installation directory: /usr/local/crashplan/doc
    To start the Desktop UI: /usr/local/bin/CrashPlanDesktop

    Installation is complete. Thank you for installing CrashPlan for Linux.

    root@RN312:~/dl/CrashPlan-install#
    [/code]

     

  11. Reset debconf to non-interactive (using “noninteractive” and “medium” as settings):
    [code language=”css”]
    dpkg-reconfigure debconf
    [/code]

With this, it should be a smooth ride following the previously mentioned blog post to set up CrashPlan. Worked for me, a few hours later the RN312 has now backed up a few GB and progressing nicely. The full backup will take weeks or more, but that’s fine – the summer is long and I have other backups in place meanwhile.

17 Replies to “CrashPlan on Netgear ReadyNAS RN312 – hello!”

  1. Very Cool! It’s really fun to see the creative ways people install CrashPlan. That said, *our* standard disclaimer is that running CrashPlan directly on a NAS has not been tested by CrashPlan and thus it is unsupported.

    Thanks for posting!

    Ryan at Code 42, makers of CrashPlan.

  2. Just want to say thanks. Had been struggling getting CrashPlanPRO installed on ReadyNAS 4220 – the removal of busybox and installation of cpio is what did the trick. Other guides I had been looking at didn’t include that.

    Thanks again,

    Eric

  3. Just used this guide (with some tweaks) to install CrashPlan 3.6.3 on a ReadyNAS 314 with firmware 6.1.8. I also used openjdk-7-jre-headless. Worked like a charm! Thanks!

  4. Thanks for this article! I’m working on setting Crashplan up on my ReadyNAS 104 and it’s sort of a pain but I’m getting there. BTW: for anyone running into issues with JTUX, the one here seems to do the trick (just grab the libjtux.so like it says in the readme): https://github.com/swenson/jtux

  5. Thanks for the great instructions – works like a charm on my 6.2.2 ReadyNAS 312. I also had to move the cache files which also worked out great.
    Before I put myself in a ditch, do you have guidance for how to upgrade to the latest crashplan engine? I’m sitting at 3.6.4, the latest is 3.7.0. I’m thinking I will need to redo the install process but I’m not sure….any help would be appreciated!

    1. @gene,

      Good question… I’m not sure, to be honest.
      I’d probably first make sure I have done a full backup to CrashPlan, then remove the 3.6.4 binaries etc, but leave the backup data folders intact. Best case they will be recognised once you have installed 3.7.0 (assuming you give 3.7.0 your encryption key etc).

      I actually just a few days ago reinstalled my entire ReadyNAS 312, and as part of that I kept notes on all steps needed to get CrashPlan and other software installed.
      I found a few ways of improving the previous setup, so I’ll try to find time to post it here in a day or two.

      1. As I looked into this, I discovered that the version reported by the client changed from 3.6.4 to 3.7. So perhaps the update happens automatically – too good to be true. You can check the engine version from the client by pointing the client at the readynas IP (look for the serviceHost inside ui.properties for the client) and then double click on the crashplan logo in the upper right. Once the command line pops up, enter “version”. If the version reported is correct then the engine must be updating itself.

    1. You can check this site for openjdk-7 instructions. It’s really not that different from what’s in this post though.

      http://blog.andrewkoebbe.com/blog/2014/06/installing-crashplan-headless-on-a-readynas-102

      Only other things that come up are downloading/replacing JTUX and then also installing the libjna-java package

      I recently picked up the newer RN204 and am going through setting CP up on this unit – it’s pretty much the same thing. I’m just trying to figure out the order in which to “adopt” vs move all my disks from the RN104 over to the RN204. I’m tempted just to get new drives though and replicate between the 104 and 204 in addition to backing up to CP.

Leave a Reply

Your email address will not be published. Required fields are marked *