前提:你的机器中装有NT系统,如win2000,winXP,win.net等,但首先装系统前,你用98的启动光盘或是软盘格式你的第一个主分区 format C: /s/q
,然后再装windows 2000,xp ,.net 然后再装Linux 这样你的windows系统启动菜单中就多了一个microsoft windows的启动项,其实是WIN98的dos7.0
1、装Linux的时候选建立引导盘来引导,选装Grub到fd0 ,这样/boot目录下就会有相应的vmlinuz***和initrd***.img这样的文件生成。适应于大部分的linux发行版!
2、用引导盘引导linux,然后把linux系统的相关的vmlinuz和initrd.img (注意是实实在在的那个文件,不要把链接文件只拷过来了,不行的,要那个链接指向的文件才行,如果不知道,可以在/boot目录下用ls -l 看一下到底谁是真的) 拷贝到你的C盘的与系统名类似的文件夹内,如:
对于mandrake 你可以
mount /dev/hda1 /mnt/win_c
cd /mnt/win_c
mkdir mdk
cd /boot
cp vmlinuz initrd.img /mnt/win_c/mdk
把loadlin.exe 也拷到mdk目录下,光盘上有,或是你可以从我的网站下载
http://61.136.253.234/loadlin.exe
http://61.136.253.234/loadlin.exe
然后你可以在mdk目录下建立一个autoboot.bat 文件用来你在98的DOS下引导linux系统。
如我mdk目录下的autoboot.bat 内容为:
loadlin vmlinuz initrd=initrd.img root=/dev/hda10 devfs=mount
3、其他linux的引导方法雷同,自己想一下就也出来了,我就不多说了。
这样子并不是完美的启动方法。下面的才是难点:注意了啊(一般在win平台改几个文件比较好)
4、改你的C盘下的 CONFIG.SYS 这个文件和autoexec.bat这个文件
如我的文件:
config.sys的内容为:
[menu]
menuitem=1,Microsoft DOS 7.0
menuitem=2,Mandrake Linux9.1
menuitem=3,RedFlag Linux 4.0
menuitem=4,SuSE Linux8.2 pro
menudefault=1,10 //*这行是默认的等待时间*//
menucolor=10,1 //*启动菜单的字体颜色,如可为15,1 *//
[1]
[2]
[3]
[4]
autoexec.bat的内容为:
goto %config%
:1
goto end
:2
c:
cd mdk
C:\mdk\autoboot.bat
goto :end
:3
c:
cd\redflag
c:\redflag\autoboot.bat
goto :end
:4
c:
cd \SuSE
c:\suse\autoboot.bat
goto :end
5、然后修改你的C盘下的boot.ini这个文件,如我的文件内容为:
[boot loader]
timeout=5
default=C:
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\WINNET="Microsoft Windows 2003 Server Enterprise" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional_" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server _" /fastdetect
C:\="Dos7.0 Boot Linux Os" /bootlog
////主要就在于你要在98的dos这条启动项的后面加参数 /bootlog
这样可以直接进入我们的linux 启动菜单。不然会出来98的用安全模式启动的那个提示。
这样我的机器就有了六个操作系统,三个windows的,三个linux的,而且不用操心mbr了,就用dos搞定一切。可以扔掉你的启动盘了,呵呵。
附:
redflag的启动autoboot.bat内容:
loadlin vmlinuz initrd=initrd.img root=/dev/hda11 vga=791 hdc=ide-scsi
SuSE的启动autoboot.bat内容:
loadlin vmlinuz initrd=initrd root=/dev/hda11 append splash=silent showopts devfs=mount
主要的是后面的参数,可以看grub.conf那个文件里是怎么带的参数,比如你要是在mdk的引导批处理文件后不加devfs=mount你的其他格式的文件系统不挂不上。其他参数大家可以试一试是为什么!
:D 搞了几天才搞出来,希望有人喜欢,呵呵,偶的一桩心事也算结了,总为了mbr伤透了脑筋。
只要你不把这些启动的批处理文件和loadlin搞丢,你想重装windows一点也不受影响,再也不为grub丢失担心了,想怎么搞就怎么搞。呵呵
弱智 回复于:2003-07-06 10:33:41 |
荷荷,楼主的方法可行,就象Netware的引导要靠DOS启动一样。 |
hoxide 回复于:2003-07-28 14:15:20 |
可惜我没装98 |
lnx3000 回复于:2003-07-28 14:26:39 |
楼主厉害! :) |
好好先生 回复于:2003-07-28 14:31:15 |
我以前看过一篇类似的文章. |
jackyin 回复于:2003-07-28 17:21:46 |
用WinME怎么办啊??? |
弱智 回复于:2003-07-28 19:41:34 |
Windoze ME道理一样的啊~~ |
aero 回复于:2003-07-28 19:59:48 |
佩服,这就是研究的精神。 其实原理大家都是明白的,行动也不太难,真是惭愧,少这种研究的精神。 顶,支持! |
flying-dance big big pig 回复于:2003-07-28 20:05:28 |
[quote:699524d524="feming"]g systems] multi(0)disk(0)rdisk(0)partition(3)\WINNET="Microsoft Windows 2003 Server Enterprise" /fastdetect multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional_" /fastdet..........[/quote:699524d524] collection ~ :D |
siyeclover 回复于:2003-07-28 20:29:16 |
[color=gray:79be744267]cloud有个更简单的办法,feming应该也知道的吧? 前提还是一样,系统里有NT操作系统,比如2K,XP。 把grub安装到mbr,然后再拷贝其为一个文件,dd if=/dev/hda of=bootsect.lin bs=512 count=1 注意,是hda不是hda1 把这个bootsect.lin拷贝到c区根目录下。 然后再fdisk/mbr 在boot.ini里面加入引导linux的内容,使用上边拷贝的那个bootsect.lin,可以这么写 c:\bootsect.lin="my linux" 以后只要你保存好这个bootsect.lin就行了,不管重装几回瘟都死都没事了。 以上 喜欢魉呼的siyeclover 补充一下,其实grub安装在哪里并不重要,重要的是将其512个字节拷贝为一个文件。 最后还想问一句,cloud所说这种办法大家应该都是知道的吧?[/color:79be744267] |
aero 回复于:2003-07-28 21:03:18 |
看了这个文章,我就有楼上的想法了,正在试验,没想到有人都做过了,呵呵。 |
zhouxingyu@eyou.com 回复于:2003-08-05 20:57:08 |
如果是NTFS也有用吗? |
aero 回复于:2003-08-05 21:18:47 |
ntfs的话,也没有98啊,楼主的方法就不行了。 2000以后的os loader就没问题。 |
kassidy 回复于:2003-11-17 13:46:51 |
我按照上面的方法没成功! 请高手指点我几个疑问: 1。 autoexec.bat的内容中,goto %config%是什么意思?在goto :end 还是 go to end? 有没有冒号? 有冒号的话那因该是一个标符 ,那跳到 end 处该执行什么操作呢?是没写全还是我看不懂? 2。config.sys的内容中,下面那几个"[1]" , "[2]" ,"[3]" 是不是做变量使用,即把"[1]" , "[2]" ,"[3]" 的值赋给autoexec.bat 中的 %config% 可是那个 :end 却没有相应的操作语句! 附:我装了win98 ,win2000server , RedHatlinux9.0 其中win98 为C 盘,linux装在mbr ,不过后来加装了win2000server 我想使用feming 上面的方法实现的是这三个系统的引导,我该怎么做,请指教! |
ohsnoopy 回复于:2004-03-09 10:46:46 |
我的是WIN2K,WINXP,WIN2003(MBR), RH LINUX 9.0(软盘引导), 郁闷啊~怎么加到OS LOADER,多一项LINUX启动,从此可以扔掉软盘启动??? QQ 78482997 HELP ME! |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/