无忧启动论坛

标题: 关于利用GRUB制作DOS安装包的问题 [打印本页]

作者: laba72    时间: 2007-12-18 09:31
标题: 关于利用GRUB制作DOS安装包的问题
各位大大:
     小弟想请教一个问题,我也想模仿矮人DOS做一个DOS工具包,在WIN下安装,这样就不需要一个一个去复制GRUB的文件,为了达到这个目的,我用innosetup软件把GRUB所需要的全部文件重新编译了一下,也取得了初步成功,但是有2个问题一直没解决,麻烦大家帮帮忙:
1,BOOT.INI文件默认是隐藏的,可是我重新编译安装成功后BOOT。INI的属性成非隐藏的了,这个怎么解决?
2,还是这个BOOT。INI默认是只读的,重新编译后安装时提示要覆盖原来的BOOT。INI,可是原来的BOOT。INI是只读的,编译后的BOOT。INI是非只读,于是安装过程中就提示“忽略,重试,放弃”,这个提示我不想让它出现怎么办?
有知道innosetup使用的麻烦告诉以下
作者: 阿非    时间: 2007-12-18 09:35
用rar或者7z打包即可,还要innosetup干嘛啊
作者: 无优处男    时间: 2007-12-18 09:35
问题怎么好像是问的INNO的使用,而不是GRUB了……
作者: laba72    时间: 2007-12-18 09:58
阿非哥,用RAR或者7z打包,能解决我的2个问题吗?
作者: 阿非    时间: 2007-12-18 10:04
原帖由 laba72 于 2007-12-18 09:58 AM 发表
阿非哥,用RAR或者7z打包,能解决我的2个问题吗?

当然能了,用rar压缩为自解压格式即可。
根据你说的样子,boot.ini是提前编辑好了(这种方式通用性就差了,例如多系统,系统没有安装在第一分区.....),那就把他先隐藏,再打包
rar创建自解压格式,你用鼠标划拉几下就看懂了
作者: 无优处男    时间: 2007-12-18 10:09
自解压的BOOT。INI不通用,小心了
作者: laba72    时间: 2007-12-18 10:16
感谢二位的热心回答,我也知道用直接覆盖BOOT。INI通用性不好,不过,我使用自己的这个东东只是为了自己方便,一般不给其他人使用,更不会发布,所以安装之前我会先看看系统情况的。
不过二位的提醒也激励我搞一个通用性强的安装包出来,曾经也使用过雨林木风的一个类似的安装包,我看他采用的是在BOOT。INI总中加入启动项的方式做的,不过不知道是怎么实现的,二位知道不?
作者: 阿非    时间: 2007-12-18 10:18
可以用批处理添加boot.ini
  1. ATTRIB -S -H -R C:\BOOT.INI
  2. Echo C:\XXX="****">>C:\BOOT.INI
  3. ATTRIB +S +H +R C:\BOOT.INI
复制代码

[ 本帖最后由 阿非 于 2007-12-18 10:20 AM 编辑 ]
作者: lianjiang    时间: 2007-12-18 10:20
如何添加项目,本论坛该能找出不少此类帖子。慢慢看吧。说不定有意外收获。呵呵。
作者: laba72    时间: 2007-12-18 10:20
哦,原来,阿非哥真是厉害,谢谢了,我晚上回去试试!
晚上回去把NTLDR的名字也改了,这样通用性会强一些了!
到时遇到问题,还请阿非哥帮帮忙,再次表示感谢!
作者: 阿非    时间: 2007-12-18 10:23
楼上的处男和lianjiang才是厉害呢。偶只是照抄
作者: laba72    时间: 2007-12-18 10:23
lianjiang 大哥真是很热心,已经回答我2个问题了,我也就提了2个问题 :)
好的,我搜一下看看
还感谢大哥上次给的GRUB教程,我看了基本都明白了,比论坛的的帖子更好理解一些,很适合新手!一看就懂!
作者: lianjiang    时间: 2007-12-18 10:23
阿飞哥的办法是简单,不过要小心多次安装后,里面会出来重复项。写入前最好判断一下子才好。
作者: laba72    时间: 2007-12-18 10:26
ATTRIB -S -H -R C:\BOOT.INI
Echo C:\XXX="****">>C:\BOOT.INI
ATTRIB +S +H +R C:\BOOT.INI
写入前最好判断一下子才好。

