「parted」はGPTパーティションのファイルシステムタイプをどのように知ることができますか?

「parted」はGPTパーティションのファイルシステムタイプをどのように知ることができますか?

partedユーティリティは何とか私のGPTディスクパーティションからファイルシステムを検出します。

GPTディスク

パーティション1、5、6、7の場合、コードは27(隠しNTFS Win)なので、パーティションタイプコード(出力に表示されている)に基づいてこれを実行していないようです。gdiskたとえば、/dev/sda2の場合はefです。 (EFI)ですが、parted出力には他のファイルシステムが明確にリストされています。

答え1

と同様に、パーティションのデータを調べますfile -s /dev/partition。これにより、strace次の内容が表示されます。

lseek(3, 1048576, SEEK_SET) = 1048576
read(3, "\353<\220mkfs.fat\0\2\10..., 512) = 512

場所1048576(1MiBまたは2048セクタ)はパーティションテーブルの外側(最初のパーティションの先頭)であり、そこから読み取られるため、パーティションテーブル自体だけでなく他のものも調べます。

/proc/mountsまた、そこから情報を収集できるようにすることもできます。私はそれが何をしているのか見ることができませんblkid

表示されるファイルシステム情報partedはそれほど正確ではありません。上記の例はFATファイルシステムを示していますが、実際にはMD-RAID / LUKS / LVMとして使用されています。 MD-RAIDのメタデータは最初から4kなので、最初の4kの以前のFATヘッダーが残っており、次のような経験的方法を混同する可能性がありfileますparted

関連情報