CrashPlan Headless Client: Unterschied zwischen den Versionen

Aus
K (Anzeige der Quellen korrigiert.)
K (Aufzählungen von Hand durchnummeriert, da # nicht so funktioniert wie erhofft.)
Zeile 19: Zeile 19:


=== Vorbereitungen ===
=== Vorbereitungen ===
# Per ssh als user root auf die DiskStation einloggen. Im folgenden wird davon ausgegangen, dass die DiskStation diskstation heisst.
1. Per ssh als user root auf die DiskStation einloggen. Im folgenden wird davon ausgegangen, dass die DiskStation diskstation heisst.
<pre>
<pre>
user@linux:~$ ssh root@diskstation
user@linux:~$ ssh root@diskstation
</pre>
</pre>
# Das CrashPlan Installations-Script benötigt Befehle aus den IPKG Paketen bash, coreutils und cpio. Daher werden diese per <code>ipkg install</code> installiert.
 
2. Das CrashPlan Installations-Script benötigt Befehle aus den IPKG Paketen bash, coreutils und cpio. Daher werden diese per <code>ipkg install</code> installiert.
<pre>
<pre>
DiskStation> ipkg update
DiskStation> ipkg update
Zeile 30: Zeile 31:
DiskStation> ipkg install cpio
DiskStation> ipkg install cpio
</pre>
</pre>
# Im folgenden wird der Editor nano verwendet. Auch nano kann per ipkg installiert werden.
 
3. Im folgenden wird der Editor nano verwendet. Auch nano kann per ipkg installiert werden.
<pre>
<pre>
DiskStation> ipkg install nano
DiskStation> ipkg install nano
Zeile 36: Zeile 38:


=== Installation ===
=== Installation ===
# CrashPlan herunterladen. Sollte es in der Zwischenzeit eine neuere Version als 3.0.3 geben, kann die Software auch von der [http://www.crashplan.com/consumer/download.html CrashPlan Download-Seite] heruntergeladen werden.
1. CrashPlan herunterladen. Sollte es in der Zwischenzeit eine neuere Version als 3.0.3 geben, kann die Software auch von der [http://www.crashplan.com/consumer/download.html CrashPlan Download-Seite] heruntergeladen werden.
<pre>
<pre>
DiskStation> cd /volume1/@tmp
DiskStation> cd /volume1/@tmp
Zeile 42: Zeile 44:
DiskStation> wget http://download.crashplan.com/installs/linux/install/CrashPlan/CrashPlan_3.0.3_Linux.tgz
DiskStation> wget http://download.crashplan.com/installs/linux/install/CrashPlan/CrashPlan_3.0.3_Linux.tgz
</pre>
</pre>
# CrashPlan entpacken.
 
2. CrashPlan entpacken.
<pre>
<pre>
DiskStation> tar -xvf CrashPlan_3.0.3_Linux.tgz
DiskStation> tar -xvf CrashPlan_3.0.3_Linux.tgz
</pre>
</pre>
# Im Installations-Script muss der Pfad zur Bash angepasst werden. Dazu in der ersten Zeile <code>#!/bin/bash</code> durch <code>#!/opt/bin/bash</code> ersetzen.
 
3. Im Installations-Script muss der Pfad zur Bash angepasst werden. Dazu in der ersten Zeile <code>#!/bin/bash</code> durch <code>#!/opt/bin/bash</code> ersetzen.
<pre>
<pre>
DiskStation> cd CrashPlan-install
DiskStation> cd CrashPlan-install
DiskStation> nano -w install.sh
DiskStation> nano -w install.sh
</pre>
</pre>
# Jetzt kann das Installation-Script ausgeführt werden.  
 
4. Jetzt kann das Installation-Script ausgeführt werden.  
<pre>
<pre>
DiskStation> ./install.sh  
DiskStation> ./install.sh  
</pre>
</pre>
# Während der Installation wird das Installations-Script einige Fragen stellen. Die erste Frage ist, ob die JRE (Java Runtime Environment) heruntergeladen und installiert werden darf, da keine Java VM gefunden wurde. Diese Frage sollte mit y positiv beantwortet werden.
 
5. Während der Installation wird das Installations-Script einige Fragen stellen. Die erste Frage ist, ob die JRE (Java Runtime Environment) heruntergeladen und installiert werden darf, da keine Java VM gefunden wurde. Diese Frage sollte mit y positiv beantwortet werden.
<pre>
<pre>
No Java VM could be found in your path
No Java VM could be found in your path
Zeile 61: Zeile 67:
   jre will be downloaded
   jre will be downloaded
</pre>
</pre>
# Als nächstes wird ein EULA Lizenztext angezeigt und danach gefragt, ob man diesem zustimmt. Will man mit der Installation fortfahren, muss diese Frage mit y positiv beantwortet werden.
 
6. Als nächstes wird ein EULA Lizenztext angezeigt und danach gefragt, ob man diesem zustimmt. Will man mit der Installation fortfahren, muss diese Frage mit y positiv beantwortet werden.
<pre>
<pre>
You must review and agree to the EULA before installation.
You must review and agree to the EULA before installation.
Zeile 69: Zeile 76:
Do you accept and agree to be bound by the EULA? (yes/no) yes
Do you accept and agree to be bound by the EULA? (yes/no) yes
</pre>
</pre>
# Danach wird nach einigen Installationspfaden gefragt. Hier sind die empfohlenen Antworten für eine Installation auf einer Synology DiskStation aufgeführt.
 
7. Danach wird nach einigen Installationspfaden gefragt. Hier sind die empfohlenen Antworten für eine Installation auf einer Synology DiskStation aufgeführt.
<pre>
<pre>
What directory do you wish to install CrashPlan to? [/usr/local/crashplan] /opt/crashplan
What directory do you wish to install CrashPlan to? [/usr/local/crashplan] /opt/crashplan
Zeile 83: Zeile 91:
What directory contains your runlevel init links? [/etc/rc.d] /usr/syno/etc/rc.d
What directory contains your runlevel init links? [/etc/rc.d] /usr/syno/etc/rc.d
</pre>
</pre>
# Zum Schluss zeigt das Installations-Script noch einmal die gewählten Installationspfade an und bittet um Bestätigung. Stimmen die Pfade, beantwortet man die Frage mit y positiv.
 
# Nun beginnt das Installations-Script mit dem Laden und Installieren von Java sowie dem Kopieren der CashPlan Dateien. Die Fehlermeldung
8. Zum Schluss zeigt das Installations-Script noch einmal die gewählten Installationspfade an und bittet um Bestätigung. Stimmen die Pfade, beantwortet man die Frage mit y positiv.
 
9. Nun beginnt das Installations-Script mit dem Laden und Installieren von Java sowie dem Kopieren der CashPlan Dateien. Die Fehlermeldung
<pre>
<pre>
./install.sh: /opt/crashplan/bin/CrashPlanEngine: /bin/bash: bad interpreter: No such file or directory
./install.sh: /opt/crashplan/bin/CrashPlanEngine: /bin/bash: bad interpreter: No such file or directory
</pre>
</pre>
ist erwartet, da das Script <tt>CrashPlanEngine</tt> erst noch auf die ipkg Umgebung angepasst werden muss.
ist erwartet, da das Script <tt>CrashPlanEngine</tt> erst noch auf die ipkg Umgebung angepasst werden muss.
# Mit der Zeile
 
10. Mit der Zeile
<pre>
<pre>
Installation is complete. Thank you for installing CrashPlan for Linux.
Installation is complete. Thank you for installing CrashPlan for Linux.
</pre>
</pre>
ist das Installations-Script beendet.
ist das Installations-Script beendet.
# Nun muss das Script <code>/opt/crashplan/bin/CrashPlanEngine</code> angepasst werden, damit es in der ipkg Umgebung läuft.
 
## In der ersten Zeile <code>#!/bin/bash</code> durch <code>#!/opt/bin/bash</code> ersetzen.
11. Nun muss das Script <code>/opt/crashplan/bin/CrashPlanEngine</code> angepasst werden, damit es in der ipkg Umgebung läuft.
:a) In der ersten Zeile <code>#!/bin/bash</code> durch <code>#!/opt/bin/bash</code> ersetzen.
<pre>
<pre>
DiskStation> nano -w /opt/crashplan/bin/CrashPlanEngine
DiskStation> nano -w /opt/crashplan/bin/CrashPlanEngine
</pre>
</pre>
## <tt>nice</tt> muss mit komplettem Pfad, also <code>/opt/bin/nice</code> aufgerufen werden.
:b) <tt>nice</tt> muss mit komplettem Pfad, also <code>/opt/bin/nice</code> aufgerufen werden.
<pre>
<pre>
DiskStation> sed -i "s/nice -n/\/opt\/bin\/nice -n/" /opt/crashplan/bin/CrashPlanEngine
DiskStation> sed -i "s/nice -n/\/opt\/bin\/nice -n/" /opt/crashplan/bin/CrashPlanEngine
</pre>
</pre>
## Die Parameter von <tt>ps</tt> müssen ersetzt werden.
:c) Die Parameter von <tt>ps</tt> müssen ersetzt werden.
<pre>
<pre>
DiskStation> sed -i "s/ps -eo 'pid,cmd'/ps w/" /opt/crashplan/bin/CrashPlanEngine
DiskStation> sed -i "s/ps -eo 'pid,cmd'/ps w/" /opt/crashplan/bin/CrashPlanEngine
</pre>
</pre>
# Damit CrashPlan beim Start der DiskStation ebenfalls gestartet wird, muss das Startup-Script umbenannt werden.
 
