Skip to content

Instantly share code, notes, and snippets.

@clement-parisot
Created December 6, 2017 15:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save clement-parisot/60f96e271689502da7d2548f7e5cc6a2 to your computer and use it in GitHub Desktop.
Save clement-parisot/60f96e271689502da7d2548f7e5cc6a2 to your computer and use it in GitHub Desktop.
Grid'5000 Backup homedir in parallel
#!/bin/bash -l
function backup {
s="$1"
LOCATION="/media/cparisot/BACKUP_CPARISOT/G5K/"
BACKUP_DIR="${LOCATION}/$s"
LOG_FILE="${BACKUP_DIR}/backup.log"
LOG="tee -a ${LOG_FILE}"
RSYNC_CMD="rsync -avpP --delete --partial $s.g5k:/home/cparisot ${BACKUP_DIR}/"
mkdir -p ${BACKUP_DIR};
touch $LOG_FILE | $LOG;
cd ${BACKUP_DIR}
ssh $s.g5k "hostname" | $LOG;
date | $LOG;
echo $RSYNC_CMD | $LOG;
$RSYNC_CMD 2>&1 | $LOG;
date | $LOG;
}
export -f backup
SITES="grenoble lille lyon nancy nantes rennes sophia luxembourg"
parallel backup ::: $SITES;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment