Jak mohu pozastavit běh rsync?
Poprvé jsem to udělal Ctrl+C zabít a použít příznak -P
k opětovnému spuštění. Je to náchylné k poškození aktuálního přenosu souborů?
Podruhé jsem jednoduše dal MacOS do režimu spánku (zavřením víka). Při pohledu na běžící proces vidím 2 (nejsem si jistý proč) se stavem 'S'.
Vyzkoušeli použití
kill -SIGCONT
pokračovat v procesu, ale nemá to žádný účinek.
Jakýkoli program můžete pozastavit zasláním signálu TSTP
(zdvořilý) nebo STOP
(násilný). Na terminálu spustíte rsync
in, stisknete Ctrl+Z pošle TSTP
. Pokračujte příkazem fg
nebo bg
v terminálu nebo signálem CONT
.
Je bezpečné zabít proces rsync a celou věc spustit znovu; bude pokračovat tam, kde to skončilo. Může to být trochu neefektivní, zejména pokud jste neprošli --partial
(Součástí -P
), Protože rsync
znovu zkontroluje všechny soubory a zpracuje soubor, který byl přerušen. od nuly.
Mohou existovat neobvyklé kombinace možností, které povedou k tomu, že některé soubory nebudou správně synchronizovány, možná --inplace
S něčím jiným, ale myslím, že to nezpůsobí žádná jediná možnost.
Pokud odpojíte notebook a znovu jej připojíte někde jinde, může získat jinou adresu IP. Pak by se spojení TCP používané rsync přerušilo, takže byste to museli zabít a začít znovu. K tomu může dojít také v případě, že pozastavíte přenosný počítač a vyprší časový limit připojení TCP. Časový limit nakonec odfiltruje na úroveň aplikace, ale může to chvíli trvat. Je bezpečné stisknout Ctrl+C a znovu spusťte rsync.
Ctrl+Z pozastavit a:
$ fg
pokračujte, použijte
$ jobs
vidět pozastavené práce; bg [number]
na pozadí; fg [number]
do popředí.
Spusťte rsync
s příznakem --partial
. Poté bude udržovat částečné přenosy a po spuštění obnoví dílčí soubory.
Lidé zde zmínili použití příznaku --partial
, Je však třeba zmínit, že se obnoví, pouze pokud se při obnově použije příznak --append
Nebo --append-verify
.
--partial
Vytvoří skrytý soubor souboru, který nedokončil proces synchronizace, soubor zůstane zachován při přerušení synchronizace. Pokračuje v dokončování souboru, když použijete --append
Po obnovení, jinak, když nepoužíváte --append
, Neúplný skrytý soubor bude zachován a zůstane neúplný.
Závěr: Prostě můžete přerušit rsync --partial
Pomocí Ctrl + C pokud použijete rsync --append
při obnovování
(Zdroj: Může rsync pokračovat po přerušení? načteno 5. dubna 2016)