Condividi tramite


Uso dell'identificatore del journal delle modifiche

Il file system NTFS associa un identificatore a 64 bit senza segno a ogni journal delle modifiche. Il journal viene stampato con questo identificatore al momento della creazione. Il file system contrassegna il journal con un nuovo identificatore in cui i record USN (Update Sequence Number) esistenti sono o potrebbero non essere utilizzabili.

Ad esempio, il file system NTFS riformulare un journal delle modifiche con un nuovo identificatore quando un volume viene spostato da una versione di NTFS a un'altra e quindi indietro. Tale spostamento può verificarsi in un ambiente a doppio avvio o quando si lavora con supporti rimovibili.

Per ottenere l'identificatore del journal delle modifiche corrente in un volume specificato, usare il codice di controllo FSCTL_QUERY_USN_JOURNAL . Per eseguire questa operazione e tutte le altre operazioni del journal delle modifiche, è necessario disporre dei privilegi di amministratore di sistema. Ovvero, è necessario essere un membro del gruppo Administrators.

Quando un amministratore elimina e ricrea il journal delle modifiche, ad esempio quando il valore USN corrente si avvicina al valore USN massimo possibile, i valori USN iniziano di nuovo da zero. Quando il file system NTFS stampa un journal con un nuovo identificatore anziché ricreare il journal, non reimposta l'USN su zero ma continua dall'USN corrente. In entrambi i casi, tutti gli USN esistenti sono inferiori a quelli futuri.

Quando sono necessarie informazioni su un set specifico di record, usare il codice di controllo FSCTL_QUERY_USN_JOURNAL per ottenere l'identificatore del journal delle modifiche. Usare quindi il codice di controllo FSCTL_READ_USN_JOURNAL per leggere i record del journal di interesse. Il file system NTFS restituisce solo record validi per il journal specificato dall'identificatore.

L'applicazione richiede sia gli USN dei record che l'identificatore per leggere il journal. Questo requisito fornisce un controllo di integrità per i casi in cui l'applicazione deve ignorare i record esistenti nel file e dove i record sono stati scritti nelle istanze precedenti del journal per lo stesso volume.

Per ottenere i record in cui si è interessati, è necessario iniziare dal record meno recente (ovvero con il valore USN più basso) e analizzare in avanti fino a individuare il primo record di interesse.