NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.

Forum Discussion

Dewdman42's avatar
Dewdman42
Virtuoso
Sep 25, 2017

CrashPlan on ReadyNas, Review and Install

Code42 have recently discontinued CrashPlan Home leaving the only option to upgrade to the more expensive CrashPlan Small Business edition.  However after testing for a few weeks with iDrive as an alternative, I have decided to make the leap to CrashPlan Small Business and I am quite pleased with the results.  I believe this is the best cost effective backup solution for backing up readynas data to the cloud today.  It is however, fairly complicated to setup, as was the Home Edition.  Once installed, however, it performs splendidly.  I will provide install instructions and usage suggestions here as well.  I hope someday WhoCares or someone might turn this into an actual addon so that it can be installed and used without SSH access, maybe I will someday.

 

Benefits

Here are the main points that make CrashPlan such a great solution for backing up readynas

  1. Unlimited data plan at $10/month
  2. Very good bandwidth, I have been getting pretty stable 30mbps upload speed, which is 30% of my ISP max.
  3. File permissions are preserved in the backup archive, including owner perms
  4. Time machine style restoration from a date in time, with flexible configuration for what to keep in the archive
  5. Configurable CPU throttling
  6. Configurable bandwidth throttling
  7. Backup sets
  8. Able to backup any dir on the readynas, including system dirs such as /etc, /apps, etc
  9. GUI client is very good, java client/server client which can access a headless readynas using rich java client, rather then web based.
  10. Very professional customer support and a rich web portal for accessing information about your backup.
  11. Crashplan account can be expanded to include backing up other devices on the network and managed form one web portal login.

Pre-Requisites

There are quite a few pre-requisites in order to install and run crashplan on a readynas.  

  1. SSH access in order to install and configure
  2. cpio on the readynas has to be upgraded, the built in version is not good enough: 
    sudo apt-get remove busybox-cpio
    sudo apt-get install cpio
  3. More memory.  Crashplan needs about 600-800MB of ram per 1TB of data to backup.  I ended up buying some ram for my readynas and expanding it to 2GB.  More about memory below.
  4. Obtain the Linux installer.  This is available through the CrashPlan Small Business web portal after logging in.
  5. One more Mac/PC in order to run the java client on.
  6. (note, there may be a few more pre-requisites that I am not remembering now, so please let us know so I can update this guide)

Installation

  1. Extract the installer 
    tar -xvf CrashPlanPRO_4.9.0_1436674888490_33_Linux.tgz
    cd crashplan_install
  2. run the installer 
    sudo ./install.sh
  3. Answer the questions asked by the installer.  Most of the questions are self explanatory, but there is only one of them I will point out, the default location for crashplan is under /usr/local/, however this is a poor choice because crashplan stores very large cache files under its working path while running and it can quickly fill up your readynas boot partition.  For that particular question I reccomend specifying /apps as the crashplan path.  I have found the remaining defaults to be satisfactory.
  4. The installer will start the crashplan daemon running in the background.  This is fine for now.
  5. Configure the crashplan deamon so that it can receive connections from the java client on other machines besides localhost.  This is done by editing the following file: 
    /apps/crashplan/conf/my.service.xml
    and change the serviceHost item to as follows 
    <serviceHost>0.0.0.0</serviceHost>
     Save the file
  6. Restart the crashplan daemon 
    sudo /etc/init.d/crashplan restart
  7. Obtain auth information about the crashplan deamon so that a client can connect.  Open the following file:
    /var/lib/crashplan/.ui_info
    Take note in this file there are three values seperated by commas, you want to copy the middle long value to the clipboard, which is an auth token: 
    4243,966c13be-5860-4913-8742-1787523fffe9,0.0.0.0
    So in this case the value copied to the clipboard is: 
    966c13be-5860-4913-8742-1787523fffe9
  8. Now you're ready to setup the GUI java client on another Mac/PC.  The following instructions are for mac, PC instructions are going to be slightly different but you can find some hints here: https://support.code42.com/CrashPlan/4/Configuring/Use_CrashPlan_on_a_headless_computer  
  9. After installing the crashplan GUI you should disable the crashplan daemon on the client machine as it will not be utilized.  For the mac, this means disabling the following launchd config:
    /Library/LaunchDaemons/com.crashplan.engine.plist
    (hint, use launchctl command )
  10. Edit the .ui_info file, on mac found here:  
    /Library/Application\ Support/CrashPlan/.ui_info
    Paste the auth token into the middle position, as noted earlier.  Also update the third parameter after the last comma, to the IP address of your readyas.  Like this:
    4243,966c13be-5860-4913-8742-1787523fffe9,192.168.1.80
  11. If you you disabled and killed the CrashPlan daemon service mentioned above, then this step might not be neccessary, but the service has a tendency to overwrite the .ui_info file with a new auth token, so its a good idea, once you have it configured, to make the file immutable so that it absolutely cannot be changed.  chmod is not good enough for this.  Note, this may not be neccessary if the crashplan daemon service is completely disabled:
    sudo chflags schg /Library/Application\ Support/CrashPlan/.ui_info
    Note that if you need to edit this file again in the future because the .ui_info over on the readynas is updated for some reason, then you will need to use the following command to make this file editable again: 
    sudo chflags noschg /Library/Application\ Support/CrashPlan/.ui_info 
    It very well may be that if the daemon is disabled on the mac, then you will not have to monkey around with making .ui_info immutable.  I have mine locked down just in case for now.  I'm not at all sure what happens on PC.
  12. Alright, run the GUI client on the mac/pc.  You will be prompted for your crashplan userid and password, or to create one.  Go for it.  It should eventually pull up the complete GUI and you will see that its pointing to your readynas by name, and that you will see the filesystem of your readynas.  You're good to go.  The GUI client is now controlling the crashplan service running on the readynas.  Configure it and make a backup!

