Verfügt die Windows-Dateifreigabe (Samba-Protokoll) über eine inkrementelle API?

494
Nicholas DiPiazza

Ich möchte eine Windows - Freigabe für „alle Dateien hinzugefügt / bearbeitet / entfernt, da Zeitstempel abfragen yyyy/mm/dd hh:mm:ss

Gibt es so etwas?

Das einzige, was ich weiß, ist inotify- ist dies die einzige Option?

https://stackoverflow.com/questions/8124617/getting-file-create-notifications-for-cifs-mount-in-linux

inotify ist nicht wirklich das, was ich will, denn das ist Push-basiert, wenn ich nach etwas suche, das ich Umfrage nenne.

Es hört sich irgendwie nach dem an, wonach ich suche, gibt es nicht, aber ich dachte, ich würde hier fragen, ob jemand etwas gehört hat.

0

1 Antwort auf die Frage

1
grawity

Anscheinend nein.

Windows selbst (über den lokalen Datenträgerzugriff) würde das USN-Journal anbieten, das alle Änderungen seit einem bestimmten Journaleintragsindex abfragen kann (Sie würden dann den 'aktuellen' Index zusammen mit jeder Sicherung speichern). Dies ist jedoch gemäß SMB in Anhang A Abschnitt 136 nicht über SMB verfügbar :

Windows unterstützt keine USN-Journalaufrufe, da für diese ein Volume-Handle erforderlich ist. Die folgenden USN-Journalaufrufe sind ebenfalls mit STATUS_NOT_SUPPORTED fehlgeschlagen.

FSCTL_READ_USN_JOURNAL, FSCTL_CREATE_USN_JOURNAL, FSCTL_QUERY_USN_JOURNAL, FSCTL_DELETE_USN_JOURNAL, FSCTL_ENUM_USN_DATA

Sie können auch die anderen in MS-SMB oder MS-SMB2 dokumentierten SMB-Nachrichten durchsuchen (Abschnitt 2). Ich konnte keine Nachrichten finden, die nach Dateien suchen würden, außer um ein einzelnes Verzeichnis aufzulisten. (In jedem Fall wäre dies für ein Dateisystemprotokoll etwas ungewöhnlich ...)

ausgezeichnet - das "USN-Journal" könnte genau das sein, was wir brauchen. Ich werde es mir ansehen Nicholas DiPiazza vor 5 Jahren 0