我正在尝试安装一个.dd
图像。我尝试了 2 种方法,但都没有成功...
方法 1
第一步:
root@evilcode1:/root# blkid qassam.dd
qassam.dd: UUID="524F4B6665E82B4E" TYPE="ntfs"
第二步:
我运行此命令将图像附加到循环设备
sudo losetup -f -P qassam.dd
第三步:
然后我运行此命令来验证是否检测到图像以及是否检测到分区:
losetup -l
第四步:
当我尝试通过此命令挂载映像时 mount /dev/loop10 q/
出现以下错误:
ntfs_mst_post_read_fixup_warn: magic: 0x00000000 size: 4096 usa_ofs: 0 usa_count: 0: Invalid argument
Actual VCN (0x0) of index buffer is different from expected VCN (0x3).
Failed to open $Secure: No such file or directory
Failed to mount '/dev/loop10': No such file or directory
方法 2
我使用kpartx -a -v qassam.dd
并收到此错误:
device-mapper: resume ioctl on loop9p1 failed: Invalid argument create/reload failed on loop9p1
device-mapper: resume ioctl on loop9p2 failed: Invalid argument create/reload failed on loop9p2
device-mapper: resume ioctl on loop9p3 failed: Invalid argument create/reload failed on loop9p3
device-mapper: resume ioctl on loop9p4 failed: Invalid argument create/reload failed on loop9p4
答案1
OP 从未告诉我们有关其文件的任何详细信息qassam.dd
,因此我们只能猜测他们为什么无法安装它。
- 也许他们忘记了提升命令
sudo
的权限mount
。 - 也许图像文件中的文件系统已损坏。
- 也许它应该直接循环安装(而不是通过losetup)。
- 也许分区表是 GPT。
- 也许 mount 命令行是错误的,OP 应该查找分区的设备图,并在 mount 命令中使用
/dev/loop10p1
或/dev/mapper/loop10p1
不使用。/dev/loop10
NTFS 分区的映像文件
分区的映像应该可以直接循环挂载,我是这样测试的,
sudo mount -o loop ntfs.img /mnt/sd1
$ echo "Hello World" > /mnt/sd1/hello.txt
$ ls -l /mnt/sd1
totalt 1
-rwxrwxrwx 1 root root 12 dec 15 23:10 hello.txt
$ cat /mnt/sd1/hello.txt
Hello World
$ losetup -l
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO LOG-SEC
/dev/loop0 0 0 1 0 /media/multimed-2/test/test0/temp/ntfs.img 0 512
sudo mount /dev/loop0 /mnt/lp1
$ sudo lsblk -fm /dev/loop0
NAME FSTYPE LABEL UUID MOUNTPOINT SIZE OWNER GROUP MODE
loop0 ntfs 3B1CD6465B1E284E /mnt/sd1 4G root disk brw-rw----
带有分区表的驱动器的映像文件
使用MSDOS分区表可以通过问题的第一种方法挂载并查看文件系统,
sudo losetup -f -P filename.img
列出结果
losetup -l
并使用
sudo mount /dev/loop0p1 /mnt/lp1
sudo mount /dev/loop0p2 /mnt/lp2
...
带有 GUID 分区表可以通过问题的第二种方法查看文件系统(但第一种方法失败),
sudo kpartx -a -v -g filename.img
使用可用的图像文件进行测试,
sudo kpartx -a -v -g Lubuntu_16.04.2_amd64_persist-live_mkusb-12.1.2_7.8GB_guid-pt.img
无法使用以下方式挂载文件系统
sudo mount /dev/loop0p1 /mnt/lp3
sudo mount /dev/loop0p2 /mnt/lp4
...
可以通过以下方式查看循环设备,lsblk
但循环设备隐藏在mapper
子目录中,可通过以下方式找到:find
$ sudo find /dev/ -name "*loop0*"
/dev/disk/by-id/dm-name-loop0p5
/dev/disk/by-id/dm-name-loop0p4
/dev/disk/by-id/dm-name-loop0p3
/dev/disk/by-id/dm-name-loop0p2
/dev/disk/by-id/dm-name-loop0p1
/dev/mapper/loop0p5
/dev/mapper/loop0p4
/dev/mapper/loop0p3
/dev/mapper/loop0p2
/dev/mapper/loop0p1
/dev/loop0
例如,可以安装它们
sudo mount /dev/mapper/loop0p1 /mnt/lp1
$ sudo lsblk -fm /dev/loop0
NAME FSTYPE LABEL UUID MOUNTPOINT SIZE OWNER GROUP MODE
loop0 7,3G root disk brw-rw----
├─loop0p1 ntfs usbdata 09BA4B4A391B6781 /mnt/lp1 1,3G root disk brw-rw----
├─loop0p2 1M root disk brw-rw----
├─loop0p3 vfat usbboot 8A41-08E7 122M root disk brw-rw----
├─loop0p4 iso9660 Lubuntu 16.04.2 LTS amd64 2017-02-15-20-52-49-00 898M root disk brw-rw----
└─loop0p5 ext4 casper-rw 5bb1ca94-c265-4317-8b87-39a5486b16b9 5G root disk brw-rw----
$ ls -l /mnt/lp1
totalt 12
-rwxrwxrwx 1 root root 3582 feb 25 2017 backup
-rwxrwxrwx 1 root root 4592 feb 25 2017 restore
测试时输出一些可用的带有 MSDOS 分区表的 img 文件:
$ losetup -l
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO LOG-SEC
/dev/loop1 0 0 0 0 /media/multimed-2/test/torios/persist/grub-n-iso/dd_ToriOS-persistent.img 0 512
/dev/loop2 0 0 0 0 /media/multimed-2/boot-usb/OneButtonInstaller/xz/dd_Lubuntu_18.04_i386_persist-live_15.7GB_casper-rw_home-rw_msdos.img 0 512
/dev/loop0 0 0 0 0 /media/multimed-2/boot-usb/OneButtonInstaller/xz/dd_Lubuntu_16.04.1-persist-live-and-installed-mkusb-11.0.5_7.8GB-msdos.img 0 512
$ sudo lsblk -fm /dev/loop[0-2]
NAME FSTYPE LABEL UUID MOUNTPOINT SIZE OWNER GROUP MODE
loop0 14,6G root disk brw-rw----
├─loop0p1 ntfs usbdata 35CF6A8A4AB6BF72 /mnt/lp1 2,2G root disk brw-rw----
├─loop0p2 1K root disk brw-rw----
├─loop0p3 vfat usbboot 2706-585F /mnt/lp2 122M root disk brw-rw----
├─loop0p4 iso9660 Lubuntu 16.04.1 LTS amd64 2016-07-20-12-16-02-00 /mnt/lp3 874M root disk brw-rw----
├─loop0p5 ext4 casper-rw e47ec6db-149d-4d30-98af-0419786ba250 /mnt/lp4 4,6G root disk brw-rw----
├─loop0p6 ext4 installed 1acf7b6f-bb3b-4d18-90ec-454f8353c84f /mnt/lp5 5,9G root disk brw-rw----
└─loop0p7 swap swap f2d7bd6e-eca9-48e8-a203-a1de2665d0e5 1023M root disk brw-rw----
loop1 792M root disk brw-rw----
├─loop1p1 vfat bootgrub C192-D34A 16M root disk brw-rw----
├─loop1p2 iso9660 torios-live 2015-06-14-16-48-49-00 725M root disk brw-rw----
└─loop1p3 ext2 live-rw a9843e51-4141-408b-975b-52d89eca1b28 50M root disk brw-rw----
loop2 14,6G root disk brw-rw----
├─loop2p1 vfat lub1804-32 D4E5-7662 64M root disk brw-rw----
├─loop2p2 ext4 isodevice 1b9f2fa2-1eab-49fa-be1c-57d38acb221f 2,2G root disk brw-rw----
├─loop2p3 ext4 casper-rw 6c49bda6-68d5-44ea-9904-22b52aee2400 5G root disk brw-rw----
└─loop2p4 ext4 home-rw 53476429-dc26-4395-b951-065b8c36060e 7,3G root disk brw-rw----