Skip to main content

rsync with ssh

Setup rsync from laptop to a remote server.
To get this done, I followed the steps described in http://www.jdmz.net/ssh/

The commands that I used:
rsync -avz -e ssh Documents/gnupg-data/ jan@www.jankester.com:/home/jan/backup_rsync
ssh-keygen -t dsa -b 2048 -f .ssh/ewing_ssh_rsync_key

added entry in commands in authorized keys remote
added validate-rsync script on remote under /home/jan/cron

Test again whether new key works
rsync -avz -e ssh -i /home/jan/.ssh/ewing_ssh_rsync_key Documents/gnupg-data/ jan@www.jankester.com:/home/jan/backup_rsync

Now add a script to sync anything you like /home/jan/cron/backup-ewing-on-vs01-05.sh:

#!/bin/sh

RSYNC=/usr/bin/rsync
SSH=/usr/bin/ssh
KEY=/home/jan/.ssh/ewing_ssh_rsync_key
RUSER=jan
RHOST=www.jankester.com
RPATH=/home/jan/backup_rsync

LPATH=/home/jan/Documents/gnupg-data
$RSYNC -azv -e "$SSH -i $KEY" $LPATH $RUSER@$RHOST:$RPATH

LPATH=/home/jan/.ssh
$RSYNC -azv -e "$SSH -i $KEY" $LPATH $RUSER@$RHOST:$RPATH

LPATH=/home/jan/ssh
$RSYNC -azv -e "$SSH -i $KEY" $LPATH $RUSER@$RHOST:$RPATH

LPATH=/home/jan/vnc
$RSYNC -azv -e "$SSH -i $KEY" $LPATH $RUSER@$RHOST:$RPATH

LPATH=/home/jan/Documents/technical_tips
$RSYNC -azv -e "$SSH -i $KEY" $LPATH $RUSER@$RHOST:$RPATH

LPATH=/home/jan/Documents/personal
$RSYNC -azv -e "$SSH -i $KEY" $LPATH $RUSER@$RHOST:$RPATH

LPATH=/home/jan/.bash*
$RSYNC -azv -e "$SSH -i $KEY" $LPATH $RUSER@$RHOST:$RPATH

Comments

Jan Kester said…
Add parameter --delete to make sure that deleted files on the server also get deleted on the remote backup host.
Jan Kester said…
When connecting to samba share, add parameter --modify-window=10, and use instead of -azv the combinaition -rtzv.

Popular posts from this blog

Create a groovy console and bind to selenium

Required groovy files In the previous posting we defined the pom file that we need for our build environment. Now we will setup some groovy files to get selenium and groovy running interactively. ConsoleWaiter.groovy The idea of Groovy Console I found on some other sides. Honour goes for instance too: http://josefbetancourt.wordpress.com/tag/eclipse-2/ I copied some code of this, and put it under src/test/groovy/com/jankester/selenium/test/utils: package com.jankester.selenium.test.utils /** * File: ConsoleWaiter.groovy */ import groovy.lang.Binding; import groovy.ui.Console; /** * Provides a wrapper for the console. * * Based on source by John Green * Adapted from: http://www.oehive.org/files/ConsoleWaiter.groovy * Released under the Eclipse Public License * http://www.eclipse.org/legal/epl-v10.html * * I added methods to allow use from Java. * * The run() method launches the console and causes this thread * to sleep until the console's window is closed.

SSL handshake failed: Secure connection truncated

Got this problem on Ubuntu 9.10 and 10.10. svn co --username=xx https:/yy zz “SSL handshake failed: Secure connection truncated” According to this link bug-ubuntu The solution is: sudo apt-get install libneon27 cd /usr/lib/ sudo rm libneon-gnutls.so.27 sudo ln -s /usr/lib/libneon.so.27 libneon-gnutls.so.27

Junit4 running parallel junit classes

To run junit testcases parallel, you can create your own class to run junit with: Add this tag to your class declaration. @RunWith(Parallelized.class) Implementation of this class looks like: package mypackage; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import org.junit.runners.Parameterized; import org.junit.runners.model.RunnerScheduler; public class Parallelized extends Parameterized {         private static class ThreadPoolScheduler implements RunnerScheduler     {         private ExecutorService executor;                 public ThreadPoolScheduler()         {             String threads = System.getProperty("junit.parallel.threads", "16");             int numThreads = Integer.parseInt(threads);             executor = Executors.newFixedThreadPool(numThreads);         }                 public void finished()         {             executor.shutdown();             try