Quando chown e chmod sembrano non avere alcun effetto su un'unità USB, identifica innanzitutto il filesystem. La risposta della community originale ipotizzava NTFS o exFAT, una spiegazione ragionevole perché questi filesystem non si comportano come ext4/Btrfs per quanto riguarda la gestione nativa della proprietà Unix e dei bit dei permessi.
La fonte non indica quale filesystem abbia effettivamente utilizzato MikeFrizz e l'autore del post originale non è mai tornato per confermare il risultato. Pertanto, questa deve rimanere una guida alla risoluzione dei problemi consapevole del filesystem, non un'affermazione secondo cui ogni unità USB ZimaOS ignora i permessi.
Identifica il filesystem USB prima di modificare i permessi
Controlla il formato del disco in Archiviazione di ZimaOS oppure con un comando di sola lettura come:
lsblk -f
Le versioni attuali di ZimaOS supportano l'accesso in lettura e scrittura a NTFS, exFAT, ext4 e Btrfs, tra gli altri formati, ma “supportato in lettura e scrittura” non significa che tutti i filesystem mantengano i metadati Unix UID/GID/modalità nello stesso modo.
Consulta la matrice aggiornata dei formati disco supportati.
NTFS ed exFAT presentano comunemente i permessi tramite le opzioni di montaggio
Su Linux, exFAT e molte configurazioni di montaggio NTFS presentano i file con valori di proprietà/modalità derivati dalle opzioni di montaggio, invece di memorizzare le modifiche ai permessi POSIX ordinarie esattamente come ext4. Di conseguenza, chown o chmod possono sembrare inefficaci oppure annullarsi dopo un nuovo montaggio.
Questo non significa che l'unità sia di sola lettura o danneggiata.
Un filesystem Linux offre a Docker permessi POSIX più prevedibili
Se il disco USB è dedicato a ZimaOS/Linux e ti serve un controllo reale su UID/GID/modalità, ext4 o Btrfs sono una scelta più naturale. La riformattazione è distruttiva, quindi copia i dati altrove prima di cambiare filesystem.
Evita di usare un link simbolico dell'host come metodo principale per migrare l'archiviazione di Docker
L'utente della fonte ha copiato i dati di Immich su USB e creato un link simbolico dalla vecchia posizione. I container non seguono automaticamente i link simbolici dell'host che puntano al di fuori dello spazio dei nomi dei volumi montati. Il link simbolico potrebbe puntare a un percorso che il container non riesce a vedere.
Un montaggio bind/volume diretto è più chiaro e più facile da verificare.
Mappa direttamente la cartella USB in Immich
Anziché mantenere un vecchio percorso dell'host e reindirizzarlo con un link simbolico, modifica il volume dell'app/container Immich in modo che la cartella USB reale sia montata nel percorso del container previsto da Immich.
La documentazione aggiornata di IceWhale spiega che il percorso dell'host può essere modificato senza cambiare quello interno al container.
Consulta il modello aggiornato dei percorsi dei volumi Docker di ZimaOS.
Non spostare alla cieca tutti i componenti di Immich su uno spazio di archiviazione USB arbitrario
Le librerie multimediali e lo spazio di archiviazione dei caricamenti di Immich hanno requisiti diversi rispetto al database PostgreSQL e allo stato dell'applicazione. Prima di spostare le directory, identifica esattamente quale volume dell'host viene trasferito e segui le indicazioni aggiornate di Immich per la distribuzione e la migrazione.
Non spostare una directory di database attiva tramite un link simbolico mentre i container sono in esecuzione.
Correggi la mappatura prima di ricorrere a un ampio chmod 777
Se il container non riesce a vedere la cartella corretta dell'host, modificare i permessi non risolverà il problema del percorso. Verifica prima il montaggio, quindi assegna solo l'accesso minimo a utente/gruppo necessario al container.
Domande frequenti sui permessi USB
ZimaOS supporta la lettura e la scrittura su NTFS ed exFAT?
Sì, la documentazione aggiornata di IceWhale indica entrambi come supportati in lettura e scrittura.
Perché chmod/chown possono comunque comportarsi diversamente?
Questi filesystem non utilizzano la semantica nativa Linux della proprietà e delle modalità POSIX nello stesso modo di ext4 o Btrfs.
Il filesystem dell'utente della fonte e la soluzione finale sono stati confermati?
No. Il filesystem è stato dedotto da una risposta della community e l'autore del post originale non ha riferito alcun risultato.