12. Damit CrashPlan beim Start der DiskStation ebenfalls gestartet wird, muss das Startup-Script umbenannt werden.
<pre>
<pre>
DiskStation> mv /usr/syno/etc/rc.d/S99crashplan /usr/syno/etc/rc.d/S99crashplan.sh
DiskStation> mv /usr/syno/etc/rc.d/S99crashplan /usr/syno/etc/rc.d/S99crashplan.sh
Zeile 113: Zeile 126:


=== Funktionstest ===
=== Funktionstest ===
# Der CrashPlan Headless Client kann nun von Hand gestartet werden.
1. Der CrashPlan Headless Client kann nun von Hand gestartet werden.
<pre>
<pre>
DiskStation> /etc/init.d/crashplan start
DiskStation> /etc/init.d/crashplan start
</pre>
</pre>
# Übergibt man dem Script den Parameter <tt>status</tt>, kann überprüft werden, ob der CrashPlan gestartet wurde.
 
2. Übergibt man dem Script den Parameter <tt>status</tt>, kann überprüft werden, ob der CrashPlan gestartet wurde.
<pre>
<pre>
DiskStation> /etc/init.d/crashplan status
DiskStation> /etc/init.d/crashplan status
</pre>
</pre>
# Ob der CrashPlan Verbindung mit den vorgesehenen TCP Ports aufgenommen hat, kann mittels <tt>netstat</tt> geprüft werden.
 
