«Не удалось прочитать последний сектор» при попытке монтирования файла DD

«Не удалось прочитать последний сектор» при попытке монтирования файла DD

У меня есть файл .dd, и я хочу проверить, что внутри. Во многих руководствах предлагается Disk Image Mounter, но такой опции не существует.

Поэтому я попробовал классический способ:

mkdir /mnt/image

и

sudo mount -o loop /home/name/Downloads/usb_content.dd

Но вместо этого возьмите это

Failed to read last sector (129022): Invalid argument
HINTS: Either the volume is a RAID/LDM but it wasn't setup yet,
   or it was not setup correctly (e.g. by not using mdadm --build ...),
   or a wrong device is tried to be mounted,
   or the partition table is corrupt (partition is smaller than NTFS),
   or the NTFS boot sector is corrupt (NTFS size is not valid).
Failed to mount '/dev/loop42': Invalid argument
The device '/dev/loop42' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?

Как правильно смонтировать образ dd?

Редактировать:

sudo fdisk --list /home/name/Downloads/usb_content.dd

дает:

Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x73736572

Device                                     Boot      Start        End    Sectors   Size Id Type
/home/name/Downloads/usb_content.dd1      1920221984 3736432267 1816210284   866G 72 unknown
/home/name/Downloads/usb_content.dd2      1936028192 3889681299 1953653108 931,6G 6c unknown
/home/name/Downloads/usb_content.dd3               0          0          0     0B  0 Empty
/home/name/Downloads/usb_content.dd4        27722122   27722568        447 223,5K  0 Empty

Partition table entries are not in disk order.

решение1

Кажется, в вашем файле образа есть четыре раздела. Если хотя бы один раздел имеет файловую систему, с которой Ubuntu может работать, вы можете попробовать смонтировать раздел, выполнив следующие шаги.

  • Установитьkpartx

    sudo apt install kpartx
    
  • Используется kpartxдля сопоставления содержимого файла изображения с устройствами цикла.

    sudo kpartx -av /home/name/Downloads/usb_content.dd
    
  • Вы должны найти сопоставленные петлевые устройства с

    ls /dev/mapper/loop*
    
  • Используйте lsblkдля просмотра отображенного содержимого

    lsblk -o name,size,fstype,label,mountpoint /dev/loopN
    

    где N— число (0, если ранее не было устройств loop, в противном случае — первое незанятое число, например, 7, в зависимости от количества уже сопоставленных устройств loop). В моем случае (без каких-либо защелок) N = 0так /dev/loop0.

  • Теперь, lsblkдолжен сказать вам, есть ли какая-то файловая система, и если это так, вы можете создать точки монтирования и монтировать [файловые системы] с помощью

    sudo mkdir /mnt/lp1  # create mountpoint only once
    sudo mkdir /mnt/lp2  # create mountpoint only once
    ...
    
    sudo mount /dev/mapper/loopNp1 /mnt/lp1
    sudo mount /dev/mapper/loopNp2 /mnt/lp2
    ...
    

    где Nнаходится число, которое вы определили ранее (в моем случае 0).

  • Теперь вы можете прочитать содержимое смонтированных файловых систем по адресу /mnt/lp1 /mnt/lp2 ...

  • Наконец, вы можете захотеть размонтировать файловые системы и удалить сопоставление,

    sudo umount /mnt/lp*
    
    sudo kpartx -d /home/name/Downloads/usb_content.dd
    

Связанный контент