Możesz wstrzymać dowolny program, wysyłając mu TSTP
(uprzejmy) lub STOP
(wymuszony) sygnał. Na terminalu, rsync
w którym się znajdujesz, naciśnij Ctrl+ Zwysyła TSTP
. Wznów za pomocą polecenia fg
lub bg
w terminalu lub CONT
sygnału.
Bezpiecznie jest zabić proces rsync i uruchomić wszystko ponownie; będzie kontynuowane tam, gdzie zostało przerwane. Może to być trochę nieefektywne, szczególnie jeśli nie przeszedłeś --partial
(wliczony w -P
), ponieważ rsync
sprawdzi ponownie wszystkie pliki i przetworzy plik, który został przerwany od zera.
Mogą występować nietypowe kombinacje opcji, które spowodują, że niektóre pliki nie zostaną poprawnie zsynchronizowane, być może --inplace
z czymś innym, ale myślę, że żadna opcja nie spowoduje tego.
Jeśli odłączysz laptopa i podłączysz go w innym miejscu, może on uzyskać inny adres IP. Wtedy połączenie TCP używane przez rsync zostanie zerwane, więc będziesz musiał go zabić i zacząć od nowa. Może się to zdarzyć również w przypadku zawieszenia laptopa i przekroczenia limitu czasu połączenia TCP. Limit czasu zostanie ostatecznie odfiltrowany do poziomu aplikacji, ale może to chwilę potrwać. Można bezpiecznie nacisnąć Ctrl+ Ci ponownie uruchomić rsync.
Gilles „SO- przestań być zły”
źródło
rsync -avh
po prostu powoduje utratę kopiowanego pliku, jeśli plik jest duży, tracisz sporo czasu. MożeCtrl+z
przeniesienie pliku tymczasowego (zacznij od kropki), a następnieCtrl-C
rsync może być lepszym rozwiązaniem.bg
umieścić procesu do b ack g rundzie , nie zatrzyma.--partial
jest to, czego potrzebowałem. Próbuję skopiować 21 GB danych, a wśród nich mam plik 6,6 GB. Problem polega na tym, że sieć niszczy moje połączenie po kilku GB transferu danych, do czego--partial
dokładnie potrzebuję.Ctrl+ Zzawiesić i:
aby kontynuować, użyj
zobaczyć zawieszone prace;
bg [number]
w tle;fg [number]
na pierwszym planie.źródło
Ctrl+S
zawiesza tylko przewijanie danych wyjściowych, a nie bazowy program (chyba że zostanie zablokowany, czekając, aż terminal zaakceptuje jego dane wyjściowe) i tylko wtedy, gdy go nie wyłączono.Uruchom
rsync
z--partial
flagą. Następnie zachowa częściowe transfery i wznowi częściowe pliki po uruchomieniu.źródło
Ludzie tutaj wspominali, że użycie
--partial
flagi działa, należy jednak wspomnieć, że wznawia się tylko wtedy, gdy flaga--append
lub--append-verify
jest używana podczas wznawiania.--partial
tworzy ukryty plik pliku, który nie zakończył procesu synchronizacji, plik jest zachowywany po przerwaniu synchronizacji. Nadal uzupełnia plik, gdy użyjesz go--append
po wznowieniu, w przeciwnym razie, gdy nie będzie używany--append
, niekompletny ukryty plik zostanie zachowany i pozostanie niekompletny.Wniosek: Możesz po prostu przerwać
rsync --partial
za pomocą Ctrl+, Cjeśli użyjesz gorsync --append
podczas wznawiania(Źródło: Czy rsync może zostać wznowiony po przerwaniu? Pobrano 5 kwietnia 2016 r.)
źródło
rsync --avP <source> <destination>
, muszę go zatrzymać CTRL + C, a następnie wznowić, piszącrysnc --append
?--append
do istniejących opcji.