Update: This got me part-way there, but I never really got it 100% of the way to success. I’m leaving it here in the hopes that someone can get it the rest of the way to the finish line.
I wanted to set up a TonidoPlug as a NAS, using CrashPlan to back-up my files. It wasn’t a cake-walk, but it appears to work.
- Download ARMv5 Linux - Headless EABI, soft float, little endian Java from http://www.oracle.com/technetwork/java/javase/downloads/embedded-jsp-135769.html. (You'll have to do this from a complete computer -- not your plug computer.)
- Push the downloaded Java to /tmp/java-jre.tgz on your plug.
- tar zxvf /tmp/java-jre.tgz
- mv ejre1.6.0_21 /usr/java6-kpk
- Edit /etc/environment, and add /usr/java6-kpk to the start of PATH
- Logout/login, and check to ensure you got the PATH right, before you install CrashPlan.
- Download CrashPlan for Linux from http://www.crashplan.com/consumer/download.html?os=Linux (You'll have to do this from a complete computer.)
- Push the downloaded crashplan to /tmp/crashp.tgz on your plug.
- tar zxvf crashp.tgz
- cd CrashPlan-install
- ./install.sh [Note: I took all the defaults except I told it to put backups in /usr/local/crashplan-backups]
- Visit http://www.pchilton.co.uk/2011/01/29/crashplan-online-backup-on-qnap-ts-210-nas/
- Scroll down until you see "I have now attached my compiled version of the jtux library: libjtux.so"
- Download libjtux, push it to your plug as /tmp/libjtux.so.gz.
- On the plug, cd /usr/local/crashplan
- mv libjtux.so original-libjtux.so
- mv /tmp/libjtux.so /usr/local/crashplan/
- Reboot your plug.
- apt-get -d install libjna-java
- If you don't do the libjna-java, CrashPlan will start, but it will forever say "Waiting for backup" and pressing the "Backup now" button won't do anything.
- Making this fit on the TP's flash drive can be a challenge. If you start running low on space (use "df -k" in another ssh session), you can "rm /usr/share/fonts/truetype/*" to recover font space. You don't need fonts on a headless server.
- It might not complete the install. Once /usr/share/java/jna.jar shows up, you can interrupt the install. Oops! You're gonna need libjnidispatch.so too.
- Copy /usr/share/jva/jna.jar to a safe location.
- apt-get remove acl ca-certificates-java consolekit dbus dbus-x11 default-jre default-jre-headless defoma fontconfig fontconfig-config gstreamer0.10-pulseaudio hal hal-info hdparm icedtea-6-jre-cacao java-common libaccess-bridge-java libasound2 libasound2-plugins libavahi-client3 libavahi-common-data libavahi-common3 libbluetooth3 libcap2 libck-connector0 libdbus-1-3 libdbus-glib-1-2 libffi5 libflac8 libfontconfig1 libfontenc1 libfreetype6 libgif4 libgstreamer-plugins-base0.10-0 libgstreamer0.10-0 libhal-storage1 libhal1 libice6 libjna-java liblcms1 libltdl7 libpam-ck-connector libpci3 libpciaccess0 libpolkit-dbus2 libpolkit-grant2 libpolkit2 libpulse-browse0 libpulse0 libpulsecore9 libsamplerate0 libsm6 libsndfile1 libspeexdsp1 libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxext6 libxfont1 libxi6 libxrender1 libxtst6 openjdk-6-jre openjdk-6-jre-headless openjdk-6-jre-lib pciutils pm-utils policykit powermgmt-base pulseaudio pulseaudio-esound-compat pulseaudio-module-hal pulseaudio-module-x11 pulseaudio-utils radeontool rhino smartdimmer ttf-baekmuk ttf-bengali-fonts ttf-dejavu ttf-dejavu-core ttf-dejavu-extra ttf-indic-fonts-core ttf-kannada-fonts ttf-kochi-gothic ttf-oriya-fonts ttf-sazanami-mincho ttf-telugu-fonts ttf-wqy-zenhei tzdata-java usbutils x-ttcidfont-conf x11-common xfonts-encodings xfonts-utils
- Note to self: Is there a flavor of "apt-get install" that DOES NOT bring in all the dependencies? </ul>
- Login to your plug, and run "/etc/init.d/crashplan status". It should report that CrashPlan is running.
- Wait 60 more seconds, and check status again. (If you got the libjtux wrong, it can take 30-50 seconds to die.)
- echo 1048576 > /proc/sys/fs/inotify/max_user_watches
- This temporarily cures the "Your Linux system is currently configured to watch 8192 files in real time" message. </ul>
- Add "fs.inotify.max_user_watches=1048576" to /etc/sysctl.conf in order to permanently cure the message.
- See http://support.crashplan.com/doku.php/how_to/configure_a_headless_client for how to manage your 'headless' CrashPlan.
</ol>
This ought to work on any of the Marvel-based ARM/ARM5 "plug computers," including GuruPlug, ShivaPlug, TonidoPlug, PogoPlug, etc.
Credits:- mikestaszel on http://plugapps.com/forum/viewtopic.php?f=9&t=369 for the JRE pointer.
- http://www.pchilton.co.uk/2011/01/29/crashplan-online-backup-on-qnap-ts-210-nas/ for the libjtux.so
- http://support.crashplan.com/doku.php/client/troubleshooting/real-time </ul>