无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
123
返回列表 发新帖
楼主: chenandjun
打印 上一主题 下一主题

[已解决] grub4dos不支持固态硬盘吗,还是我的操作有误,机械硬盘也是只识别一个分区

    [复制链接]
18#
 楼主| 发表于 2020-9-9 19:59:45 | 只看该作者
本帖最后由 chenandjun 于 2020-9-9 20:22 编辑

老大刚才我又试了那个2G的能启动的,加--top,确实如你所说,失败了.


后又加--mem=-6291456  和--mem=-8388608还是一样蓝屏.



我的map --status数据




我的displaymem数据,老大帮看看.

汇报完毕.


回复

使用道具 举报

17#
 楼主| 发表于 2020-9-9 11:08:53 来自手机 | 只看该作者
晚上回去弄,到时再向老大汇报
回复

使用道具 举报

16#
发表于 2020-9-9 08:05:43 | 只看该作者
本帖最后由 不点 于 2020-9-9 18:34 编辑

嘿!咱就不怕它失败!咱怕的是它不失败!它失败了,咱好折腾啊。

吹牛归吹牛,问题能否解决,咱还真没把握 :-(

就把这个论坛当成是聊天室吧。咱随便聊。

既然随便聊,咱就随便说,不要太认真。

2G 克隆到 3G,用 --top 不行。这似乎暗示,--top 本来就不行。

先验证这个结论是否成立,用 2G 的映像,带有 --top 加载在高位内存,试试是否成功。


按照刚才的猜想,它同样会失败。

执行完 map 命令之后,可以执行一下

map   --status

命令,这会显示出,映像究竟加载到哪个内存地址处了。

再说明一点,--top 和 --mem 的顺序无关紧要,只需试验一种情况(比如 --mem  --top)即可,没必要两种情况( “--mem  --top” 和 “--top  --mem”)都去试验。

关于 blocklist 的输出,显示的结果 x+y 表示映像起始于扇区 x,占用 y 个扇区。这说明只有一个碎块,也就是说,是连续的,没有碎块(只有一个碎块就等于说是没有碎块)。

如果有碎块的话,会显示成这样:

x1+y1,x2+y2,x3+y3

这表示有三个碎块。多个碎块,依此类推。


补充一点


既然初步确定这是个与内存冲突有关的问题,那就用

displaymem

命令显示一下 BIOS 的内存块分布情况,这很要紧。


这条命令可以在 map 之前执行,也可以在任何其他时候执行,显示结果都是一样的。

-----------------------------------------------

假如结果和我猜的一样,即 2G 用 --top 发生了失败,那么接下来试试


map   --mem=-6291456   --top   /vhdxp/winxp.vhd   (hd0)


注意“--mem=-6291456”是连成一串的,中间不含空格;而且等号后面是个负数。


如果仍然失败,再试试 “--mem=-8388608”,仍然是负数,不过绝对值增大了。


如果这样试验侥幸能成功的话,你可以针对你的 3G 映像来做同样的试验了(3G 映像只需测试“--mem=-8388608”这一种情况)。



回复

使用道具 举报

15#
 楼主| 发表于 2020-9-9 00:18:54 | 只看该作者
本帖最后由 chenandjun 于 2020-9-9 00:21 编辑

看到老大说用blocklist列碎片,我刚才做了一下

不知道这两个数字是什么意思.
但是那个2G(属性看是1.9G)的是可以启动的.



就是显卡和蓝牙驱动装不上,我是双显卡的(intel+GT630)
回复

使用道具 举报

14#
 楼主| 发表于 2020-9-8 23:56:48 | 只看该作者
不点老大亲自回复,我很感动,晚上刚才又做了,没有成功,下面向老大汇报一下.
我创建了一个3G的固定winxp.vhd,在磁盘管理里面做的.
然后把原来的1.9G的可以启动的vhd克隆到了这个3G的vhd盘上,用的是DiskGenius


两个盘数据一样

放在d盘vhd目录下

c盘结构和menu菜单内容

启动后



按b键启动,正在加载....




然后失败


换成top在前面

一样的失败

汇报结束.
回复

使用道具 举报

13#
发表于 2020-9-8 16:21:34 | 只看该作者
楼主报告问题很详细,很有耐心。(如果是我,我可不会有这么详细。)

因此,我乐意帮忙。

你报告 RAM 镜像超过 2G 会有 7b 蓝屏。我大致能猜到原因了。

我猜,当镜像超过 2G 时,鉴于你把镜像加载在 4G 以下的内存空间,由于它超过了 2G,而在你特定的这个有毛病的主板之下,正好与你的某个 BIOS 内存发生了冲突,导致 07b 蓝屏。

解决方法是:把镜像加载在 4G 以上的高位内存,避免与 4G 以下的内存发生冲突。

在你的 map 命令中,添加 --top 参数,可以达到上述目的:

map   --mem   --top   /vhdxp/winxp.vhd   (hd0)

或者用下面这句(互换两个选项的位置)也是一样的效果:

map   --top   --mem   /vhdxp/winxp.vhd   (hd0)


回复

使用道具 举报

12#
 楼主| 发表于 2020-9-7 01:58:58 | 只看该作者
谢谢大家的关心,我重做了xp.vhd,可以了,就是我的ram镜像不能超过2G超过直接7b蓝屏,win7也是一样的
回复

使用道具 举报

11#
 楼主| 发表于 2020-8-30 23:01:26 | 只看该作者
derry 发表于 2020-8-27 02:16
我也是一直用grub4dos,grub2没精力研究,不过我win7一直是用boot.ini启动grub4dos,没把C盘引导区改grld ...

我的5750G在bios中只能认到一个硬盘
回复

使用道具 举报

10#
发表于 2020-8-27 07:41:23 | 只看该作者
俺滴可以滴
回复

使用道具 举报

9#
发表于 2020-8-27 02:16:28 | 只看该作者
本帖最后由 derry 于 2020-8-27 02:33 编辑
chenandjun 发表于 2020-8-26 00:06
我把grub4dos换成了新版本,还是一样.

我发现我这个问题去年一月份就提问过一次,有人回复说用grub2,我 ...

我也是一直用grub4dos,grub2没精力研究,不过我win7一直是用boot.ini启动grub4dos,没把C盘引导区改grldr

1.对于你把固态和机械物理换位置,应该可以不用这样做,在BIOS里就可以设置硬盘顺序呀,或者在menu.lst里用
map (hd1) (hd0)
map (hd0) (hd1)
map --hook
来对换硬盘

2.对于加载vhd块的问题,map加个--top参数会不会有用?
另外教程提到过,map不加--mem参数进行仿真,要求对应的映像文件在硬盘上一定要连续存放,用map --mem应该总是能够成功的,但要求你的内存足够大,但你16G内存应该够
map --mem --top winxp.vhd (hd0)


点评

我的5750G在bios中只能认到一个硬盘  详情 回复 发表于 2020-8-30 23:01
回复

使用道具 举报

8#
发表于 2020-8-27 01:09:39 来自手机 | 只看该作者
我的电脑cpu t3400内存2g笔记本的,奇怪的是usb启动只支持usb-hdd和微软自带,其他一概启动不了
回复

使用道具 举报

7#
发表于 2020-8-26 18:26:11 | 只看该作者
本帖最后由 不点 于 2020-8-26 18:31 编辑

报错:太多的碎片

注意,如果 VHD 是压缩文件格式,则可能会出现这个问题。

你的 map 是不带 --mem 的,就是说,你是“直接”映射为虚拟盘。在这种情况下,vhd 文件不可以是压缩格式,也就是说,不可以是 gz 、zip、lzma 之类的格式,而只能是整个磁盘(按照扇区顺序)的精确拷贝(或者叫做克隆),不可以在克隆以后,又对 vhd 文件实施任何种类的压缩操作(务必注意!)。


另外,你可以用


blocklist   /vhdxp/winxp.vhd


来列出这个文件的碎片。如果这条命令无法成功执行,那很可能就表明,你这个文件不是“平坦的、普通的”,而是“压缩的”。如果能够成功执行,它会列出碎片的详情。




回复

使用道具 举报

6#
发表于 2020-8-26 10:28:32 | 只看该作者
chenandjun 发表于 2020-8-26 00:06
我把grub4dos换成了新版本,还是一样.

我发现我这个问题去年一月份就提问过一次,有人回复说用grub2,我 ...

       ssd上面,用碎片整理软件是没有什么用处的,比如你用的wincontig,一般地来说碎片整理只对机械硬盘有效,ssd因为存在逻辑转换电路,中间隔了一层,不一定有效的。

你把ssd那个分区格式化或者全盘格式化一次,应该就可以了。
回复

使用道具 举报

5#
 楼主| 发表于 2020-8-26 00:06:23 | 只看该作者
本帖最后由 chenandjun 于 2020-8-26 00:09 编辑

我把grub4dos换成了新版本,还是一样.

我发现我这个问题去年一月份就提问过一次,有人回复说用grub2,我搜了百度一下,感觉太复杂了,不是拷一个文件放根目录下加个引导就完事的事情,对于我这种小白来说,太难了。
刚刚把固态硬盘装到原机械硬盘的位置,把机械硬盘放在光驱硬盘架上插在光驱位,命令可以用了.去年没放主硬盘位置是有两个卡子顶住了,装不上去,刚才狠心把它敲掉了。








现在命令可以用了,但是map vxd时又说什么块多,我用WinContig64整理说没有碎片啊

现在怎么弄

点评

我也是一直用grub4dos,grub2没精力研究,不过我win7一直是用boot.ini启动grub4dos,没把C盘引导区改grldr 1.对于你把固态和机械物理换位置,应该可以不用这样做,在BIOS里就可以设置硬盘顺序呀,或者在menu.lst  详情 回复 发表于 2020-8-27 02:16
真佩服您的坚持!居然能成功!这可以供别人参考借鉴。剩下的都是小问题,看到 liuzhaoyzz 版主在答复,应该可以解决这些问题。  发表于 2020-8-26 18:15
ssd上面,用碎片整理软件是没有什么用处的,比如你用的wincontig,一般地来说碎片整理只对机械硬盘有效,ssd因为存在逻辑转换电路,中间隔了一层,不一定有效的。 你把ssd那个分区格式化或者全盘格式化一  详情 回复 发表于 2020-8-26 10:28
回复

使用道具 举报

4#
发表于 2020-8-25 08:31:33 | 只看该作者
你有两个问题:

1、你自己的问题:你在使用 7 年前老掉牙的 grub4dos。
2、你的主板 BIOS 有缺陷,不支持访问大的扇区号,说得通俗一点,你的主板 BIOS 不支持访问盘的靠后部分,只能访问开头的一小部分。甚至你的主板 BIOS 完全不支持访问某个盘(比如固态硬盘)。在目前 grub4dos 的框架下,不可能解决此问题,因为 grub4dos 完全依赖主板 BIOS。

建议 1:修改你的菜单,不让它访问靠后的分区,这样还可以凑合着继续使用 grub4dos。
建议 2:也可考虑改用 UEFI 的启动方案(grub2),放弃 grub4dos。
回复

使用道具 举报

3#
发表于 2020-8-25 00:57:30 | 只看该作者
换新版的试试,你的版本太旧了
回复

使用道具 举报

2#
发表于 2020-8-24 23:24:50 | 只看该作者
早该换Grub2了,非常的强大
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-20 11:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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