GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso scoprire dove si trova fisicamente un file sul disco (numeri di blocco)?

Puoi usare FIBMAP ioctl, come esemplificato qui, o usare hdparm:

/ $ sudo /sbin/hdparm --fibmap /etc/X11/xorg.conf

/etc/X11/xorg.conf:
 filesystem blocksize 4096, begins at LBA 0; assuming 512 byte sectors.
 byte_offset  begin_LBA    end_LBA    sectors
           0    1579088    1579095          8

Potresti usare debugfs per questo:

debugfs -R "stat ~/myfile" /dev/hda1

Cambia l'unità disco/partizione di conseguenza e assicurati che l'unità sia smontata. Otterrai un elenco con tutti i blocchi utilizzati:

BLOCKS:
(0):1643532
TOTAL: 1

Questo thread potrebbe darti alcune informazioni sull'algoritmo di posizionamento dei file ext4.

debugfs ha un bmap function, che sembra fornire i dati desiderati. Dovresti essere in grado di assegnargli blocchi consecutivi di un file e ottenere i numeri dei blocchi fisici.


Linux
  1. Come scoprire dove si trova il cestino di Firefox?

  2. Come posso trovare tutte le estensioni di file distinte in una gerarchia di cartelle?

  3. Come posso creare un file in ogni cartella?

  4. Come posso modificare tutti i file restituiti da find in vi in ​​Linux?

  5. Come trovare il file manager predefinito?

Come faccio a sapere dove è ospitato il mio sito web?

Come posso scoprire il tipo MIME di un file (Content-Type)?

Come trovo la posizione MySQL my.cnf

Come posso elencare i blocchi di dati di un file su Linux?

Come scoprire la fonte di un segnale POSIX

Usando bash, come posso scoprire la media, il massimo e il minimo da un elenco di numeri?