March 2015 Archives

20-03-2015 20:56

CrashPlan on FreeBSD 10

So you want to run CrashPlan on FreeBSD. So do I!

I did lots of searching but the main article I used was this http://worrbase.com/2012/03/31/Crashplan.html. I'll go through it next.
I didn't edit my make.conf. So right off the bat I am diverging. I did edit my rc.conf and added the below to it:

crashplan_enable="YES"
linux_enable="YES"
and then installed these with pkgng:
linux-f10-expat-2.0.1_1
linux-f10-fontconfig-2.6.0_1
linux-f10-procps-3.2.7
linux-f10-xorg-libs-7.4_1
*linux-sun-jre17-7.71
linux_base-f10-10_7
* Needed to use ports to install this package.
I only added one fstab entry as the linux compat seems to have full access to the FS:
linproc   /compat/linux/proc   linprocfs   rw   0  0
Download crashplan somewhere under /compat/linux, and then chroot into your linux environment. Run the install script, and back out.
# chroot /compat/linux/ /bin/bash
# cd CrashPlan-install && ./install.sh
Edited my /compat/linux/usr/local/crashplan/bin/run.conf to look like this:
SRV_JAVA_OPTS="-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider -Dfile.encoding=UTF-8 -Dapp=CrashPlanService -DappBaseName=CrashPlan -Xms20m -Xmx1024m -Djava.net.preferIPv4Stack=true -Dsun.net.inetaddr.ttl=300 -Dnetworkaddress.cache.ttl=300 -Dsun.net.inetaddr.negative.ttl=0 -Dnetworkaddress.cache.negative.ttl=0 -Dc42.native.md5.enabled=false"
GUI_JAVA_OPTS="-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider -Dfile.encoding=UTF-8 -Dapp=CrashPlanDesktop -DappBaseName=CrashPlan -Xms20m -Xmx512m -Djava.net.preferIPv4Stack=true -Dsun.net.inetaddr.ttl=300 -Dnetworkaddress.cache.ttl=300 -Dsun.net.inetaddr.negative.ttl=0 -Dnetworkaddress.cache.negative.ttl=0 -Dc42.native.md5.enabled=false"
And to /compat/linux/usr/local/crashplan/install.vars I appened:
JAVACOMMON=/usr/local/linux-sun-jre1.7.0/bin/java
And my /usr/local/etc/rc.d/crashplan contains:
#!/bin/sh
#

# PROVIDE: crashplan
# REQUIRE: NETWORKING
# KEYWORD: shutdown

. /etc/rc.subr

name="crashplan"
rcvar=`set_rcvar`
start_cmd=crashplan_start
stop_cmd=crashplan_stop

crashplan_start () {
  /compat/linux/bin/bash /usr/local/crashplan/bin/CrashPlanEngine start
}

crashplan_stop () {
  /compat/linux/bin/bash /usr/local/crashplan/bin/CrashPlanEngine stop
}

load_rc_config $name
run_rc_command "$1"

An issue I had after upgrading from 9.3 to 10.0 was the path in the run.conf reverted back to default. It took awhile to realise and even longer to figure it out. I haven't proof read this post but I hope it helps me (and you) when the time comes.


Posted by DaveQB | Permanent Link | Categories: IT