Una condivisione NAS può mostrare file obsoleti quando il client o il servizio di condivisione fa ancora riferimento a uno stato della directory memorizzato nella cache o al percorso precedente.
La sostituzione di una cartella sul NAS non garantisce che ogni sessione SMB, applicazione, montaggio, percorso inverso o spazio dei nomi passi immediatamente al nuovo albero di directory. Il server potrebbe ancora esportare il vecchio percorso, la sostituzione potrebbe essere stata effettuata sotto un punto di montaggio diverso oppure il client potrebbe conservare metadati della directory, informazioni sui file, handle aperti o un riferimento memorizzato nella cache. La diagnosi più sicura confronta la vista del filesystem, la destinazione attiva della condivisione e una sessione client completamente nuova prima di modificare qualsiasi impostazione della cache.
Conferma quale livello mostra ancora il vecchio albero di directory
Confronta il client SMB interessato con la shell del NAS, il file manager web del NAS e un secondo client che non abbia aperto di recente la condivisione. Registra un nome di file che dovrebbe essere scomparso e uno nuovo che dovrebbe essere visibile.
Se anche la shell del NAS e il file manager web mostrano il vecchio albero, il problema è al di sotto di SMB: la sostituzione è avvenuta nella directory sbagliata, manca un montaggio previsto oppure un altro dataset copre il percorso. IBM osserva che le notifiche di modifica SMB dipendono dal modo in cui le modifiche raggiungono il servizio file, quindi un solo client obsoleto non dimostra di per sé che i dati sul server siano vecchi.
Non aggiornare ripetutamente lo stesso browser di file considerandolo ogni volta un nuovo test. Un confronto significativo utilizza un altro processo client, un’altra sessione utente oppure una vista diretta del filesystem locale che non riutilizzi gli stessi metadati SMB.
Verifica la destinazione attiva della condivisione dopo la sostituzione della cartella
Controlla la configurazione delle condivisioni del server e risolvi il percorso esportato fino al relativo oggetto reale del filesystem. Verifica i montaggi bind, i collegamenti simbolici, i punti di montaggio dei dataset, le mappature dei volumi dei container e se la cartella sostitutiva è stata creata prima o dopo l’attivazione di un montaggio di archiviazione.
Un errore comune si verifica quando l’amministratore sostituisce i file sotto una directory non montata, quindi il montaggio dello spazio di archiviazione reale ritorna e nasconde quella sostituzione. Il manuale dei montaggi Linux spiega che il montaggio nasconde la vista precedente della directory mentre il filesystem rimane collegato; per questo il percorso visibile deve essere verificato rispetto alla tabella dei montaggi attivi.
La guida alla migrazione dei dati NAS di ZimaSpace fornisce la sequenza di verifica correlata per dimostrare che i percorsi di origine e destinazione previsti contengano i dati attesi prima di rimuovere la vecchia copia.
Testa le cache SMB delle directory e delle informazioni sui file
Chiudi tutte le applicazioni che utilizzano la condivisione, disconnetti la mappatura SMB e stabilisci una nuova sessione. Confronta il risultato con un secondo computer o una nuova sessione utente che non abbia precedentemente enumerato la directory.
I client SMB Windows possono memorizzare nella cache i metadati delle directory e le informazioni sui file per un periodo configurato. Le indicazioni Microsoft sull’ottimizzazione dei file server spiegano che la durata della cache della directory controlla per quanto tempo i metadati possono rimanere memorizzati quando i lease delle directory non sono disponibili.
Se una sessione nuova mostra immediatamente l’albero corretto mentre quella precedente no, i dati non mancano e la destinazione della condivisione è probabilmente corretta. Ricollega correttamente il client interessato e verifica perché la sua sessione non abbia ricevuto o rispettato la notifica di modifica prevista prima di cambiare globalmente i valori della cache.
Controlla gli handle aperti, i lease e le applicazioni di lunga durata
Elenca le sessioni SMB attive e i file aperti sul NAS. Gestori multimediali, applicazioni fotografiche, strumenti di backup, finestre della shell, indicizzatori e browser di file possono mantenere aperte directory o file molto tempo dopo la conclusione dell’operazione di copia visibile.
Chiudi prima l’applicazione, quindi disconnetti solo la sessione SMB interessata. La documentazione SMB di NetApp spiega che gli oplock dei lease conservano lo stato della cache del client, quindi disabilitare i lease sull’intero NAS è una modifica molto più ampia rispetto al ripristino di una singola connessione obsoleta.
Se il vecchio albero scompare solo dopo la chiusura di una specifica applicazione, conserva questo risultato e testa nuovamente l’applicazione con la nuova cartella. L’azione correttiva riguarda il comportamento di riconnessione, monitoraggio o aggiornamento dell’applicazione, non il pool di archiviazione.
Escludi i riferimenti DFS e i nomi server duplicati
Verifica se il client ha raggiunto il NAS tramite un hostname diretto, un indirizzo IP, un alias DNS, uno spazio dei nomi DFS o un vecchio nome server che ora viene risolto altrove. Due percorsi che sembrano simili nel browser di file possono terminare su destinazioni di condivisione diverse.
I client DFS memorizzano nella cache i riferimenti allo spazio dei nomi e alle cartelle per un periodo definito. I client DFS possono inoltre conservare nella cache i riferimenti allo spazio dei nomi e alle cartelle per un certo periodo, inviando temporaneamente un client a una destinazione precedente dopo una modifica dello spazio dei nomi.
Confronta l’identità del server, l’indirizzo risolto, il nome della condivisione e il percorso finale delle sessioni funzionante e obsoleta. Non svuotare tutte le cache DNS e DFS finché non hai dimostrato che il client interessato sta raggiungendo una destinazione diversa.
Confronta un percorso diretto nuovo con il normale percorso dell’utente
Apri la condivisione una volta tramite l’hostname normale e una volta tramite l’indirizzo diretto verificato del server, usando una sessione client pulita. Utilizza questa procedura solo come elemento diagnostico, non come sostituzione permanente di un hostname gestito.
Se il percorso diretto mostra il nuovo albero mentre il nome normale mostra quello vecchio, concentrati su alias, riferimenti, credenziali salvate o su un secondo NAS che utilizza lo stesso nome. Il modello dei percorsi mount.cifs di Debian mostra perché sia necessario confrontare l’esatta destinazione server/condivisione e il punto di montaggio locale, invece di affidarsi a un nome visualizzato familiare.
Confronta inoltre il numero di file e l’hash di un file dal percorso locale del NAS e dal percorso SMB. La corrispondenza del vecchio file conferma una selezione errata del percorso o della cache; un file diverso con lo stesso nome indica una sostituzione incompleta, cartelle duplicate o contenuti generati dall’applicazione.
Correggi il problema più circoscritto e verifica che sopravviva al riavvio
Correggi la destinazione della condivisione quando esporta la cartella sbagliata, ripristina il montaggio mancante quando il percorso è coperto in modo errato, ricollega la sessione client obsoleta quando il problema riguarda un solo client oppure aggiorna la destinazione DFS quando lo spazio dei nomi fa ancora riferimento alla posizione precedente.
Evita di modificare la durata delle cache SMB, disabilitare i lease o ricreare la condivisione a meno che un test controllato dimostri che il livello responsabile sia quello. La vista delle sessioni e dei blocchi attivi di Samba consente di controllare la connessione interessata prima di applicare una modifica estesa a tutto il server.
Il problema è risolto quando la shell del NAS, il file manager web, una nuova sessione SMB e il percorso normale del client mostrano tutti gli stessi contenuti della cartella dopo il riavvio del servizio e dell’host. Mantieni la vecchia cartella offline ma intatta finché questa verifica non è superata e nessuna applicazione continua a scrivervi.
Supporto e consigli
Altro da leggere

Perché il ripristino di un volume Docker ricrea il contenuto dei file, ma elimina gli attributi estesi?
Una diagnosi del ripristino del volume che copre l’inventario degli xattr, le opzioni di tar e Rsync, gli spazi dei nomi, il supporto della...

Perché un container in esecuzione mantiene il vecchio limite di memoria dopo la modifica del file Compose?
Una diagnosi dei limiti di memoria che copre i cgroup attivi, il riavvio rispetto alla ricreazione, i campi di Compose, i limiti rigidi e...

Perché il riavvio di un proxy inverso invalida ogni sessione per una determinata app self-hosted?
Una diagnosi della perdita di sessione che copra l’ambito dei riavvii, la gestione dei cookie, la rotazione dei segreti, le sessioni basate sulla cache,...

