Desde hace años estoy utilizando el servicio de backup en nube de Crashplan, deseaba hacer funcionar su software en mi nueva Cubietruck (Cubian desktop) que va a estar siempre activa ofreciendo además de este servicio de backup otros que quiero que corran de forma permanente como por ejemplo una VPN.
Con la documentación disponible en la red ha sido bastante fácil hacerlo funcionar.
Instalar Java:
Descargar JAVA desde la página de oracle.
La versión que nos descargaremos será ARMv6/7 Linux – Headless – Client Compiler EABI, VFP, HardFP ABI, Little Endian1.
La versión actual para esas características es: ejre-7u51-fcs-b13-linux-arm-vfp-hflt-client_headless-18_dec_2013.tar.gz
Dado que la versión de Cubian que he instalado es server y oracle requiere autenticación web para realizar la descarga, lo he descargado en otro PC y posteriormente lo he copiado a la Cubietruck.
Descomprimimos el archivo descargado:
tar -xvzf ejre-7u51-fcs-b13-linux-arm-vfp-hflt-client_headless-18_dec_2013.gz
Se debe mover el directorio a un lugar estándar del sistema de ficheros por ejemplo /opt/, personalmente he movido el directorio descomprimido a /opt y he creado un enlace simbólico llamado java
mv ejre1.7.0_5 /opt/
cd /opt/
ln -s ejre1.7.0_51 java
Se crean las variables de entorno:
sudo vi /etc/profile
Añadir :/opt/java/bin en la variable PATH=””
Añadir export JAVA_HOME=”/opt/java” al final del archivo
Para que el usuario root se vea afectado por estos cambios debemos inciar sesión root con:
su -
o modificar el archivo ~/bashrc
sudo vi ~/bashrc
Añadiendo las líneas:
PATH=/opt/java/bin:$PATH
JAVA_HOME=/opt/java
export PATH
export JAVA_HOME
Instalar CrashPlan:
Descargar el instalador desde la web de CrashPlan (actualmente la última versión es CrashPlan_3.6.3_Linux.tgz) desde la web y ejecutarlo:
sudo ./install.sh
Descargar las versiones parcheadas de las librerías libjtux y md5. Copiar los archivos .so en /usr/local/crashplan/ (sustituyendo las existentes, podéis hacer una copia previa).
Instalamos las librerías libjna-java (Dynamic access of native libraries from Java without JNI):
sudo apt-get install libjna-java
Para evitar un error que parece producirse del tipo “backup disabled — not available” debemos editar el archivo /usr/local/crashplan/bin/CrashPlanEngine y en la línea que comienza con FULL_CP= (esta cerca del start case) añadir /usr/share/java/jna.jar: al comienzo de la cadena de manera que, en mi versión, quedaría:
FULL_CP="/usr/share/java/jna.jar:$TARGETDIR/lib/com.backup42.desktop.jar:$TARGETDIR/lang"
Conectar el interfaz Crashplan:
La administración del servicio de Crashplan se hace a través de una aplicación que corre bajo entorno gráfico llamada Crashplan Desktop. Dado que el cubian instalado es server y no dispone de entorno gráfico, para configurar el servicio conectaremos Crashplan Desktop con el servicio de Crashplan instalado en el Cubietruck.
Para ello accederemos al puerto del servicio Crashplan de la Cubietruck desde Crashplan Desktop de otro PC.
Primero modificamos el puerto al que se conecta el Crashplan Desktop en el PC que esté instalado:
En linux:
vi /usr/local/crashplan/conf/ui.properties
En windows:
Editar (es posible que se deban cambiar los permisos del archivo):
C:\Program Files\CrashPlan\conf
Debemos cambiar la línea:
#servicePort=4243
por
servicePort=4200
Y abrir un tunel ssh para conectar el puerto local del Crashplan Desktop con el servicio en la Cubietruck:
En linux:
ssh -L 4200:localhost:4243 yourusername@2.2.2.2
Donde 2.2.2.2 es la ip de la Cubietruck.
En windows:
Conectamos al servidor de Crashplan con putty configurando en Connection => SSH => Tunnels y añadimos:
Source Port: 4200
Destination:localhost:4243
Fuentes:
http://www.bionoren.com/blog/2013/02/raspberry-pi-crashplan/
https://support.code42.com/CrashPlan/Latest/Configuring/Configuring_A_Headless_Client
¿Podrías comentar porque usar algo en java sobre arm. Nunca he conseguido que funcione 100% optimizado?.
No quiero ser un troll solo comentar que tal su rendimiento.
Un saludo y gracias.
Muy buenas Wodan:
Uso Java porque el software cliente que proporciona Crashplan es Java, si publicaran un cliente nativo lo utilizaría.
Por otro lado, aunque ya está subido el backup en la nube y desde la cubietruck solo se están sincronizando pequeñas actualizaciones, el rendimiento es correcto.
El motivo para usar Crashplan es el precio. 60$ (43 euros) al año por espacio ilimitado en la nube no lo he encontrado en ningún sitio (Dropbox, Google Drive, box.net…).