it-swarm-eu.dev

Jak mohu pozastavit / obnovit rsync

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.

52
qnoid

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í.

22
gauteh

Spusťte rsync s příznakem --partial. Poté bude udržovat částečné přenosy a po spuštění obnoví dílčí soubory.

8
bahamat

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)

5
Mehdi Nellen