I conflitti di nomi di file che differiscono solo per maiuscole/minuscole si presentano durante un ripristino NAS multipiattaforma quando il backup contiene due percorsi che la destinazione del ripristino considera equivalenti. Un server domestico Linux può preservare Photo.jpg e photo.jpg come file separati, mentre un volume Windows, un volume macOS predefinito o un client SMB possono trattare quei nomi come un'unica destinazione. Lo strumento di ripristino deve quindi sovrascrivere, rinominare, saltare, unire o fermarsi.
Non continuare il ripristino completo finché non sai quali percorsi sono entrati in conflitto e come lo strumento li ha gestiti. Ripristina l'albero interessato in una posizione di staging isolata, conserva entrambi gli oggetti di origine con nomi temporanei deterministici e crea un record di mappatura dei percorsi prima di spostare i dati nella condivisione NAS attiva.
Perché il backup può memorizzare due nomi che il sistema di destinazione del ripristino rifiuta?
Un repository di backup può registrare i percorsi come nomi opachi senza applicare le regole di confronto del filesystem di destinazione. I filesystem Linux comunemente distinguono tra maiuscole e minuscole, mentre i filesystem predefiniti di Windows e macOS generalmente preservano la capitalizzazione digitata ma confrontano i nomi senza distinzione tra maiuscole e minuscole. Una discussione sul ripristino multipiattaforma mostra che i percorsi di origine possono essere validi nel backup ma non rappresentabili sul sistema di ripristino.
Per un NAS domestico, questo accade spesso dopo aver ripristinato un volume di un container Linux, una directory di sviluppo, un albero di importazione foto o una libreria multimediale su una condivisione che sarà accessibile da Windows o macOS. Il backup non è necessariamente corrotto; lo spazio dei nomi di destinazione ha un insieme più piccolo di nomi distinti.
SMB che conserva le maiuscole non è la stessa cosa dell'archiviazione sensibile alle maiuscole
Una condivisione SMB può mostrare la capitalizzazione originale e comunque eseguire una ricerca senza distinzione tra maiuscole e minuscole. Un esempio della community TrueNAS descrive diverse regole di distinzione tra maiuscole e minuscole a livello di dataset e di accesso SMB. Il server può quindi memorizzare localmente nomi con lettere maiuscole e minuscole miste mentre un client SMB di Windows o macOS non può indirizzarli come oggetti separati.
Testa il percorso di ripristino effettivo, non solo l'impostazione del filesystem NAS. Crea due file innocui i cui nomi differiscono solo per maiuscole tramite lo stesso client, protocollo, mount e directory di destinazione che il lavoro di ripristino utilizzerà. Se la seconda creazione fallisce o si risolve nel primo file, quel percorso non può ricevere in sicurezza l'albero originale senza modifiche.
Una collisione nel nome di una cartella può unire un intero sottoramo
Il conflitto può verificarsi in qualsiasi componente della directory, non solo nel nome finale del file. Se il backup contiene Photos/2025/A.jpg e photos/2025/B.jpg, una destinazione insensibile alle maiuscole può unire entrambi i rami in una sola directory o rifiutare il secondo ramo. Un account di trasferimento misto Linux e Windows mostra come le collisioni nei componenti delle directory possono deviare o scartare file.
Confronta i percorsi relativi completi dopo aver applicato le regole di folding delle maiuscole della destinazione. Un rapporto che controlla solo i nomi base duplicati può perdere collisioni create dalle directory genitrici.
Gli strumenti di ripristino non gestiscono in modo sicuro ogni collisione
Un'applicazione di ripristino può fermarsi con un errore “esiste già”, aggiungere un suffisso, mantenere il primo file, mantenere l'ultimo file o unire gli alberi delle directory. Alcuni lavori terminano comunque con uno stato di successo o avviso anche se un membro di una coppia in collisione è stato saltato. La ricerca su la gestione incoerente delle collisioni causate dalla sensibilità alle maiuscole mostra perché il comportamento dello strumento deve essere osservato e non dato per scontato.
Prima di un grande ripristino, crea un piccolo backup di prova contenente coppie di file e directory che differiscono solo per maiuscole/minuscole. Registra se lo strumento fallisce, rinomina, sovrascrive o unisce, e verifica entrambi gli hash dei contenuti successivamente.
La normalizzazione Unicode può causare una collisione simile
Due nomi di file possono sembrare identici pur utilizzando sequenze di punti codice Unicode diverse, come un carattere accentato precomposto e un carattere base seguito da un segno combinato. La gestione dei nomi in APFS preserva le forme pur utilizzando confronti normalizzati in alcune modalità, e la sensibilità alle maiuscole e la normalizzazione Unicode interagiscono nella ricerca dei nomi di file.
Non presumere che ogni apparente conflitto solo di maiuscole sia causato solo da lettere maiuscole e minuscole. Esporta i nomi in un formato escape o consapevole del punto codice quando sono coinvolti nomi accentati, in lingue asiatiche o visivamente identici.
Blocca il ripristino e conserva prima entrambi gli oggetti
Quando si verifica una collisione, interrompi il ripristino nella destinazione live. Non rieseguire ripetutamente lo stesso lavoro con la sovrascrittura abilitata, perché il vincitore può cambiare in base all'ordine di attraversamento. Crea un filesystem di staging sensibile alle maiuscole o ripristina tramite un ambiente Linux che possa rappresentare entrambi i nomi. Un articolo sulla riga di comando di Windows spiega che le directory sensibili alle maiuscole possono preservare nomi che le normali applicazioni Windows non possono distinguere, illustrando perché lo staging deve usare uno spazio dei nomi che possa rappresentare entrambi gli oggetti.
Ripristina ogni oggetto in collisione con un nome temporaneo unico come Photo.jpg.__case1 e photo.jpg.__case2. Conserva il percorso originale, la versione di backup, la dimensione, il checksum e il nome temporaneo selezionato in un file di mappatura CSV o JSON.
Rinomina le collisioni in modo deterministico prima di spostarle nella condivisione live
Scegli una regola che non dipenda mai da quale file viene incontrato per primo. Aggiungi un'etichetta della piattaforma di origine, un frammento di hash stabile o una sequenza esplicita mantenendo l'estensione. Per esempio, conserva Photo__linux_A1B2.jpg e photo__linux_C3D4.jpg piuttosto che accettare suffissi “copy” automatici il cui significato non è chiaro.
Controlla la mappatura prima di modificare i nomi nel repository di backup o nella fonte originale. La guida di ZimaSpace per rilevare collisioni di nomi di file sensibili alle maiuscole prima di una copia cross-platform può essere utilizzata per scansionare l'albero di staging ricostruito e confermare che non rimanga alcuna coppia irrisolta.
Riparare i riferimenti delle applicazioni dopo la rinomina dei file
Un file multimediale rinominato può scomparire da un database di libreria, una configurazione di container può puntare al vecchio percorso e un'applicazione fotografica può trattare l'oggetto rinominato come un nuovo asset. Ripristinare prima i dati, poi aggiornare playlist, link sidecar, script, record di database, bind mount e indici dell'applicazione che dipendono dall'ortografia esatta.
Per applicazioni self-hosted, preservare il database e la configurazione che descrivono i percorsi originali. Un ripristino solo del filesystem può conservare ogni byte ma lasciare comunque l'applicazione incompleta quando i riferimenti ai percorsi non corrispondono più.
Usare un Rapporto di Collisione per decidere l'azione di recupero
| Risultato osservato | Causa probabile | Azione di recupero sicura |
|---|---|---|
| Il secondo file segnala “esiste già” | La destinazione confronta i nomi senza distinzione di maiuscole | Ripristinare entrambe in staging case-sensitive e rinominare in modo deterministico |
| Due cartelle sorgente appaiono come una | Una directory padre differisce solo per maiuscole | Confrontare i percorsi completi normalizzati e dividere il sottoalbero unito |
| Il ripristino si completa ma il conteggio degli oggetti è inferiore | Lo strumento ha saltato o sovrascritto un membro della collisione | Rivedere i log delle collisioni e confrontare l'inventario dei percorsi più gli hash |
| I nomi sembrano identici ma differiscono per maiuscole sono assenti | Normalizzazione Unicode o caratteri non supportati | Ispezionare i punti codice escape e normalizzare tramite staging |
| I file esistono ma un'app non riesce a trovarli | La rinomina ha rotto i riferimenti esatti ai percorsi | Aggiornare i metadati dell'applicazione, gli indici e i mount dei container |
FAQ
Una condivisione SMB può preservare entrambi File.txt e file.txt?
Solo quando il dataset sottostante, la configurazione del server SMB, il client e l'applicazione usano tutti una semantica case-sensitive compatibile. Un dataset NAS case-sensitive da solo non dimostra che ogni client SMB possa creare e indirizzare entrambi i nomi.
Ripristinare su un volume APFS case-sensitive risolve ogni conflitto?
No. Può preservare coppie che differiscono solo per maiuscole, ma la destinazione SMB successiva, il client Windows, l'applicazione, il formato di archivio o le regole di confronto Unicode possono comunque unire o rifiutare i nomi.
Perché due nomi di file visivamente identici possono comunque entrare in conflitto?
Possono usare sequenze Unicode diverse che una destinazione normalizza nella stessa forma di confronto. Ispezionare i punti codice invece di affidarsi solo a come Finder o Explorer mostrano il nome.
Conclusione finale
Le collisioni di nomi di file che differiscono solo per maiuscole si verificano perché un backup può conservare più nomi di percorso distinti di quanti ne possa rappresentare una destinazione di ripristino multipiattaforma. Interrompere al primo conflitto, ripristinare in un'area di staging compatibile, preservare ogni oggetto con nomi temporanei deterministici, registrare una mappatura e convalidare conteggi e checksum prima di importare i dati in una condivisione NAS domestica attiva.
Supporto e consigli
Altro da leggere

Plex può condividere una GPU con un altro container Docker?
Plex e un altro container possono spesso accedere alla stessa GPU, ma è necessario testare il supporto dei driver, la mappatura dei dispositivi, il...

Come capire se un errore di Plex proviene dal client o dal server
Riproduci lo stesso elemento su un altro client, confronta il percorso della sessione, quindi raccogli le prove dal server solo dopo che l’ambito ti...

Come configurare la cache di Plex e l’archiviazione temporanea per la transcodifica
Proteggi lo stato persistente di Plex collocando i file temporanei di transcodifica su un’unità locale adatta, quindi verifica la pulizia, lo spazio libero e...

