分享困扰了我很久的问题关于boot.ini的修改

由于老笔记本在光驱位加装了一个ssd,所以现在系统有2个硬盘,原先的硬盘有装了xp,然后这个新加的ssd硬盘原本是空的。用ghost把老硬盘的xp克隆到ssd硬盘上,这样就需要修改boot.ini去引导。

修改如下:

[boot loader]
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
timeout=5
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Windows XP SSD" /noexecute=optin /fastdetect
C:\GHLDR=GHOST v2014.01.14


这样写的话,每次开机默认进入rdisk(0)的分区1,也就是旧的系统

如果要想进入新硬盘的系统,就要手工选择到第3项

然后这样引导是正常的。

问题是我希望把ssd的系统作为默认项,于是改动如下

[boot loader]
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
timeout=5
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Windows XP SSD" /noexecute=optin /fastdetect
C:\GHLDR=GHOST v2014.01.14


这样改了之后重启系统,会多出一项默认项来,然后点确定,就会报错:

因以下文件的损坏或者丢失windows无法启动,windows root\system32\hal.dll

然后我就傻傻地重新拷贝hal.dll

结果还是不行,查了网上的说明,不一定是因为文件的问题,而是因为改了boot.ini的原因,导致路径出错。

所以说这个所谓的路径,真的很让人恼火,它永远不会告诉你它自己搞错了路径,它只会告诉你文件损坏和丢失。

知道了原因,可是还是不知道解决办法,难道windows不支持这种2个硬盘的情况下,默认到第二块硬盘是不行的?

于是,在一个偶然的发现下,无意之中有一个猜想,会不会跟后面的排列顺序有关,也就是说你想把默认项设置在disk(0),那么这个默认项也应该要排在前面,而现在我希望把默认项设定在disk(1),也应该要把disk(1)的启动项放到最前面。

修改成这样,结果就ok了:

[boot loader]
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
timeout=5
[operating systems]
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Windows XP SSD" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
C:\GHLDR=GHOST v2014.01.14

查了网上很多的帖子,似乎没有查到有这样处理的,也没有太多具体说明这个问题,写出来,希望能给有需要的人的帮助吧。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android 的 boot.img 和 vendor_boot.img 文件都包含了启动引导和操作系统的核心代码,它们通常存储在 Android 设备的 /boot 分区中。如果你想要拆分这些文件以进行定制化或修改,可以按照以下步骤操作: 1. 首先,你需要从设备中提取原始的 boot.img 或 vendor_boot.img 文件。你可以使用工具像 `adb pull /dev/block/boot` 或 `adb pull /dev/block/by-name/boot` 来提取这些文件。 2. 接下来,你需要安装 Android Image Kitchen 工具,这个工具可以用来解压和重新打包 Android 镜像文件,包括 boot.img 和 vendor_boot.img。 3. 执行以下命令,将 boot.img 或 vendor_boot.img 解压到指定目录中: ```bash $ mkdir unpacked-boot $ ./unpackimg.sh boot.img unpacked-boot ``` 或者 ```bash $ mkdir unpacked-vendor-boot $ ./unpackimg.sh vendor_boot.img unpacked-vendor-boot ``` 4. 解压后,你会得到一个名为 `ramdisk` 的目录,这个目录包含了启动引导需要的文件和脚本。你可以在这个目录中进行修改和定制化。 5. 如果你完成了对文件的修改,可以使用以下命令重新打包 boot.img 或 vendor_boot.img: ```bash $ ./mkbootimg.sh --kernel kernel --ramdisk ramdisk.cpio.gz -o new-boot.img ``` 或者 ```bash $ ./mkbootimg.sh --kernel kernel --ramdisk ramdisk.cpio.gz -o new-vendor-boot.img ``` 其中,`kernel` 是原始 boot.img 或 vendor_boot.img 中的内核文件,`ramdisk.cpio.gz` 是你修改后的 ramdisk 目录打包后的文件,`new-boot.img` 或 `new-vendor-boot.img` 是输出的新镜像文件。 6. 最后,将新的 boot.img 或 vendor_boot.img 上传到设备中,并使用以下命令将其刷入设备: ```bash $ fastboot flash boot new-boot.img ``` 或者 ```bash $ fastboot flash vendor_boot new-vendor-boot.img ``` 注意,这些操作可能会导致设备变砖,因此在进行这些操作之前,请务必备份重要的数据和文件,并小心谨慎。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值