How to Sync Files/Directories Using Rsync with Non-standard SSH Port
Inhoudsopgave:
Als het gaat om het overbrengen van bestanden tussen systemen op het netwerk, hebben Linux- en Unix-gebruikers veel tools tot hun beschikking.
De populairste protocollen voor gegevensoverdracht zijn SSH en FTP. Hoewel FTP erg populair is, geeft u altijd de voorkeur aan SSH, omdat dit de veiligste manier is om uw bestanden over te zetten.
Er zijn gespecialiseerde tools voor bestandsoverdracht via SSH zoals
scp
en
sftp
maar geen daarvan heeft alle functies die
rsync
biedt.
rsync
kan worden gebruikt voor het spiegelen van gegevens, incrementele back-ups, het kopiëren van bestanden tussen systemen enzovoort.
In deze zelfstudie leggen we uit hoe u bestanden met
rsync
via SSH kopieert.
Voorwaarden
-
Het
rsync
hulpprogramma moet op zowel het doel- als het bronsysteem zijn geïnstalleerd. Als het niet is geïnstalleerd, kunt u het installeren met behulp van de pakketbeheerder van uw distributie:Ubuntu en Debian:
sudo apt install rsync
CentOS en Fedora:
sudo yum install rsync
SSH-toegang tot de externe computer.
De gebruiker die de opdracht
rsync
uitvoert en de externe SSH-gebruiker moeten de juiste machtigingen hebben om bestanden te lezen en te schrijven.
rsync
om bestanden over te dragen via SSH
Met
rsync
kunt u bestanden en mappen via SSH overbrengen van en naar externe servers.
De algemene syntaxis voor het overbrengen van bestanden met
rsync
is als volgt:
Local to Remote: rsync… -e ssh… HOST:DEST Remote to Local: rsync… -e ssh HOST:SRC…
Waar
SRC
de
DEST
is, is
DEST
de doeldirectory
USER
is de externe SSH-gebruikersnaam en
HOST
is de externe SSH-host of het IP-adres.
De nieuwere versies van rsync zijn geconfigureerd om SSH te gebruiken als standaard externe shell, zodat u de optie
-e ssh
kunt weglaten.
Om bijvoorbeeld een enkel bestand
/opt/file.zip
van het lokale systeem naar de
/var/www/
map op het externe systeem met IP
12.12.12.12
zou je het volgende uitvoeren:
rsync -a /opt/file.zip [email protected]:/var/www/
De optie
-a
staat voor de archiefmodus, die mappen recursief synchroniseert, speciale en blokkeerapparaten overbrengt, symbolische koppelingen, aanpassingstijden, groep, eigendom en machtigingen bewaart.
Als het bestand op de externe server bestaat, wordt het overschreven. Als u het bestand onder een andere naam wilt opslaan, geeft u de nieuwe naam op:
rsync -a /opt/file.zip [email protected]:/var/www/file2.zip
Om gegevens over te dragen van een externe naar een lokale machine, gebruikt u de externe locatie als bron en de lokale locatie als bestemming:
rsync -a [email protected]:/var/www/file.zip /opt/
Het overzetten van mappen met
rsync
via SSH is hetzelfde als het overzetten van bestanden.
Het is belangrijk om te weten dat
rsync
een andere behandeling geeft met een slash
/
. Wanneer de bronmap een slash bevat, kopieert
rsync
alleen de inhoud van de bronmap naar de doelmap. Wanneer de volgende schuine streep wordt weggelaten, wordt de bronmap gekopieerd naar de doelmap.
Als u bijvoorbeeld de lokale
/opt/website/images/
map naar de
/var/www/images/
map op een externe machine wilt overbrengen, typt u:
rsync -a /home/linuxize/images/ [email protected]:/var/www/images/
Gebruik de optie
--delete
als u de lokale en externe map wilt synchroniseren. Wees voorzichtig bij het gebruik van deze optie, omdat bestanden in de doelmap worden verwijderd als ze niet in de bronmap staan.
rsync -a --delete /home/linuxize/images/ [email protected]:/var/www/images/
Als SSH op de externe host luistert naar een andere poort dan de standaard
22
, geeft u de poort op met de optie
-e
. Als SSH bijvoorbeeld luistert op poort
3322
u:
rsync -a -e "ssh -p 3322" /home/linuxize/images/ [email protected]:/var/www/images/
Bij het overdragen van grote hoeveelheden gegevens wordt aanbevolen om de opdracht
rsync
voeren in een schermsessie of de optie
-P
gebruiken die
rsync
vertelt om tijdens de overdracht een voortgangsbalk weer te geven en de gedeeltelijk overgedragen bestanden te behouden:
rsync -a -P /home/linuxize/images/ [email protected]:/var/www/images/
Conclusie
We hebben u laten zien hoe u
rsync
via SSH gebruikt om bestanden en mappen te kopiëren en te synchroniseren.
Misschien wilt u ook lezen hoe u bestanden of mappen uitsluit met
rsync
.
Als je nog vragen hebt, kun je een reactie achterlaten.
rsync-terminalMet Firefox verzenden kunt u grote bestanden online coderen en delen via elke browser
Het verzenden van de grote bijlagen is altijd al een probleem geweest. E-mailserver heeft zijn eigen beperkingen over de grootte van de bijlagen en daarom moeten we bepaalde toepassingen of services van derden gebruiken om onze grote bestanden te verzenden.
Hoe emulatorspellen over te dragen naar ps vita op tn-v via ftp
Leer hoe je emulatorspel Roms draadloos via FTP kunt overbrengen naar je PS Vita met TN-V.
Hoe bestanden en mappen uit te sluiten met rsync
Met Rsync kunt u gegevens spiegelen, incrementele back-ups maken en bestanden tussen systemen kopiëren. Wanneer u gegevens kopieert, wilt u misschien een of meer bestanden of mappen uitsluiten op basis van hun naam of locatie. In deze tutorial laten we u zien hoe u bestanden en mappen kunt uitsluiten met rsync.