Meu problema é decodificar a saída do comando file -s /dev/sdX
no meu sistema (onde /dev/sdX
está o arquivo de dispositivo associado a uma chave USB).
Abaixo, mostrarei a saída do comando file -s /dev/sdX
em que o arquivo de dispositivo /dev/sda1
é uma partição formatada com um FAT32
sistema de arquivos, enquanto o dispositivo /dev/sdb
é uma partição formatada com um NTFS
sistema de arquivos.
Saída de file
comando para um FAT32
sistema de arquivos
No caso do FAT32
sistema de arquivos, a saída do file
comando é:
> file -s /dev/sda1
/dev/sda1: DOS/MBR boot sector, code offset 0x58+2, OEM-ID "mkfs.fat", sectors/cluster 8, Media descriptor 0xf8, sectors/track 62, heads 31, hidden sectors 2048, sectors 1966080 (volumes > 32 MB), FAT (32 bit), sectors/FAT 1920, reserved 0x1, serial number 0x4ba3ff5b, unlabeled
Na saída está presente a informação , FAT (32 bit), sectors/FAT 1920,
que poderia ser suficiente para dizer que o tipo de sistema de arquivos é FAT32, mas no próximo parágrafo mostrarei que a string FAT
também está presente na saída do file
comando no caso de um NTFS
sistema de arquivos.
Saída de file
comando para um NTFS
sistema de arquivos
No caso de um NTFS
sistema de arquivos, a saída do file
comando é:
> file -s /dev/sdb
/dev/sdb: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 63, heads 255, dos < 4.0 BootSector (0x0), FAT (1Y bit by descriptor); NTFS, sectors/track 63, physical drive 0x80, sectors 15654911, $MFT start cluster 786432, $MFTMirror start cluster 2, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number 030fcd5a9fcd56a1c; contains bootstrap BOOTMGR
Nesta saída está presente a informação, ; NTFS,
mas também está presente a string FAT
.
A questão
A partir das saídas anteriores do file -s
comando, como determinar o sistema de arquivos das duas partições com certeza?
EDITAR
Adiciono a saída do file -s
comando para uma exfat
partição e para uma ext4
partição.
Saída de file
paraexfat
> file -s /dev/sdf
/dev/sdf: DOS/MBR boot sector
Neste caso exfat
não está presente na saída.
Saída de file
paraext4
file -s /dev/sdb1
/dev/sdb1: Linux rev 1.0 ext4 filesystem data, UUID=38bc3d5b-381e-4f19-8640-c77d9483882b (needs journal recovery) (extents) (64bit) (large files) (huge files)
Neste caso está presente a informação ext4 filesystem data,
.
Nestes 4 exemplos (FAT32, NTFS, EXFAT, EXT4), a saída do file
comando parece muito diferente para diferentes tipos de sistema de arquivos, por isso é difícil encontrar uma regra simples para decidir o tipo de sistema de arquivos por essa saída.