无忧启动论坛

 找回密码
 注册
搜索

GRUB怎么得到(hd0)的总扇区数??

查看数: 4745 | 评论数: 11 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-5-17 00:36

正文摘要:

GRUB怎么得到(hd0)的总扇区数??

回复

快雪时晴 发表于 2013-5-17 11:33:10
GRUB文档   WRITE DD
不点 发表于 2013-5-17 11:03:39
offset 应该是 --offset,你没看你自己前面贴的 help write 图片吗?这么粗心,可是危险!!更不敢随便写盘!!

你可以拿一个虚拟机来练习,写坏了没关系。



wh5486 发表于 2013-5-17 11:01:18
本帖最后由 wh5486 于 2013-5-17 12:35 编辑

已搞定。。没带--。自己马虎了
不点 发表于 2013-5-17 10:54:47
不错,刚才看了最新代码,确实支持写入设备。不过这样更要小心了。

如果我没记错的话,dd 和 write 是仅有的支持直接写入设备的命令。

用 (hd0)+63 就是文件的表示法。你可以参看 grub 相关文档,了解什么是设备,什么是文件。

(hd0)+63 代表 (hd0) 最开头的 63 个扇区。这就是 MBR 磁道,通常不被分区占据。

如果直接用设备名 (hd0),它代表整个硬盘。一旦出错,你就有可能写到分区数据里面了,造成不可挽回的损失,比如,你的 Windows 启动不了了。

不敢随便写着玩啊!

先好好学习 grub4dos 的教程,然后再来写盘。

write offset=10000  (hd0)  abc

你的这条 write 命令,应该已经成功写入了 abc 字符串在硬盘的偏移 10000 处。这个 10000 是字节数,不是扇区数。

你自己计算一下,它在哪个扇区中。10000 / 512 = 19 多一点, 大约在第 20 个扇区,也就是扇区号为 19 的扇区中。

你用 cat --hex (hd0)19+1 就可以把这个扇区显示出来,看看里面有没有 abc 这个字符串?

我的计算也可能有错误,你自己仔细计算吧。


wh5486 发表于 2013-5-17 10:54:46
sratlf 发表于 2013-5-17 10:47
(hd0)+63 指的是hd0的第六十三个扇区   扇区总数可以看截图  红线位置

不熟悉命令的话不建议直接向硬盘 ...

复习write用法:
write [--offset=SKIP] ADDR_OR_FILE INTEGER_OR_STRING

SKIP 是一个整数,默认值是 0 。

如果 ADDR_OR_FILE 选项被指定为一个整数,那么它被作为一个内存地址对待,
并且 INTEGER_OR_STRING 选项也必须是一个整数值。整数 INTEGER_OR_STRING 将被写入(ADDR_OR_FILE 加上 SKIP 值)的地址处。
如果 ADDR_OR_FILE选项 指定的是一个设备或一个文件,那么INTEGER_OR_STRING 选项将被作为一个字符串对待,它将被写入跳过 SKIP 个字节(字节计数)的指定的设备或文件当中。

这个是在GRUB帮助中看到的..可以写的硬盘指定扇区..我试了好几次..一直不行...求指点个实例
sratlf 发表于 2013-5-17 10:47:09
wh5486 发表于 2013-5-17 10:28
求指教
谢谢不点老大指教。。
图片中最后的 OR device 是指设备吗?

(hd0)+63 指的是hd0的第六十三个扇区   扇区总数可以看截图  红线位置

不熟悉命令的话不建议直接向硬盘指定扇区写东西  没准会破坏什么

不点 发表于 2013-5-17 06:59:12
write 命令支持直接写设备吗?你的用法是从哪里学来的?

你是不是需要这样:

write  offset=10000  (hd0)+63  abc

还有一个问题,你写的偏移是 10000,这是按字节数计算的。但你读的偏移是 (hd0)9999+4 ,这可是从 9999 扇区开始的 4 个扇区了。差了很远很远。

假如你贸然写入第 10000 扇区,你的硬盘是不是想废掉?你怎么知道,你写的那个位置不是你的系统文件?你想破坏你的系统?

wh5486 发表于 2013-5-17 00:58:25
本帖最后由 wh5486 于 2013-5-17 01:02 编辑

write offset=10000 (hd0) abc
为什么无效
cat --hex (hd0)9999+4 看不到改动
grub0。4。6a 2013-4-6版本

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-9-22 20:16

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表