Overfør Store Datamængder (>80 GB) via SSH med rsync på Ustabil DSL-forbindelse: Trin-for-Trin Guide

Hvordan kan store datamængder (>80 GB) overføres via ssh ved brug af rsync, hvor DSL-forbindelsen falder ud én gang hver 24. time i op til 3 minutter, og samtidig sikre automatisk genstart af overførslen, når forbindelsen er tilbage, samt undgå at to rsync-kommandoer kører samtidig?

For at overføre store datamængder (>80 GB) via SSH med rsync på en ustabil DSL-forbindelse, kan du bruge rsync's genoptagelsesfunktioner, opsætte en cron-job til automatisk genstart og sikre, at kun én instans kører ad gangen med et skript.

Sådan overføres store datamængder (>80 GB) via SSH med rsync på en ustabil DSL-forbindelse

For at overføre store datamængder via SSH med rsync på en ustabil DSL-forbindelse, hvor forbindelsen kan falde ud én gang hver 24. time i op til 3 minutter, og samtidig sikre automatisk genstart af overførslen, når forbindelsen er tilbage, samt undgå at to rsync-kommandoer kører samtidig, kan du følge disse trin:

1. Brug af rsync med SSH

  • rsync er et kraftfuldt værktøj til at synkronisere filer mellem to systemer over SSH.
  • Det kan genoptage afbrudte overførsler, hvilket gør det ideelt til ustabile forbindelser.

2. Opsætning af en cron-job

For at sikre, at overførslen automatisk genstarter, kan du opsætte en cron-job, der kører rsync-kommandoen med jævne mellemrum.


# Åbn crontab for redigering
crontab -e

# Tilføj følgende linje for at køre rsync hver time
0 * * * * /path/to/rsync_script.sh

3. Skript til rsync-kommandoen

Opret et skript, der håndterer rsync-kommandoen og sikrer, at kun én instans kører ad gangen.


#!/bin/bash

# Definer kilde- og destinationsmapper
SOURCE="/path/to/source"
DESTINATION="user@remote:/path/to/destination"

# Låsfil for at forhindre flere instanser
LOCKFILE="/tmp/rsync.lock"

# Tjek om låsfilen eksisterer
if [ -e $LOCKFILE ]; then
  echo "Rsync already running."
  exit 1
fi

# Opret låsfil
touch $LOCKFILE

# Kør rsync med genoptagelsesmulighed
rsync -avz --partial --progress --append-verify $SOURCE $DESTINATION

# Fjern låsfilen efter afsluttet overførsel
rm $LOCKFILE

4. Håndtering af forbindelsesudfald

rsync's --partial og --append-verify flag sikrer, at overførslen kan genoptages fra det punkt, hvor den blev afbrudt.

5. Eksempel på rsync-kommando


rsync -avz --partial --progress --append-verify /path/to/source user@remote:/path/to/destination

Ved at følge disse trin kan du sikre, at store datamængder overføres effektivt og pålideligt, selv på en ustabil DSL-forbindelse.