Domanda:come posso eseguire il processo rsync in background?
Risposta:rsync può essere eseguito in background usando il comando nohup davanti ad esso e &alla fine. Esploriamo come eseguire questo comando come processo in background in Linux.
Perché dovrei eseguire il processo rsync in background?
Bene, sono abbastanza sicuro che questo sia successo a te, o accadrà presto. Stai eseguendo un processo importante per copiare i dati da un server all'altro, poi improvvisamente la connessione a Internet si interrompe o ti sei dimenticato di eseguire quel comando e sei semplicemente disconnesso dalla sessione.
Il risultato:il tuo rsync, scp o altro processo verrà terminato e il tuo lavoro non sarà terminato. Cosa puoi fare per evitare di riavviare il processo di rsync?
La soluzione per mantenere rsync in esecuzione in background
nohup rsync -a host.origin:/path/data destiny.host:/path/ &
La soluzione è semplice:useremo il comando nohup. Nohup consente di eseguire un processo/comando o uno script di shell per continuare a lavorare in background anche se si chiude la sessione del terminale.
Nel nostro esempio, abbiamo anche aggiunto "&" alla fine, che aiuta a inviare il processo in background.
Esempio di output:
[[email protected]:~]nohup rsync -avp -e 'ssh -p 12141' [email protected]:/home/user/public_html/files/2015 /root/temp/public_html/files/ & [1] 33376 [[email protected]:~]
Questo è tutto, ora il tuo processo rsync verrà eseguito in background, qualunque cosa accada sarà lì a meno che tu non uccida il processo dalla riga di comando, ma non verrà interrotto se chiudi il terminale Linux o se esci dal server .
Riferimenti:
- Risincronizzazione
- Nessun problema