RSYNC

RSYNC-Server-Installation

RSYNC ist für das Backup oder die Synchronisation von Serververzeichnissen bestens geeignet.
Dabei werden nur die Differenzen bzw. die Änderungen der gewünschten Verzeichnisse übertragen.
RSYNC überträgt seine Daten standardmäßig unverschlüsselt, kann aber auch über ssh arbeiten.
Dann ist RSYNC aber nicht mehr so schnell.

  • Installation mit :
apt-get install rsync xinetd
  • Konfiguration der Datei /etc/rsyncd.conf
  
  #auth users = doedel
  #hosts allow = rechneroderIP
  #use chroot = true
  #gid = users
  [backup]
  path = /daten/backup
  comment = backupverzeichnis
  read only = no
  list = yes
  auth users = doedel
  uid = root
  gid = root
  secrets file = /etc/rsyncd.secrets
  
  [www]
  path = /var/www/htdocs
  comment = exportverezichnis für den webserver
  read only = yes
  list = yes

* Konfiguration der Datei /etc/rsyncd.secrets

doedel:geheim
  • Start für xinetd konfigurieren:
  • Konfiguration der Datei /etc/xinetd.d/rsync
# default: off
# description: rsync file transfer daemon
service rsync
{
        socket_type     = stream
        protocol        = tcp
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        disable         = no
}
  • xinetd neu starten mit:
/etc/init.d/xinetd restart

Clientbeispiel

Backup eines Tomcat-Servers (Client):
auf dem Client muss der rsync-client installiert sein:

apt-get install rsync

auf dem RSYNC-Server müssen die zu sichernden Verzeichnisse einmalig von Hand erstellt werden:

mkdir /daten/backup/ServernamedesClients

jetzt kommt dass eigentliche Backup

/etc/init.d/tomcat5 stop
/etc/init.d/mysql stop
rsync -Arlatgpo /usr/share/tomcat5 RsyncServerIP::backup/ServernamedesClient
rsync -Arlatgpo /var/lib/tomcat5 RsyncServerIP::backup/ServernamedesClients  
rsync -Arlatgpo /var/lib/mysql RsyncServerIP::backup/ServernamedesClients  
rsync -Arlatgpo /etc RsyncServerIP::backup/ServernamedesClients    
/etc/init.d/mysql start
/etc/init.d/tomcat5 start
Tips

Bandbreite von rsync beschränken(wenn man sich nicht die VPN-Leitung zumüllen will):

rsync --bwlimit=50 ....

Anzeige der RSYNC-Freigaben auf einem Server:

rsync RSyncServerIP::


Rsync hinter einem Proxy benutzen:

export RSYNC_PROXY=http://benutzer:Passwort@proxy:portnummer
#(Großschreibung ist hier wichtig)
rsync -avzH --delete --progress --delay-updates --timeout=30 rsync://ftp5.gwdg.de/pub/opensuse/update/13.1/ /meinrepo/suse/update/13.1/

mit Benutzerabfrage aufrufen(s.o) (nicht per ssh):

  rsync -Arlatgpo --progress /srv/alfresco doedel@ipadresse::backup/
  Password:


Dateien eines Verzeichnisses in ein Zielverzeichnis mit reinkopieren:

rsync -vurp mydir/pool/ /var/www/debian/pool/


zurück