restic version
Rest 0.8.2
% restic -r /tmp/restictest backup $SSHFSMOUNT/directory
Das Backup-Verzeichnis ist ein mit sshfs gemountetes Dateisystem.
Der Befehl wird mehrmals ausgeführt, um mehrere Snapshots zu erstellen.
In meinem Fall befindet sich eine riesige Datenmenge (1 TB+) im Remote-Verzeichnis.
Lokales ext4-Dateisystem.
Ich erwarte, dass das erste Backup langsam ist und viele Daten über LAN überträgt, während die nächsten Backups ziemlich schnell sein und nicht viel Bandbreite verbrauchen sollten.
Alle Backups dauern Stunden (wenn nicht sogar Tage), selbst wenn sich keine Dateien geändert haben.
Es ist nicht 100% reproduzierbar, aber selbst mit einer kleinen Datenmenge konnte ich es reproduzieren.
Die SFTP-Serverprotokolle zeigen, dass Dateien vollständig abgerufen werden, auch wenn sie sich nicht geändert haben.
Ja: restic vergleicht Inodes, um zu überprüfen, ob Dateien geändert wurden (Debugging-Meldung "Zeitstempel, Größe oder Inode geändert", restic/node.go:551restic.(*Node).IsNewer11node
).
Inodes können sich jedoch bei Dateisystem-Mounts mit sshfs (und wahrscheinlich auch bei einigen anderen Dateisystemen) ändern.
Das Auskommentieren des Inode-Checks hat das Problem für mich gelöst.
Ich hätte gerne eine Möglichkeit, diese Prüfung zu deaktivieren; vielleicht ein Kommandozeilen-Flag?
Sicher, es ist eine schöne Software! Ich freue mich umso mehr, da ich einen Workaround gefunden habe...
Mach weiter so!
Danke für den Bericht, dies wird in der Tat dadurch verursacht, dass Restic erkannt hat, dass sich Dateien basierend auf dem Inode geändert haben. Für Fuse-basierte Dateisysteme ist diese Überprüfung nicht so toll, wir sollten stattdessen nur die Zeitstempel und die Dateigröße überprüfen.
Im Prinzip könnte dies auch automatisch erkannt werden (indem man sich den Dateisystemnamen ansieht und eine schwarze Liste mit Know-Inode-instabilen Dateisystemen führt), sodass wir möglicherweise nicht einmal ein Kommandozeilen-Flag benötigen.
Im Prinzip könnte dies auch automatisch erkannt werden (indem man sich den Dateisystemnamen ansieht und eine schwarze Liste mit Know-Inode-instabilen Dateisystemen führt), sodass wir möglicherweise nicht einmal ein Kommandozeilen-Flag benötigen.
Wie stellen Sie sich das vor? ich könnte es mal versuchen...
0.9.5
, dies sollte geschlossen werden. :zwinkern:Du hast Recht, danke für den Hinweis!
Hilfreichster Kommentar
Danke für den Bericht, dies wird in der Tat dadurch verursacht, dass Restic erkannt hat, dass sich Dateien basierend auf dem Inode geändert haben. Für Fuse-basierte Dateisysteme ist diese Überprüfung nicht so toll, wir sollten stattdessen nur die Zeitstempel und die Dateigröße überprüfen.
Im Prinzip könnte dies auch automatisch erkannt werden (indem man sich den Dateisystemnamen ansieht und eine schwarze Liste mit Know-Inode-instabilen Dateisystemen führt), sodass wir möglicherweise nicht einmal ein Kommandozeilen-Flag benötigen.