Chciałbym, aby rsync drukował zmodyfikowane i usunięte pliki. Opcja verbose (-v) drukuje zmodyfikowane pliki, ale także listę podkatalogów, być może dlatego, że dotknięte katalogi są uważane za zmodyfikowane. Ponieważ synchronizuję wiele plików z wielu podkatalogów, nie można zobaczyć rzeczywistych zmian.
Czy istnieje sposób, aby nie drukować katalogów za pomocą rsync?
Nie szukam grep -v "*/$"
odpowiedzi, ponieważ wykluczałoby to także nowe katalogi.
Polecenie, którego używam: rsync -avh --delete /media/data/src /media/data/bkp
I za każdym razem drukuje listę wszystkich katalogów:
src/dir1/
src/dir1/sdir1/
src/dir1/sdir2/
src/dir2/
EDYCJA: Ok, po kilku intensywnych testach .. Nie drukuje wszystkich katalogów podczas synchronizacji z partycji ext4 na ext4 i od NTFS do NTFS. Dzieje się tak tylko podczas synchronizacji z ext4 do NTFS. I opcje -c
lub --omit-dir-times
nie zmieniaj tego.
Zamiast zmieniać typ montowania, możesz także powiedzieć rsync, aby ignorował uprawnienia do plików podczas kopiowania do systemu plików, który go nie obsługuje. Następujące polecenie działa dla mnie.
Ze strony man rsync:
źródło
nie używaj -a, zawiera -p -o -g.
źródło
-a
jeśli chcesz, a następnie dodać,--no-o --no-p --no-g
aby pominąć właściciela, grupę i uprawnienia.Wygląda na to, że to był problem z pozwoleniem. Nie jestem pewien, dlaczego ... Ale edytowałem / etc / fstab dla partycji NTFS i teraz działa zgodnie z oczekiwaniami, tj. Nie drukuje katalogów, które nie zostały zmodyfikowane.
Stary wpis fstab: użytkownicy ntfs-3g, domyślne, exec, uid = 1000 0 0
Nowy wpis fstab: użytkownicy ntfs-3g, domyślne, exec, uid = 1000, gid = 1000, dmask = 077, fmask = 137 0 0
Zgaduję (kto wie ..) dmask = 077 zrobił lewę, tj. „Drwx ---” zamiast „drwxrwx”.
źródło
Użyłem:
Jest to praca próbna (opcja
n
). Usuń tę opcję, abyrsync
faktycznie przesyłać pliki.źródło