web-dev-qa-db-ja.com

未知のタイプのファイルにアクセス/マウントする方法は?

2012年に、7.5GBのファイルを作成しました。

SD-card.2012.dd-bs1024-1.ec6a4994f4148912abb199505b98f01g

私の推測では、私のカメラの1つから8GBのSDカードでddを実行しました。どうして?思い出せない。

ファイル名のec6a4994f4148912abb199505b98f01gがmd5sumであることを確認したので、名前に合計を追加したときと比べて、ファイルはそのままです。

fileはそれがデータであることを報告します。

partxレポート 'パーティションテーブルの読み取りに失敗しました'。これまでpartxを使用したことはありません。

fdiskレポート '有効なパーティションテーブルが含まれていません'

Sudo losetup -f <filename>は、losetup -aによって報告されたように/ dev/loop0に配置しますが、loop0pNを作成せず、その後のmount -t <type> /dev/loop0 <mount-point>の試行は上記のように失敗します。

mount -o loop -t autoは失敗し、ファイルシステムタイプを指定する必要があると言っています。 vfatまたはntfsを指定した場合も失敗します。

続行する方法についてのアドバイスを求めています。

1
Jeff

自分でループデバイスを作成し、そこから何が入っているかを調べます。これは、次の方法で実行できます(環境を反映するようにコマンドを更新し、そうでない場合)。

未使用のループデバイスを見つける:

losetup -f

そのSDカードファイルを使用してループデバイスを作成します。

losetup /dev/loop0 /path/to/SD-card.2012.dd bs1024-1.ec6a4994f4148912abb199505b98f01g

SDカードであるため、おそらくパーティションテーブルはありませんhaveパーティションテーブルであり、ファイルシステムが直接置かれている可能性があります。これで、/dev/loop0を特別なブロックとしてアドレス指定し、その上にある可能性のあるファイルシステムの種類を確認できます。

システムでスキャン可能なファイルシステムを表示します。

blkid

ファイルシステム/パーティション構造がわかったら、それをマウントしてみてください。 YMMV、そのSDカード(LVMなど)に何か奇妙なことがあるかもしれないので。しかし、それはおそらく直接その上にあるファイルシステムです:

mount /dev/loop0 /mnt/foo
2
Spooler