Strumenti Utente

Strumenti Sito


tecno:rsync--approfondimenti

Approfondimento dell'uso del comando rsync


rsync da disco verso rete:

rsync -avzpL /path/src -e 'ssh -p 60000' user@server-dest:path/dest

rsync da disco verso rete con cancellazione:

rsync -avzpL --delete /path/src/ -e 'ssh -p 60000' user@server-dest:/path/dest

rsync da rete verso disco locale

rsync -avzpL -e 'ssh -p 60000' user@server-dest:/path/src /path/dest 

rsync da rete verso disco locale con cancellazione:

rsync -avzpL --delete -e 'ssh -p 60000' user@server-dest:/path/src /path/dest 

NOTE

  • attenzione ai percorsi: se si usa il carattere jolly a fine percorso, per esempio /path/src/*, il parametro --delete non verrà applicato.
  • per i percorsi remoti, dopo il due punti il tipo di percorso cambia: se inizia con il carattere / il percorso verrà inteso come assoluto sul filesystem. Se il percorso dopo il carattere due punti inizia con una lettera o un numero, verrà inteso come relativo all'utente con cui si accede; quindi:

    • user@server-dest:/mnt/cartella punterà alla cartella assoluta /mnt/cartella
    • mentre user@server-dest:mnt/cartella punterà alla cartella /home/user/mnt/cartella

In certi casi quindi i percorsi possono essere indicati in due modi diversi per lo stesso percorso: per raggiungere la cartella documenti/fatture dell'utente user possiamo raggiungerlo sia con:

  • user@server-dest:documenti/fatture che con
  • user@server-dest:/home/user/documenti/fatture

Nel dubbio usare sempre percorsi assoluti se sono noti.

rsync accetta anche variabili di ambiente nei percorsi per cui è ammesso anche la forma user@server-dest:$HOME/documenti/fatture

il discorso vale anche al contrario, ossia: per raggiunger la cartella /home di un disco si può usare:

  • user@server-dest:/home (percorso assoluto)
  • user@server-dest:../ (percorso relativo: la sequenza ../ indica la cartella appena sopra quella attuale)

Nel secondo caso, se si usa un utente che non sia root si devono avere anche i permessi per poter accedere alla cartella in questione, per esempio:

rsync pippo user@server:../ (che tenta di scrivere nella cartella /home ma come utente user fallirà)
rsync: dest open "../pippo": Permission denied
rsync: failed to upload file pippo to ../
Motivo del fallimento: utente `user` non ha i permessi per scrivere in `/home` sulla macchina `server`




Torna alla pagina precedente
Torna alla home page del wiki

Joseph Curto 07/09/2023 10:19 - Ultima modifica: 07/09/2023 10:25


tecno/rsync--approfondimenti.txt · Ultima modifica: 24/03/2024 09:40 da 127.0.0.1