首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > 用NT Loader加载GRUB来启动Linux
【标  题】:用NT Loader加载GRUB来启动Linux
【关键字】:NT,Loader,GRUB,Linux
【来  源】:http://www.cublog.cn/u/19798/showart.php?id=125744

用NT Loader加载GRUB来启动Linux

转自superblueyu.cublog.cn

用NT Loader加载GRUB来启动Linux
0. 前提
 
 
  系统安装有: Windows NT 4.0, Linux Redhat 7.1
  C:\ 对应于Linux中 /dev/hda1
  Linux ROOT 为Linux中 /dev/hda4
 
  硬盘分区情况:
  /dev/hda1   *  1       261   2096451    6  FAT16         (WINNT 4.0)
  /dev/hda2    262       783   4192965    5  Extended
  /dev/hda3    784       792     72292+  82  Linux swap
  /dev/hda4    793      1027   1887637+  83  Linux         (Redhat 7.1)
  /dev/hda5    262       522   2096451    7  HPFS/NTFS
  /dev/hda6    523       783   2096451    7  HPFS/NTFS
 
1. 安装grub
   我用的grub是Redhat7.2带的grub安装包: grub-0.90-11.i386.rpm
   安装: rpm -ivh grub-0.90-11.i386.rpm
 
   其他安装方式也一样,只要你安装上grub就行了.RH7.2缺省用的grub, 1,2步骤可以
省了.
 
2. 建立grub的环境
   cp /usr/share/grub/i386-redhat/* /boot/grub
 
3. 生成grub的配置文件/boot/grub/menu.conf
   menu.conf的内容如下:
######### beginning of menu.conf ####################
default=1
timeout=4
#splashimage=(hd0,3)/boot/grub/splash.xpm.gz  # 想要漂亮的启动画面,去掉行首"#"
title Red Hat Linux (2.4.12)
        root (hd0,3)
        kernel /boot/vmlinuz-2.4.12 ro root=/dev/hda4
title Red Hat Linux (2.4.14)
        root (hd0,3)
        kernel /boot/vmlinuz-2.4.14 ro root=/dev/hda4
######### end of menu.conf ####################
 
  系统有两个内核, 第一为稳定的内核, 以确保第二个内核(刚编译的)启动
失败时,能引导进系统.另外, 这个menu.conf没有设password, 安全起见,最
好加上,具体怎么加,看看手册了.
  注意了, 我的linux在/dev/hda4,所以menu.conf那些分区位置为(hd0,3),
你的可能不一样了,不能完全照着"画瓢"噢! :) 下面第3步install的中的分区
位置也应该和你的系统一致.
 
3. 安装grub至Linux分区boot
   将grub的stage1安装到/dev/hda4的boot扇区(hd0,3). 过程如下:
 
/sbin/grub  (运行grub)
grub> install (hd0,3)/boot/grub/stage1 d (hd0,3) (hd0,3)/boot/grub/stage2 p
(hd0,3)/boot/grub/menu.conf
 
  (注意,上面"grub>"为grub的提示符,其后内容写在一行上.)
 
4. 取得grub的boot信息
  过程如下:
dd if=/dev/hda4 of=/grub.lnx bs=512 count=1
 
  这样得到grub的引导信息,只要用NT Loader来加载它就行了.
 
5. 将上面得到的grub.lnx弄到Windows的C盘根目录下
  可以先把grub.lnx弄得软盘上,然后启动windows,拷贝到C:\; 情况允许也可以直接
在Linux下拷贝到C:了. 我的C盘(即设备/dev/hda1)为FAT32, 可以直接从Linux下弄
过去了. 如下:
 
mount -t vfat /dev/hda1 /mnt/c
cp /grub.lnx /mnt/c
umount /mnt/c
 
6. 修改NT Loader的boot.ini
  在其中加入一行:   C:\grub.lnx="Redhat Linux - GRUB"
  加入后boot.ini的内容如下:
 
[boot loader]
timeout=5
default=C:\grub.lnx
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\PNT40W="Windows NT Workstation Version 4
.00"

multi(0)disk(0)rdisk(0)partition(1)\PNT40W="Windows NT Workstation Version 4
.00 [VGA mode]" /basevideo /sos
C:\grub.lnx="Redhat Linux - GRUB"
 
OK. 可以用NT Loader加载Linux了,:) 其实上面过程基本上和用NT Loader加载LILO
一样.其基本思想就是用NT Loader来加载LILO或grub的引导区(grub.lnx), 其中的关
键就是LILO或grub的引导区的获取了,可以把它们安装在Linux的ROOT分区上,然后用
dd取得这个引导分区信息(即分区的第1个扇区), 存为一个文件,放到windows的C:\下,
在boot.ini中加入相应的引导指示行即可.
世界杯节目表(图片方式的,可以做桌面哦)!:【上一篇】
RPM的详细演示安装、删除和查询:【下一篇】
【相关文章】
  • linux服务器学习笔记20060609
  • Linux下构造高性能、高可用、高可伸缩性的服务集群
  • linux服务器学习笔记20060609-2
  • linux ip设置
  • linux服务器学习笔记20060610
  • iperf-1.7.0的移植(Porting iperf-1.7.0 to arm linux platform)
  • hostapd-0.3.7的移植(Porting hostapd-0.3.7 to arm linux platform)
  • openssl-0.9.7a的移植(Porting openssl-0.9.7a to arm linux platform)
  • 一个Linux学习高手写给初学者的话
  • EnGarde Secure Linux
  • 【随机文章】
  • JSP迅速入门
  • find命令
  • vsftpd.conf设置部分
  • 重建loglv以及loglv的作用
  • isomaster,Linux下的ISO编辑软件
  • 用javascript按需加载.js和.css文件
  • 什么样的环境是程序员成长最快的环境 [zt]
  • [2000/XP/2003操作系统常见问题集锦二]
  • 客户机程序5—MYSQL交互式查询程序
  • 09月14日病毒预警
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.