3. Ob der CrashPlan Verbindung mit den vorgesehenen TCP Ports aufgenommen hat, kann mittels <tt>netstat</tt> geprüft werden.
<pre>
<pre>
DiskStation> netstat -an | grep ':424.'
DiskStation> netstat -an | grep ':424.'
Zeile 127: Zeile 142:
tcp        0      0 127.0.0.1:4243          0.0.0.0:*              LISTEN
tcp        0      0 127.0.0.1:4243          0.0.0.0:*              LISTEN
</pre>
</pre>
# Nun kann die DiskStation neu gestartet werden. Nach dem Neustart sollte CrashPlan automatisch mitstarten. Dies kann nochmals mittels der oben aufgeführten Befehle geprüft werden.
 
4. Nun kann die DiskStation neu gestartet werden. Nach dem Neustart sollte CrashPlan automatisch mitstarten. Dies kann nochmals mittels der oben aufgeführten Schritte 2 und 3 geprüft werden.
<pre>
<pre>
DiskStation> reboot
DiskStation> reboot

Version vom 29. September 2011, 20:00 Uhr

Einleitung

CrashPlan ist eine Backup-Software, die es dem Anwender erlaubt sowohl lokal als auch auf einem entfernten Rechner Backups abzulegen. Zudem können gegen Bezahlung Backups auch online abgelegt werden. Dieser Artikel erklärt, wie man den CrashPlan Headless Client auf einer Synology DiskStation installiert.

