How can I backup a Linux computer remote, even without X-window interface (like Gnome, KDE, and Motif)?
This manual is intended for people familiar with the Linux command line.
Linux system requirements
- 32 or 64-bit Java 1.5.07+ for the "engine" (daemon)
- 32-bit Java 1.5.07 or higher for the "desktop" (GUI)
You can check whether Java is installed correctly and meets the version requirements by typing:
java -version
You should see something like:
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_12-b04)
Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_12-b04, mixed mode)
[top]
Installation of the backup software
Download and unpack the installation in a location of your choice. This is for the installation. Where the final location is found, choose when you run the installer.
cd /mypreferred/installer/location
tar -zxf CrashPlan_2010-mm-dd.tgz
Wondering what location you choose to install CrashPlan? If you're planning for a remote backup of data in your "home" folder, then if you stay in your home folder to install. Want the entire system a remote backup? Install it on the spot where your other optional software goes. This is usually /opt/ or /usr/local/
[top]
What is this stuff I just unzipped?
CrashPlan PRO consists of two parts:
- CrashPlanEngine - The "engine" is the service that the actual backup job. If not running, no remote backups made.
- CrashPlanDesktop - The "desktop" is the graphical user interface (GUI) that allows you to easily configure the engine, display status, and conduct restores..
[top]
Installing the backup engine
It is very important to CrashPlanEngine to install with a user that has read access (or access) the files you want to make remote backups. If you're planning to make your own folder to the remote backup, then install the software with your duties well. Would you like someone else's folder or system files to remote back-up, make sure that the "machine" as root to install.
First, go to the directory where you untarred the installer:
cd /preferred/installation/location
Then, install the software with the permissions you prefer:
- Installing "engine" with your permissions:
./install.sh - Installing "engine" with root permissions:
sudo ./install.sh
You will be asked a series of questions about where to install the base software and the GUI executable. If you like the default suggestions, just hit Enter to accept them. If you prefer other choices, type in your own.
Once the installation is complete, the engine should automatically be running in the background, and you should be good to go.
[top]
Your first backup
The gui client is always run with your permissions so go ahead and start it up after the "engine" is started:
/usr/local/bin/CrashPlanDesktop
That's it! Create an account in CrashPlan, configure backup file selection, and push start. You're all set. Please note you can quit the UI at any time. It's not actually doing the backup, it's only doing the configuration.
[top]
CrashPlan log files
All kinds of useful information is in the crashplan/log folder. Files ending in .0 are newest, .1 oldest. Entries older than .0 or .1 are thrown away.
- history.log - Summary log of what CrashPlanEngine has been up to.
- service.log - A very detailed log of CrashPlanEngine's activities.
- backup_files.log - A list of files that were backed up when they're backed up.
- restore_files.log - A list of files that were restored and any problems encountered.
[top]
Remote GUI Config of CrashPlan PRO on a shell account
What if you have a remote shell account on a box that has SSH access, but no X-window interface (like Gnome, KDE or Motif) or other graphical user interface (GUI)?
We're going to show you how to attach your local desktop CrashPlan UI to the remote CrashPlanEngine on a remote box. We're going to show you how to attach your local desktop CrashPlan UI to the remote CrashPlanEngine on a remote box.
- Install & start engine on host 1.2.3.4 (this is the far away text only server)
- Install CrashPlan PRO on your local desktop (Mac, Windows, Linux, Solaris, it doesn't matter)
- Shut down the GUI. In the CrashPlan folder of your local install, there is a folder called "conf", edit the file called "my.ui.properties" (software version 2010) or "ui.properties" (software version 3.x).
Add this as a new line at the bottom of the file:
servicePort=4283
And save it. - For a secured connection we need to forward port 4283 locally to our remote server using SSH.
- For Linux, Mac, Solaris type this command in the terminal:
ssh -L 4283:localhost:4243 yourusername@1.2.3.4 - For Windows follow the Putty instructions:
- Enter the IP address for SSH as normal, but not yet open the connection:
"Hostname (or IP-address)": 1.2.3.4
"Port": 22
"Connection type": SSH - In the part "Connection > SSH > Tunnels", set the "Source port" to 4283, and the "Destination" to localhost:4243
- Then choose the button "Add" (to the right of the input box 'Source port'); then will the "Forwarded Ports:" be added to the list above: L4283 localhost:4243
- Now "Open" the connection session
- If you execute netstat from the command line (Start > Run > cmd), you should see 4283 as listening address:
C:\>netstat -an -p TCP
Active connections
Proto Local Address Foreign Addres State
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
TCP 10.10.10.10:139 0.0.0.0:0 LISTENING
TCP 10.10.10.10:1042 71.82.98.209:80 CLOSE_WAIT
TCP 10.10.10.10:1044 71.82.98.209:80 CLOSE_WAIT
TCP 10.10.10.10:1045 192.143.97.18:80 CLOSE_WAIT
TCP 10.10.10.10:1047 10.10.10.1:22 ESTABLISHED
TCP 127.0.0.1:1025 0.0.0.0:0 LISTENING
TCP 127.0.0.1:4283 0.0.0.0:0 LISTENING
- You can use the following telnet command to test the connection:
C:\>telnet localhost 4283
- Enter the IP address for SSH as normal, but not yet open the connection:
- For Linux, Mac, Solaris type this command in the terminal:
- Run your CrashPlan PRO UI. You're now connected to remote CrashPlanEngine and can configure it at will.
- (Optional) Pointing your UI back to local crashplan. Edit the "my.ui.properties" (2010) or "ui.properties" (3.x) and comment out the servicePort change by putting a "#" in front and saving it. That's it! Next time you use UI it will connect to your local CrashPlan PRO again.
#servicePort=4283
In case you don't need SSH secured connections — for example within a LAN or VPN environment -— you can skip step 3 and 4, and configure the remote CrashPlan engine to listen on an IP address bound to a network interface instead of localhost (127.0.0.1) and configure the local CrashPlan GUI to connect to that remote IP address.
Example commands for Ubuntu 13:
remote$ ifconfig eth0 | grep addr:
remote$ sudo nano /usr/local/crashplan/conf/my.service.xml
edit the line <serviceHost>127.0.0.1</serviceHost>
remote$ sudo /usr/local/crashplan/bin/CrashPlanEngine restart
local-windows> edit
/Program Files/CrashPlan/conf/ui.properties
local-mac$ sudo edit /Applications/CrashPlan/Contents/Resources/Java/conf/ui.properties
edit
the line serviceHost=127.0.0.1
to match the IP address set above.
Do you need a second CrashPlan GUI?
On Windows you can just create a copy of the "CrashPlan" folder in "Program Files".
Not on Mac OS X, copy and paste CrashPlan in the Applications folder will not work.
[top]
FAQ
- What if I don't want to use the UI?
Most settings can be changed by editing the conf/my.service.xml. Make sure you restart the engine after making changes for them to take affect. - Can I restore without the UI?
No. - Is it a bad idea to run the CrashPlanEngine as root?
There are basic risks associated with it. These are the same as any service running as root. Because the engine is written in java, it is immune to buffer overflows, a common exploit for poorly written C code. You should be aware that any desktop client connecting has "writes" to select any file and back it up. Therefor, you should "require" authentication each time the UI is run. This is in the "settings/security" part of CrashPlan UI. - What ports does CrashPlan PRO use?
OUTBOUND TCP 443 - to talk to our servers. (Account creation, dynamic dns, etc.)
LISTENING TCP 4242 - when talking to another CrashPlan PRO instance for backup
LISTENING TCP 4243 - on localhost only. This is what the CrashPlanDesktop uses to talk to the CrashPlanBackupEngine.
Tags
remote backup,remote control backup,remote backup control,remote backup server,remote backup gui,remote backup ui,command-line backup,command-line backup server,ssh backup,ssh backup server,headless backup
Remote Backup mit Linux (ohne GUI) Linux remote backup zonder grafische X-Window interface