2010-12-28 13 views
24

So che FAT32, così come FAT16/12 non supportano collegamenti simbolicihard-links. Tuttavia mi è venuta in mente questa idea:Link al filesystem su una memoria formattata FAT32

La specifica FAT descrive che ogni file è associato a una voce di directory. Nella mia comprensione, si potrebbe dire che una voce di file in una directory in qualche modo o altri punti al contenuto del file.

Quindi, come posso definire due voci di directory che puntano allo stesso contenuto di file? Oppure, cosa potrebbe impedirmi di farlo?

Caso di utilizzo: Possiedo un dispositivo di archiviazione di massa USB per la mia autoradio e desidero utilizzare le directory come playlist poiché il software della radio non supporta le playlist. Quindi non è importante per me come si comporta Windows quando si fa questo.

+0

Qual è il caso d'uso? Perché sei bloccato usando un file system FAT32? Quale sistema supporterà solo FAT32, ma comprende i collegamenti simbolici? –

+0

Sto spiegando questo nel mio commento sulla risposta 1 – fishbone

+4

Hai fatto ulteriori progressi sui tuoi test? Sto cercando di fare esattamente la stessa cosa per l'interfaccia USB della mia auto, solo che voglio scrivere una semplice GUI per fare il lavoro piuttosto che usare un editor esadecimale. Mandami una mail se sei ancora interessato a questo progetto (rimuovi tutti i caratteri di sottolineatura): crush_meguy a yah_oo dot com. –

risposta

4

Quello di cui si sta parlando ("due voci di directory che puntano allo stesso contenuto di file") sono collegamenti reali. chkdsk le segnalerà come collegamenti incrociati e li interromperà, "riparando" i file (di fatto facendo le copie).

+0

In realtà voglio farlo su un dispositivo USB per l'utilizzo con la mia autoradio. La mia idea è di falsificare le playlist poiché non sono supportate dal dispositivo. Potrei immaginare che i produttori stiano usando driver forniti - pensi che quei driver implementino un comportamento simile a chkdsk? Sai come sta gestendo Linux? Conosci un buon strumento per giocare con questa idea? Al momento sto usando un editor esadecimale. – fishbone

+0

@fishbone Si può solo immaginare come si comporta il driver specifico su un dispositivo specifico. Alcuni driver potrebbero avere chkdsk integrato ma dubito che includeranno la funzionalità "fix" lì. Tuttavia, possono rifiutarsi di riprodurre i media "corrotti". Nota che per chiarire le domande è meglio modificare la domanda originale piuttosto che aggiungere commenti: ciò aggiunge leggibilità alla domanda e attira immediatamente l'attenzione di coloro che leggono le domande. –

+1

Il motivo per cui non mi piace modificare le domande è che le risposte corrette diventeranno sbagliate. Ho scritto il commento, poiché pensavo che chkdsk fosse un programma solo per Windows, ma non ho mai detto che userò Windows. – fishbone

5

Questo dovrebbe funzionare per problemi semplici. Cioè funziona come un hack/soluzione alternativa e non so cosa succede se si rinomina/sposta/rimuovi file. Quindi, non dovresti farlo sul tuo hdd principale.

Ho modificato manualmente le voci della rubrica utilizzando un editor esadecimale. Ho modificato i cluster e le dimensioni dei file e ho falsificato con successo i collegamenti. La mia auto-radio e persino Windows (7, 64 bit) non hanno problemi con la riproduzione dei file mp3 originali e "hard-link" che ho usato.

Quando sto aprendo di nuovo il dispositivo in hex-editor di nessuno dei miei modifiche sono cambiato di nuovo (vedi problema chkdsk in risposta # 1 - ma per quanto ne so chkdsk deve essere avviato manualmente, in ogni modo

.
+0

Come si apre la tabella delle assegnazioni in un editor, per favore? –

+0

bisogno di istruzioni più dettagliate su come modificare manualmente le voci di directory (o un esempio) – eadmaster

1

MichaelPh postato le istruzioni su SuperUser:

https://superuser.com/a/486829/51237

E 'possibile utilizzare Disk Probe (su XP, devo ancora farlo scrivere le modifiche su Win7) per modificare il cluster una FAT Riferimenti di directory. Questo metodo può essere utilizzato per reindirizzare DCIM fol der (o una sottocartella) per puntare alla cartella utilizzata da un altro dispositivo di scansione.

Se questa è una buona idea o meno è una questione diversa e lo si utilizza a proprio rischio.

  1. Inserire la scheda Eye-Fi sia nel suo lettore di schede USB o direttamente in uno slot SSD e annotare la lettera dell'unità è installato come (presume essere F: \ per semplicità)
  2. Assicurarsi che tutti i Windows Explorer di Windows per la scheda e le sottodirectory sono chiuse.
  3. Eseguire Disk Probe
  4. Selezionare Drives-> Logical Volume
  5. Nella finestra di dialogo Apri Logical Volume doppio clic su F: \ nella lista Volumi Logical
  6. Fare clic sul pulsante Imposta attivo per maniglia F: è stata selezionato come Puoi lasciare l'handle come di sola lettura per ora.
  7. Seleziona Strumenti-> Cerca settori ...
  8. Controlla Ricerca completa, inserisci DCIM in Inserire caratteri da cercare e Cerca
  9. Si dovrebbe trovare una corrispondenza (la mia è a 8192). Selezionare No nella finestra di dialogo "Trova corrispondenza ..." per annullare il resto della ricerca.
  10. Seleziona settori-> Leggi e aumenta Numero di settori su almeno due in modo che l'intera tabella di directory sia inclusa.
  11. Trova DCIM in ASCII a destra della schermata Disk Probe, questo è l'inizio della voce FAT per la directory. Prendere nota del valore esadecimale del 27 ° byte del record (ogni voce è 32 byte), questo è il riferimento del cluster di directory. Questo valore è necessario per ripristinare la directory DCIM in uso normale, se necessario.
  12. Trovare la voce per la directory in cui si desidera reindirizzare DCIM e prendere nuovamente nota del 27 ° byte nel record.
  13. Tornare al 27 ° byte del record DCIM e modificarlo al valore annotato nel passaggio 11.
  14. Selezionare Settori-> Scrivi e quindi fare clic su Scrivilo nella finestra di dialogo Scrivi settore. Verrà visualizzato un avviso se hai aperto i settori in sola lettura. Sì per sovrascrivere se sei felice di apportare la modifica.

L'apertura della directory DCIM in Esplora risorse mostrerà ora il contenuto della directory di destinazione.

Problemi correlati