Im Vergleich zu anderen Online-Backup-Lösungen wie Backblaze, Carbonite oder Mozy (um nur ein paar zu nennen), hat CrashPlan zwei Features, die diese so nicht haben:

  • Es werden die Betriebssysteme Windows, Mac OS X, Linux und Solaris unterstützt.
  • Backups können nicht nur online gegen Bezahlung, sondern auch auf eigenen oder den Rechnern von Bekannten abgelegt werden.

Durch die Unterstützung von Linux ist es möglich den CrashPlan Headless Client (also das Kommandozeilenprogramm) auf einer Synology DiskStation zu installieren.

Diese Anleitung wurde mit einer Synology DiskStation DS411+II (DSM 3.2-1922) getestet. Auf anderen DiskStations mit x86-kompatiblen Prozessor (z.B. Intel Atom), sollte diese Anleitung genauso funktionieren. Laut Datenblatt setzt CrashPlan mindestens 1 GB Hauptspeicher voraus.

Da CrashPlan in Java programmiert wurde, funktioniert CrashPlan im Prinzip auch auf einer DiskStation mit ARM-kompatiblen Prozessor. Darauf wird in dieser Anleitung jedoch nicht eingegangen.

Voraussetzungen

Voraussetzung zur Installation von CrashPlan ist, dass IPKG bereits installiert wurde.

Installation des CrashPlan Headless Client

Vorbereitungen

1. Per ssh als user root auf die DiskStation einloggen. Im folgenden wird davon ausgegangen, dass die DiskStation diskstation heisst.

user@linux:~$ ssh root@diskstation

2. Das CrashPlan Installations-Script benötigt Befehle aus den IPKG Paketen bash, coreutils und cpio. Daher werden diese per ipkg install installiert.

DiskStation> ipkg update
DiskStation> ipkg install bash
DiskStation> ipkg install coreutils
DiskStation> ipkg install cpio

3. Im folgenden wird der Editor nano verwendet. Auch nano kann per ipkg installiert werden.

DiskStation> ipkg install nano

Installation

1. CrashPlan herunterladen. Sollte es in der Zwischenzeit eine neuere Version als 3.0.3 geben, kann die Software auch von der CrashPlan Download-Seite heruntergeladen werden.

DiskStation> cd /volume1/@tmp
http://www.crashplan.com/consumer/download.html?os=Linux
DiskStation> wget http://download.crashplan.com/installs/linux/install/CrashPlan/CrashPlan_3.0.3_Linux.tgz

2. CrashPlan entpacken.

DiskStation> tar -xvf CrashPlan_3.0.3_Linux.tgz

3. Im Installations-Script muss der Pfad zur Bash angepasst werden. Dazu in der ersten Zeile #!/bin/bash durch #!/opt/bin/bash ersetzen.

DiskStation> cd CrashPlan-install
DiskStation> nano -w install.sh

4. Jetzt kann das Installation-Script ausgeführt werden.

DiskStation> ./install.sh 

5. Während der Installation wird das Installations-Script einige Fragen stellen. Die erste Frage ist, ob die JRE (Java Runtime Environment) heruntergeladen und installiert werden darf, da keine Java VM gefunden wurde. Diese Frage sollte mit y positiv beantwortet werden.

No Java VM could be found in your path
Would you like to download the JRE and dedicate it to CrashPlan? (y/n) [y] y
  jre will be downloaded

6. Als nächstes wird ein EULA Lizenztext angezeigt und danach gefragt, ob man diesem zustimmt. Will man mit der Installation fortfahren, muss diese Frage mit y positiv beantwortet werden.

You must review and agree to the EULA before installation.

Press enter to read the EULA.

Do you accept and agree to be bound by the EULA? (yes/no) yes

7. Danach wird nach einigen Installationspfaden gefragt. Hier sind die empfohlenen Antworten für eine Installation auf einer Synology DiskStation aufgeführt.

