Aș dori o copie de rezervă regulată a fișierelor de pe disc pe un server de rezervă. Deoarece am o mulțime de fișiere (milioane), vreau să folosesc rsync, astfel încât să fie trimise numai diferențele.
de la terminalul Ubuntu 18.04, aceasta produce rezultate într-un fișier:
rsync -av /Disk2/ 192.168.1.80:/mnt/jjg-z2/39x-disk2/ &> /home/john/Desktop/nightly_disk2_logs.txt
Dar când folosesc crontab -e
, pentru marca de 16 minute a orei (pentru a testa)
16 * * * * rsync -av /Disk2/ 192.168.1.80:/mnt/jjg-z2/39x-disk2/ &> /home/john/Desktop
Nu am văzut rezultatul din acest fișier pe desktop.
În comentarii, steeldriver a sugerat remedierea problemei 1 crontab -e
acum arata asa:
SHELL=/bin/bash
52 * * * * rsync -av /Disk2/ 192.168.1.80:/mnt/jjg-14TB-z2/3970x-disk2/ &> /home/john/Desktop/nightly_disk2_logs.txt
Problema 2: Acum am rezultate în fișier, dar rsync are probleme cu permisiunile.Mediul crontab în ceea ce privește cheile SSH nu este același cu mediul terminalului? Iată rezultatul din fișier:
Permisiune refuzată, vă rugăm să încercați din nou.
Permisiune refuzată, vă rugăm să încercați din nou.
[email protected]: Permisiune refuzată (cheie publică, parolă).
rsync: conexiune închisă în mod neașteptat (0 octeți primiți până acum) [expeditor]
eroare rsync: eroare inexplicabilă (cod 255) la io.c(235) [sender=3.1.2]