O ile widzę, rsync nie tworzy pliku w katalogu docelowym, dopóki nie zostanie ukończony.
To musi oznaczać, że tworzy gdzieś plik w katalogu tymczasowym i po zakończeniu kopiuje plik do katalogu docelowego.
Po pierwsze, czy to prawda?
Jeśli to prawda, czy możliwe jest, aby rsync nie korzystał z katalogu tymczasowego i zamiast tego tworzył plik w katalogu docelowym i po prostu zapisywał go do momentu zakończenia?
Tworzy plik tymczasowy, domyślnie w katalogu docelowym i nazwie
.<FILE_NAME>.<RANDOM_STRING>
. Tak więc, jeśli kopiujeszfoo.txt
, utworzy plik tmp o nazwie.foo.txt.GV4H3
(GV4H3
jest losowym ciągiem, który będzie się różnił przy każdym uruchomieniu). Możesz kontrolować to zachowanie za pomocą następującychrsync
opcji:Zapoznaj się z odpowiednimi częściami strony podręcznika
rsync
man (poniżej znajduje się tylko niewielki fragment dużej sekcji na temat używania--partial-dir
).źródło
rsync tworzy pliki tymczasowe w katalogu docelowym. Ten plik ma nazwę źródłową, ale z rozszerzeniem. Może być tak:
Rozszerzenie jest usuwane po zweryfikowaniu, że plik jest dokładną kopią źródła. Podczas procesu zmiany nazwy własności ustawiane są uprawnienia i czas modyfikacji. Możliwe więc, że nie widzisz pliku z powodu uprawnień. Upewnij się, że masz wystarczające uprawnienia, aby zobaczyć wszystkie pliki oraz te, które nie są Twoją własnością, aby zobaczyć pliki tymczasowe.
źródło