首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否有可能将现场图像烧到受损的吊坠上?

是否有可能将现场图像烧到受损的吊坠上?
EN

Unix & Linux用户
提问于 2015-06-10 19:08:29
回答 1查看 84关注 0票数 1

我有一个16G的吊坠,有一些不好的积木:

代码语言:javascript
运行
复制
# f3read /media/morfik/224e0447-1b26-4c3e-a691-5bf1db650d21
                  SECTORS      ok/corrupted/changed/overwritten
Validating file 1.h2w ... 2097112/       40/      0/      0
Validating file 2.h2w ... 2097120/       32/      0/      0
Validating file 3.h2w ... 2097098/       54/      0/      0
Validating file 4.h2w ... 2097148/        4/      0/      0
Validating file 5.h2w ... 2097114/       38/      0/      0
Validating file 6.h2w ... 2097152/        0/      0/      0
Validating file 7.h2w ... 2097152/        0/      0/      0
Validating file 8.h2w ... 2097152/        0/      0/      0
Validating file 9.h2w ... 2097152/        0/      0/      0
Validating file 10.h2w ... 2097152/        0/      0/      0
Validating file 11.h2w ... 2097152/        0/      0/      0
Validating file 12.h2w ... 2097152/        0/      0/      0
Validating file 13.h2w ... 2097152/        0/      0/      0
Validating file 14.h2w ... 2097152/        0/      0/      0
Validating file 15.h2w ...   90664/        0/      0/      0

  Data OK: 14.05 GB (29450624 sectors)
Data LOST: 84.00 KB (168 sectors)
             Corrupted: 84.00 KB (168 sectors)
      Slightly changed: 0.00 Byte (0 sectors)
           Overwritten: 0.00 Byte (0 sectors)
Average reading speed: 18.77 MB/s

正如你所看到的,只有最初的五个演出有损坏的部门。其余的都没问题。问题是,当我试图烧掉一个活的图像到这个吊坠,动作停止后,转移50米。

有没有一种方法可以跳过5G从一开始,并将图像后,受损的空间,以便它可以启动没有问题?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2015-06-10 20:50:28

我设法解决了这个问题,但我仍然怀疑是否有一个更好更容易的解决方案。

无论如何,如果设备开头有坏块,并且无法刻录实时映像,则应该创建两个分区:

然后下载一个图像并检查其第一个分区的偏移量:

代码语言:javascript
运行
复制
# parted  /home/morfik/Desktop/debian-live-8.1.0-amd64-mate-desktop.iso
(parted) unit s

(parted) print
Model:  (file)
Disk /home/morfik/Desktop/debian-live-8.1.0-amd64-mate-desktop.iso: 2015232s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start  End       Size      Type     File system  Flags
 1      64s    2015231s  2015168s  primary               boot, hidden

所以它是64个部门,这意味着64*512=32768bytes。现在我们可以挂载这个映像了:

代码语言:javascript
运行
复制
# mount -o loop,offset=32768 /home/morfik/Desktop/debian-live-8.1.0-amd64-mate-desktop.iso /mnt
 mount: /dev/loop0 is write-protected, mounting read-only

# ls -al /mnt
total 593K
dr-xr-xr-x  1 root root 2.0K 2015-06-06 16:09:57 ./
drwxr-xr-x 24 root root 4.0K 2015-06-08 20:54:43 ../
dr-xr-xr-x  1 root root 2.0K 2015-06-06 16:08:34 .disk/
dr-xr-xr-x  1 root root 2.0K 2015-06-06 15:59:10 dists/
dr-xr-xr-x  1 root root 2.0K 2015-06-06 16:09:41 install/
dr-xr-xr-x  1 root root 2.0K 2015-06-06 16:08:29 isolinux/
dr-xr-xr-x  1 root root 2.0K 2015-06-06 16:08:29 live/
dr-xr-xr-x  1 root root 2.0K 2015-06-06 15:59:00 pool/
dr-xr-xr-x  1 root root 2.0K 2015-06-06 16:09:37 tools/
-r--r--r--  1 root root  133 2015-06-06 16:09:44 autorun.inf
lr-xr-xr-x  1 root root    1 2015-06-06 15:59:10 debian -> ./
-r--r--r--  1 root root 177K 2015-06-06 16:09:44 g2ldr
-r--r--r--  1 root root 8.0K 2015-06-06 16:09:44 g2ldr.mbr
-r--r--r--  1 root root  28K 2015-06-06 16:09:57 md5sum.txt
-r--r--r--  1 root root 360K 2015-06-06 16:09:44 setup.exe
-r--r--r--  1 root root  228 2015-06-06 16:09:44 win32-loader.ini

我们可以访问这些文件,以便将它们复制到prendrive的第二个分区:

代码语言:javascript
运行
复制
# cp -a /mnt/* /media/morfik/good

下面的命令将第二个分区硬编码到MBR中,以便从它启动:

代码语言:javascript
运行
复制
printf '\x2' | cat /usr/lib/SYSLINUX/altmbr.bin - | dd bs=440 count=1 iflag=fullblock conv=notrunc of=/dev/sdb

我在第二个分区上使用了ext4文件系统,所以我必须使用extlinux,但是映像中有isolinux。我不需要删除这个文件夹,我可以更改它的名称:

代码语言:javascript
运行
复制
# mv isolinux extlinux

我对该文件夹中的配置文件也做了同样的事情:

代码语言:javascript
运行
复制
# mv isolinux.cfg extlinux.conf

我不确定这个步骤是否必要,但我总是复制所有文件:

代码语言:javascript
运行
复制
# cp /usr/lib/syslinux/modules/bios/* /media/morfik/good/extlinux/

最后一件事是在第二个分区上安装extlinux的VBR:

代码语言:javascript
运行
复制
# extlinux -i /media/morfik/good/extlinux/
/media/morfik/good/extlinux/ is device /dev/sdb2 

差不多就是这样了。我测试了图像,它启动和现场系统运行良好。这个解决方案应该适用于所有类型的实时图像。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/208803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档