Configuration Notes

  1. If you plan to backup more than 1TB of data, then first see the following tech note from Crashplan and follow the instructions, this will expand the amount of memory available to the crashplan service on readynas.  If you only have 1GB of ram on your readynas then you will be more limited.  I configured my crashplan to use a max of 1.5GB, with 2GB of physical ram installed on my readynas: https://support.code42.com/CrashPlan/4/Troubleshooting/Adjust_Code42_app_settings_for_memory_usage_with_large_backups
  2. Note that if you try to run a large backup that needs more memory, and if you don't have enough memory and also haven't configured crashplan to use more max memory, then the crashplan service will actually "crash".  You've been warned.  This is the one downside of crashplan, its a memory pig, and consquently I can only backup about 1.5-2TB of my readynas data.
  3. Updating the ram on a readynas is a good thing to do and not expensive, very easy, I highly reccomend.  I updated mine to the max allowable of 2GB and crashplan was the main reason why.  Even with 2GB, I am limiting my backups to 1TB backup sets.
  4. Its very important that you followed the instructions above to install crashplan under /apps or someplace other then /usr/local.  Otherwise, crashplan will very quickly fill up your boot partition with cache files.
  5. The auth token link up between client and server is pretty stable, I have found that the readynas side does not change the auth id very often, so once its setup it should work without concern for months or years.  However, sometimes because of an update from code42 or some other strange thing, the auth token does get changed in the readynas .ui_info file.  When that happens, you will need to edit the .ui_info file on the client to match it.  Otherwise running the GUI client will return an error saying it can't connect.
  6. The Code42 FAQ abou how to setup a headless operation makes mention of SSH tunneling.  This guide from me is not using SSH tunneling.  My approach is definitely more simple and I prefer it, rather then having to setup an SSH tunnel and ensure its always running.  That being said, using an SSH tunnel provides a few benefits, in which case consult the FAQ from code42 about how to set it up.

1 Reply

Replies have been turned off for this discussion
  • I can't update my original post, so here are things I wanted to add to it:

     

    CrashPlan Disadvantages

    1. Crashplan is a memory pig.  My readynas has 2gb of ram and basically I will probably not be able to backup more than about 2TB, give or take.  
    2. Crashplan is very complicated to setup on readynas compared to other offerings.

     

NETGEAR Academy

Boost your skills with the Netgear Academy - Get trained, certified and stay ahead with the latest Netgear technology! 

Join Us!

ProSupport for Business

Comprehensive support plans for maximum network uptime and business peace of mind.

 

Learn More