ほとんどのUSBスティックはPCパーティションフォーマットを使用し、単一のパーティションを持っています。つまり、ディスクの最初のセクター(512バイト)にはパーティションテーブル(およびオプションでブートローダー)が含まれ、残りのディスクにはパーティションが含まれます。
パーティションだけを救助することもできます
ddrescue -f -n /dev/sda1 /dev/sdb8 logfile
ddrescue -d -f -r3 /dev/sda1 /dev/sdb8 logfile
しかし、ディスク全体が揃ったので、パーティションを取得できます。
losetup -o 512 /dev/loop0 /dev/sdb8
mount -r /dev/loop0 /mnt
/dev/loop0
が既に使用されている場合は、別の番号を選択する必要があります。このコマンドlosetup -f
は、フリーループデバイスの番号を返します。
ただし、稼働中のシステムでパーティションを操作するとエラーが発生しやすいため、これを行うのではなく、USBスティックから通常のファイルにデータを移動することをお勧めします。ディスク全体をコピーlosetup
し、ディスクイメージで使用します(16M×130はUSBスティックのサイズよりも大きいと計算されます):
dd bs=16M count=130 </dev/sdb8 >/var/tmp/usb-stick.disk
または、パーティションだけをコピーして、パーティションイメージを直接マウントします。
tail -c +513 </dev/sdb8 | dd bs=16M count=130 >/var/tmp/usb-stick.partition
mount -o loop,ro /var/tmp/usb-stick.partition /mnt
また、将来の参照のためddrescue
に、最初に出力パーティションではなく出力ファイルを渡すこともできます。