怎么判断呢?lianjiang 大哥有这样的教程没?我对批处理不是很熟,谢谢了!

无优论坛的大虾们都蛮热心的,好地方,我以后要长来学习!
作者: 无优处男    时间: 2007-12-18 10:27
原帖由 laba72 于 2007-12-18 10:20 AM 发表
哦,原来,阿非哥真是厉害,谢谢了,我晚上回去试试!
晚上回去把NTLDR的名字也改了,这样通用性会强一些了!
到时遇到问题,还请阿非哥帮帮忙,再次表示感谢!


遇到问题有请阿非哥,找到处女,别忘了偶
作者: laba72    时间: 2007-12-18 10:28
第一次知道ECHO还有这个功能,真不错!
看来要饿补以下DOS和批处理了
作者: hytmtet    时间: 2007-12-18 10:31
原帖由 laba72 于 2007-12-18 10:23 AM 发表
lianjiang 大哥真是很热心,已经回答我2个问题了,我也就提了2个问题 :)
好的,我搜一下看看
还感谢大哥上次给的GRUB教程,我看了基本都明白了,比论坛的的帖子更好理解一些,很适合新手!一看就懂!

我觉得用批处理来安装多好
能处理文件属性
也能备份原来的文件
还能用定向输出添加启动项
就是界面不太美观而已罢了。。。
这是我自己做的一个用于安装的批处理
启动方式不一样,这个是写MBR的
发上来看能有用不
一键完成安装.rar (1.8 KB, 下载次数: 84)
作者: laba72    时间: 2007-12-18 10:36
处男大哥这么厉害,怎么会忘记呢!以后肯定还有很多问题麻烦你的 :)

各位大哥有没有QQ群或者QQ号码,发上来,小弟加一下如何?

hytmtet 的一键完成安装.rar我已经下了,谢谢,晚上回去好好研究研究!
作者: lianjiang    时间: 2007-12-18 10:43
原帖由 laba72 于 2007-12-18 10:26 AM 发表
ATTRIB -S -H -R C:\BOOT.INI
Echo C:\XXX="****">>C:\BOOT.INI
ATTRIB +S +H +R C:\BOOT.INI
写入前最好判断一下子才好。

怎么判断呢?lianjiang 大哥有这样的教程没?我对批处理不是很熟,谢谢了!

...

下面的是grub4dos初级教程里的。道理一样。
安装批处理

@echo off
rem by lianjiang
cls
echo.
echo 请以管理员身份运行。
echo.
pause
set gname=GRUB for DOS
set vid=
set timeout=5
bcdedit >bcdtemp.txt
type bcdtemp.txt | find "\grldr.mbr" >nul && echo. && echo BCD启动项中已有grub4dos的项目,无需再安装。&& pause && goto exit
bcdedit /export "Bcd_Backup" >nul
bcdedit /create /d "%gname%" /application bootsector >vid.ini
for,/f,"tokens=2 delims={",%%i,In (vid.ini) Do (
     set vida=%%i
)
for,/f,"tokens=1 delims=}",%%i,In ("%vida%") Do (
     set vid={%%i}
)
echo %vid%>vid.ini
bcdedit /set %vid% device boot >nul
bcdedit /set %vid% path \grldr.mbr >nul
bcdedit /displayorder %vid% /addlast >nul
bcdedit /timeout %timeout% >nul
if exist grldr.mbr copy grldr.mbr %systemdrive%\ /y && goto exit
echo.
echo 稍后请自行把grldr.mbr拷贝到%systemdrive%\根目录
echo.
pause
:exit
del bcdtemp.txt >nul
作者: lianjiang    时间: 2007-12-18 10:44
原帖由 阿非 于 2007-12-18 10:23 AM 发表
楼上的处男和lianjiang才是厉害呢。偶只是照抄

楼上的处男才是厉害呢。
我也是照抄的。
作者: laba72    时间: 2007-12-18 10:46
好东西,之前好象是在教程里看了,不过没记住,当时也不明白这是干吗的,现在都清楚了,谢谢~~~~
今天晚上可以好好玩玩了~~




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3