RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1599971
Accepted
overxffff
overxffff
Asked:2024-11-16 22:48:25 +0000 UTC2024-11-16 22:48:25 +0000 UTC 2024-11-16 22:48:25 +0000 UTC

挂载磁盘镜像

  • 772

我有一个磁盘映像,已收到ddrescue /dev/sda image.img mapfile,它有三个分区 sda1、sda2、sda3,我如何挂载它以获得必要的文件?文件系统 sda3 - NTFS、sda1、sda2 是服务,不需要它们。

linux
  • 1 1 个回答
  • 33 Views

1 个回答

  • Voted
  1. Best Answer
    Oopss
    2024-11-17T07:51:00Z2024-11-17T07:51:00Z

    处理图像

    losetup -f -P --show ./image.img
    

    左右

    losetup --find --partscan --show ./image.img
    

    --find将强制 losetup 查找第一个空闲循环设备。--partscan然后将读取映像,识别分区,并以分区表中的偏移量创建代表它们的相应文件。 --show将输出这个

    /dev/loop0
    

    接下来挂载需要的分区

    mount /dev/loop0p3 /mnt
    

    为了检查一下,让我们制作一个图像

    创建空磁盘的镜像,例如300M
    dd if=/dev/zero of=disk.img bs=1M count=300
    

    它起作用了

    ls -l
    итого 307204
    -rw-r--r-- 1 root root 314572800 ноя 17 02:01 disk.img
    

    将空图像上传到循环设备

    losetup -f disk.img
    

    你可以看到可用的循环

    losetup -a
    /dev/loop0: [2049]:133880 (/root/test_vdisk/disk.img)
    

    我们有可用的loop0,并将使用它。

    创建分区表

    parted /dev/loop0 mklabel msdos
    

    创建三个部分

    parted -s /dev/loop0 -- mkpart primary fat32 1MiB 40MiB mkpart primary fat32 80MiB 160MiB mkpart p
    rimary ntfs 160MiB 100%
    

    创建文件系统

    mkfs.fat -F32 /dev/loop0p1
    mkfs.fat -F32 /dev/loop0p2
    mkfs.ntfs /dev/loop0p3
    The partition start sector was not specified for /dev/loop0p3 and it could not be obtained automatically.  It has been set to 0.
    The number of sectors per track was not specified for /dev/loop0p3 and it could not be obtained automatically.  It has been set to 0.
    The number of heads was not specified for /dev/loop0p3 and it could not be obtained automatically.  It has been set to 0.
    Cluster size has been automatically set to 4096 bytes.
    To boot from a device, Windows needs the 'partition start sector', the 'sectors per track' and the 'number of heads' to be set.
    Windows will not be able to boot from this device.
    Initializing device with zeroes: 100% - Done.
    Creating NTFS volume structures.
    mkntfs completed successfully. Have a nice day.
    

    它起作用了

    parted /dev/loop0 p
    Model: Loopback device (loopback)
    Disk /dev/loop0: 315MB
    Sector size (logical/physical): 512B/512B
    Partition Table: msdos
    Disk Flags:
    
    Number  Start   End     Size    Type     File system  Flags
     1      1049kB  41,9MB  40,9MB  primary  fat32        lba
     2      83,9MB  168MB   83,9MB  primary  fat32
     3      168MB   315MB   147MB   primary  ntfs
    

    系统中没有ddrescue,请安装它

    apt install gddrescue
    

    制作磁盘映像

    ddrescue /dev/loop0 image.img mapfile
    GNU ddrescue 1.23
    Press Ctrl-C to interrupt
         ipos:  314507 kB, non-trimmed:        0 B,  current rate:    139 MB/s
         opos:  314507 kB, non-scraped:        0 B,  average rate:    104 MB/s
    non-tried:        0 B,  bad-sector:        0 B,    error rate:       0 B/s
      rescued:  314572 kB,   bad areas:        0,        run time:          2s
    pct rescued:  100.00%, read errors:        0,  remaining time:         n/a
                                  time since last successful read:         n/a
    Finished
    

    现在有一个磁盘镜像image.img删除loop0

    losetup -d /dev/loop0
    

    删除原始图像disk.img(我们有image.img的副本)

    rm disk.img
    
    ls -l
    итого 307204
    -rw-r--r-- 1 root root 314572800 ноя 17 03:00 image.img
    
    losetup -f -P --show ./image.img
    lsblk /dev/loop0
    NAME      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    loop0       7:0    0  300M  0 loop
    ├─loop0p1 259:6    0   39M  0 part
    ├─loop0p2 259:7    0   80M  0 part
    └─loop0p3 259:8    0  140M  0 part
    
    mount /dev/loop0p3 /mnt
    lsblk /dev/loop0
    NAME      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    loop0       7:0    0  300M  0 loop
    ├─loop0p1 259:6    0   39M  0 part
    ├─loop0p2 259:7    0   80M  0 part
    └─loop0p3 259:8    0  140M  0 part /mnt
    
    • 1

相关问题

  • 如果 fuser -k number/tcp 没有帮助,如何在 Debian 中释放端口?

  • Ubuntu。startx 不起作用。黑屏

  • --syn 在 iptables 中有什么作用?

  • 为什么需要iso格式?

  • C程序中没有密码的sudo

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5