What directory do you wish to install CrashPlan to? [/usr/local/crashplan] /opt/crashplan
/opt/crashplan does not exist.  Create /opt/crashplan? (y/n) [y] y

What directory do you wish to link the CrashPlan executable to? [/usr/local/bin] /opt/bin

What directory do you wish to store backups in? [/opt/crashplan/manifest]
/opt/crashplan/manifest does not exist.  Create /opt/crashplan/manifest? (y/n) [y] y

What directory contains your SYSV init scripts? [/etc/init.d] 

What directory contains your runlevel init links? [/etc/rc.d] /usr/syno/etc/rc.d

8. Zum Schluss zeigt das Installations-Script noch einmal die gewählten Installationspfade an und bittet um Bestätigung. Stimmen die Pfade, beantwortet man die Frage mit y positiv.

9. Nun beginnt das Installations-Script mit dem Laden und Installieren von Java sowie dem Kopieren der CashPlan Dateien. Die Fehlermeldung

./install.sh: /opt/crashplan/bin/CrashPlanEngine: /bin/bash: bad interpreter: No such file or directory

ist erwartet, da das Script CrashPlanEngine erst noch auf die ipkg Umgebung angepasst werden muss.

10. Mit der Zeile

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

ist das Installations-Script beendet.

11. Nun muss das Script /opt/crashplan/bin/CrashPlanEngine angepasst werden, damit es in der ipkg Umgebung läuft.

a) In der ersten Zeile #!/bin/bash durch #!/opt/bin/bash ersetzen.
DiskStation> nano -w /opt/crashplan/bin/CrashPlanEngine
b) nice muss mit komplettem Pfad, also /opt/bin/nice aufgerufen werden.
DiskStation> sed -i "s/nice -n/\/opt\/bin\/nice -n/" /opt/crashplan/bin/CrashPlanEngine
c) Die Parameter von ps müssen ersetzt werden.
DiskStation> sed -i "s/ps -eo 'pid,cmd'/ps w/" /opt/crashplan/bin/CrashPlanEngine

12. Damit CrashPlan beim Start der DiskStation ebenfalls gestartet wird, muss das Startup-Script umbenannt werden.

DiskStation> mv /usr/syno/etc/rc.d/S99crashplan /usr/syno/etc/rc.d/S99crashplan.sh

Funktionstest

1. Der CrashPlan Headless Client kann nun von Hand gestartet werden.

DiskStation> /etc/init.d/crashplan start

2. Übergibt man dem Script den Parameter status, kann überprüft werden, ob der CrashPlan gestartet wurde.

DiskStation> /etc/init.d/crashplan status

3. Ob der CrashPlan Verbindung mit den vorgesehenen TCP Ports aufgenommen hat, kann mittels netstat geprüft werden.

DiskStation> netstat -an | grep ':424.'
tcp        0      0 0.0.0.0:4242            0.0.0.0:*               LISTEN      
tcp        0      0 127.0.0.1:4243          0.0.0.0:*               LISTEN

4. Nun kann die DiskStation neu gestartet werden. Nach dem Neustart sollte CrashPlan automatisch mitstarten. Dies kann nochmals mittels der oben aufgeführten Schritte 2 und 3 geprüft werden.

DiskStation> reboot

Konfiguration

Da eine DiskStation üblicher Weise nicht an einen Monitor angeschlossen ist, erfolgt die Konfiguration von einem Rechner, auf dem bereits CrashPlan installiert wurde. Details dazu finden sich im Support-Bereich von CrashPlan auf der Seite Connect to a Headless CrashPlan Desktop.

Wie man die den CrashPlan Headless Client bequem per Script fernkonfiguriert, wird in einem LinuxHints Blog Post beschrieben.

Quellen

Kenneth Larsens blog: HOW-TO: Using crashplan with Synology NAS
Synology Online Community Forum: Crashplan backup sw allows backing up to a friend's computer
CrashPlan Support: Connect to a Headless CrashPlan Desktop
LinuxHints Blog: Crashplan headless
Forrst: Remote Access for CrashPlan (headless server) with Desktop UI