grub安装linux
⑴ linux系统的引导程序是GRUB,在系统安装时可安装在哪些位置效果有何不同
1、安装在活动分区(如C盘),当前硬盘中的可引导系统,将被添加到grub中,电脑开机将从grub启动。这个方式有个弊端,当grub出问题时,系统将无法被引导。
2、安装在linux所在分区,不会被pc开机引导,但可以通过其他引导工具进行引导(如bootthink、变色龙等),这个方式有个好处就是,linux系统(包括grub)是完全跟windows和其他系统独立开的,就算windows重装,只要linux分区,没被格式化,通过安装第三方引导工具,依然可以被引导,无压力。
⑵ 电脑只安装Linux系统,安装的时候出现了grub安装失败的界面,为什么那个系统是Gmac os
步骤如下:
a 进入grub的命令模式。进入grub界面后按C键进入命令行界面。
b 先熟悉一下grub 的一些命令 grub>help
c 熟悉一下cat命令
d root指令来指定/boot所在的分区
e kernel指令来指定linux的内核,及所在的分区
f 用initrd命令来指定initrd文件
g boot引导系统
cat命令的用法
cat指令是用来查看文件内容的,有时不知道Linux的/boot分区,以及/根分区所在的位置,要查看/etc/fstab的内容来得知, 这时,就要用到cat (hd[0-n],y)/etc/fstab 来获得这些内容;注意要学会用tab键命令补齐的功能;
grub> cat ( 按tab 键会出来hd0或hd1之类的;
grub> cat (hd0, 注:输入hd0,然后再按tab键;会出来分区之类的;
grub> cat (hd0,6)
Possible partitions are:
Partition num: 0, Filesystem type unknown, partition type 0x7
Partition num: 4, Filesystem type is fat, partition type 0xb
Partition num: 5, Filesystem type is reiserfs, partition type 0x83
Partition num: 6, Filesystem type is ext2fs, partition type 0x83
Partition num: 7, Filesystem type unknown, partition type 0x83
Partition num: 8, Filesystem type is reiserfs, partition type 0x83
Partition num: 9, Filesystem type unknown, partition type 0x82
grub> cat (hd0,6)/etc/fstab 注:比如我想查看一下 (hd0,6)/etc/fstab的内容就这样输入;
LABEL=/ / ext3 defaults 1 1
/dev/devpts /dev/pts devpts gid=5,mode=620 0 0
/dev/shm /dev/shm tmpfs defaults 0 0
/dev/proc /proc proc defaults 0 0
/dev/sys /sys sysfs defaults 0 0
LABEL=SWAP-hda1 swap swap defaults 0 0
/dev/hdc /media/cdrecorder auto pamconsole,exec,noauto,
managed 0 0
主要查看/etc/fstab中的内容,主要是Linux的/分区及/boot是否是独立的分区;如果没有/boot类似的行,证明/boot和 Linux的/处于同一个硬盘分区;比如上面的例子中LABEL=/ 这行是极为重要的;说明Linux系统就安在标签为LABEL=/的分区中;
如果您的Linux系统/boot和/没有位于同一个分区,可能cat (hd[a-n],y) 查到的是类似下面的;
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
root (hd[0-n,y) 指令来指定/boot所在的分区;
其实这个root (hd[0,n],y)是可以省略的,如果省略了,要在kerenl 命令中指定;前面已经说过 (hd[0-n],y)硬盘分区的表示方法的用途;主要是用来指定 /boot所在的分区;
eg:
grub> root (hd0,0)
kernel 指令,用来指定Linux的内核,及/所在的分区;
kernel 这个指令可能初学者有点怕,不知道内核在哪个分区,及内核文件名的全称是什么。不要忘记tab键的命令补齐的应用;
如果已经通过root (hd[0-n],y) 指定了/boot所在的分区,语法有两个:
如果/boot和Linux的/位于同一个分区,应该是下面的一种格式;
kernel /boot/vmlinuz在这里按tab键来补齐,就看到内核全称了 ro root=/dev/hd[a-z]X
如果/boot有自己独立的分区,应该是;
kernel /vmlinuz在这里按tab键来补齐,就看到内核全称了 ro root=/dev/hd[a-z]X
在这里 root=/dev/hd[a-z]X 是Linux 的/根所位于的分区,如果不知道是哪个分区,就用tab出来的来计算,一个一个的尝试;或用cat (hd[0-n],y)/etc/fstab 中得到Linux的/所在的分区或分区的标签;
grub> kernel /boot/在这里按tab键;这样就列出/boot中的文件了;
Possible files are: grub initrd-2.6.11-1.1369_FC4.img System.map-2.6.11-1.1369
_FC4 config-2.6.11-1.1369_FC4 vmlinuz-2.6.11-1.1369_FC4 grubBAK memtest86+-1.55
.1 xen-syms xen.gz
grub> kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
[Linux-bzImage, setup=0x1e00, size=0x18e473]
注解: root=LABEL=/ 是Linux的/所在的分区的文件系统的标签;如果您知道Linux的/在哪个具体的分区,用root=/dev/hd[a-z]X来指定也行。比如下面的一行也是可以的;
grub> kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7
也可以把/boot所在的分区的指定 root (hd[0-n],y)这行省掉,直接在kernel 中指定/boot所在的分区;所以就在下面的语法;
如果是/boot和Linux的根同处一个分区;
kernel (hd[0-n],y)/boot/vmlinuz ro root=/dev/hd[a-z]X
比如:
grub>kernel
如果是/boot和Linux所在的根不在一个分区;则是;
kernel (hd[0-n],y)/vmlinuz ro root=/dev/hd[a-z]X
grub> kernel (hd0,0)/boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7
[Linux-bzImage, setup=0x1e00, size=0x18e473]
或下面的输入,以cat 出/etc/fstab内容为准;
grub> kernel (hd0,0)/boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
[Linux-bzImage, setup=0x1e00, size=0x18e473]
initrd 命令行来指定initrd文件;
grub> initrd /boot/initrd在这里tab 来补齐;
grub> initrd /boot/initrd-2.6.11-1.1369_FC4.img
[Linux-initrd @ 0x2e1000, 0x10e685 bytes]
如果/boot是独立的一个分区,应该是如下样子的语法;比如下面的;
grub> initrd /initrd在这里tab 来补齐;
grub> initrd /initrd-2.6.11-1.1369_FC4.img
[Linux-initrd @ 0x2e1000, 0x10e685 bytes]
boot 引导系统;
grub>boot
下面是在我机器上的命令:
grub> cat (hd0,0)/etc/fstab
# This file is edited by fstab-sync - see 'man fstab-sync' for details
LABEL=/ / ext3 defaults 1 1
/dev/devpts /dev/pts devpts gid=5,mode=620 0 0
/dev/shm /dev/shm tmpfs defaults 0 0
/dev/proc /proc proc defaults 0 0
/dev/sys /sys sysfs defaults 0 0
LABEL=SWAP-hda1 swap swap defaults 0 0
/dev/hdc /media/cdrecorder auto pamconsole,exec,noauto,managed 0 0
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
grub> kernel /boot/在这里按tab补齐,全列出/boot所有的文件;
Possible files are: grub initrd-2.6.11-1.1369_FC4.img System.map-2.6.11-1.1369_FC4 config-2.6.11-1.1369_FC4 vmlinuz-2.6.11-1.1369_FC4
memtest86+-1.55.1 xen-syms xen.gz
grub> kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
[Linux-bzImage, setup=0x1e00, size=0x18e473]
grub> initrd /boot/在这里按tab补齐
Possible files are: grub initrd-2.6.11-1.1369_FC4.img System.map-2.6.11-1.1369_FC4 config-2.6.11-1.1369_FC4 vmlinuz-2.6.11-1.1369_FC4 grubBAK
memtest86+-1.55.1 xen-syms xen.gz
grub> initrd /boot/initrd-2.6.11-1.1369_FC4.img 注;输入intrd文件名的全名;
[Linux-initrd @ 0x2e1000, 0x10e685 bytes]
grub> boot
⑶ linux grub装到哪个分区
GRUB 的安装方式两种
我们都知道在操作系统启动过程中有 一个很重要的引导程序——MBR。MBR是由三段组成的其中最重要的两段:是由446个字节组成的boot locader(引导加载器),和64个字节的分区表。在MBR的446字节也就是boot locader这段程序对于引导操作系统很重要。Linux中有两种boot locader可选,一种是LILO,一种就是GRUB。LILO现在已不用了。现在主要是使用GRUB来引导。现在我们来介绍一下GRUB。
GRUB是两段式的引导,第一阶段称为stage1,是存放在MBR中,主要来引导第二阶段stage2 这段主要放在/boot/grub/中的执行程序,主要是grub.conf这个文件。下面就介绍两种GRUB的安装
第一种是:当grub.conf这个文件不存在了,我们可以手动编辑。当系统重新启动时会出现一个grub的提示界面;而我们并不知道系统是在哪个磁盘中,这时我们可以用一命令来试着来找一下,grub>find (hd0,0)/ 用Tab键来查看是否有一个内核版本,如果有则是在这个磁盘中,反之则查找下一个。找到后可在grub>后输入:root (hd0,0)第二步是在grub>后输入kernel 后面跟上内核的版本,例如:kernel /vimlinuz-2.6.18-64.el5 ro root=/dev/vol0... quit。第三步是initrd,例如:grub>initrd /initrd 后面与内核版本相对应。最后是grub>boot 也就是重新启动。启动后在/boot/grub建立一个grub.conf 这样我们的grub就安装成功了。
第二种方式:当grub被破坏掉了。例如我们执行命令#dd if=/dev/zero of=/dev/sda bs=220 count=1 执行后MBR中的boot locader 就被删掉了。那我们怎样来重装grub呢?这里有两个方法。第一种就是:找一个系统光盘,从光盘启动紧急救援模式来修复grub。第二种方式就是安装grub到一个磁盘上。其过程是:
第一步是:在一个磁盘上重新化分一个分区,大约有100M左右,
第二步是:把这个分区格式化,#mount ext3 /dev/sdb1
第三步是:创建一目录。#mkdir /mnt/boot 并把上面的分区挂载到这个目录上#mount /dev/sdb1 /mnt/boot
第四步是:创建目录#mkdir /mnt/boot/grub
第五步是:进入到原操作系统i386-redhat目录中,并复制目录下所有文件。 #cd /usr/share/grub/i386-redhat
#cp ./* /mnt/boot/grub
第六步是:回原目录并卸载光盘#cd #umount /dev/sdb1
第七步是:执行grub命令#grub 会出现一个grub界面。逐步输入。
grub>root (hd1,0)
grub>setup (hd1)
grub>quit
经过这七步后我们的grub就成功的安装在了一个新的磁盘上,我们可以新建一个虚拟机并用这个磁盘,启动后就可以看到grub来引导的界面。
上面是两种方式来安装grub,如果再有内核就是一个小的Linux操作系统了。
⑷ Grub引导安装linux怎么选择驱动器程序,总是到这一步后无法继续安装
/root目录不用建立,每个linux系统都会自己建立的;
menu.lst文件不一定要在C盘,grub会自动寻找每一个分区根目录;
你的问题是新安装的grub引导程序找到的第一个menu.lst是C盘的,也就是你原来XP系统boot.ini里配置的grldr引导的grub.exe,原来的默认引导为linux6.0安装,所以重启后还是进入安装界面。
解决办法:
删除C盘的menu.lst文件或者将新装linux系统的/boot下的menu.lst复制过来覆盖掉这个配置。
⑸ grub如何装linux
其实很简单,你应该再划分出一个swap分区,大小是你内存的两倍以内
如果你内存是512,那么swap最好是521-1024之间,如果内存很大,那就没有必要用swap了
你先将linux里的vmlinuz和initrd.img复制到一个fat32的分区上
然后在grub界面,按c得到一个command
然后root (hd0,6) //6表示你的vmlinuz和initrd.img放在哪
在kernel /vmlinuz回车
在initrd /initrd.img回车
再boot回车
就开始安装了
记得后面会让你选安装镜像在哪,是完整的安装镜像,找到相应的位置就可以了,不会再网络交流
⑹ linux启动、grub配置以及kickstart简介
本文主要针对CenOS6系统的启动流程作简介。
Linux的系统启动分为几个阶段,由于运行中的系统分为用户空间层面和内核空间层面,所以一个完整的系统启动也是先启动内核文件,然后在启动用户层面的各种应用程序。Linux系统的设计属于单内核设计,但是各功能模块却支持动态的装载和卸载,极大的压缩了内核的体积,让内核的启动也更加快捷和迅速。
过程简述:
1.POST(加电自检) :主要负责检测系统外围关键设备(如:CPU、内存、显卡、I/O、键盘鼠标等)是否正常。
2.boot sequence(选择启动设备) :按次序查找各引导设备,第一个有引导程序的设备即为本次启动要用到的设备;
上述两个功能都由BIOS来完成,BIOS(Basic Input / Output System),又称基本输入输出系统,是一个固化在ROM中的软件,是操作系统输入输出管理系统的一部分。
3.bootloader(引导加载器):
Linux下的引导加载器有grub leancy和grub2两种,Cenos6中使用的是前者。
MBR(主引导记录):
MBR的共由512字节组成,前446字节存放的即是bootloader。所以在选定启动设备后,收件是读取MBR中的bootloader,打开grub菜单。
grub:
功能:提供一个菜单,允许用户选择要启动的系统或不同的内核版本; 把用户选定的内核装载到RAM中的特定空间中,解压、展开,而后把系统控制权移交给内核;
gurb的实现共有3个阶段:
1st stage:位于MBR的BootLoader中,用来加载2nd stage到内存中。
1.5 stage:1和2的桥梁,用来驱动文件系统来使1阶段过渡到2阶段。
2nd stage:grub核心,/boot/grub,存放在磁盘分上,用于加载内核文件。
4.加载内核
分四个步骤:
探测可识别到的所有硬件设备;
加载硬件驱动程序;(有可能会借助于ramdisk加载驱动)
以只读方式挂载根文件系统;即rootfs
运行用户空间的第一个应用程序:/sbin/init。
内核文件:/boot//vmlinuz-VERSION-release,ramdisk文件/boot/initramfs-VERSION-release.img。
在上述的内核启动后,后续的操作都交给init程序来完成。/sbin/init程序是用户空间的第一个程序,主要完成系统初始化,步骤如下:
设置默认运行级别:
运行级别的配置文件为/etc/inittab,共0-6七个运行级别,可以在该文件中自主定义,下次启动默认进入指定的运行级别。
运行系统初始化脚本:
/etc/rc.d/rc.sysinit即为系统的初始化脚本,系统通过自动执行该脚本,从而完成对系统的设置和信息的初始化。
关闭对应级别下需要停止的服务,启动对应级别下需要开启的服务:
这里主要是指通过chkconfig所配置的开机自动启动或者关闭的各类服务。
设置登录终端:
启动图形终端:级别5需要启动
GRand Unified Bootloader,系统启动后会首先打开一个grub菜单,上图所示,可以自主选择内核、定制内核参数。grub由三个阶段组成,1st stage,1_5stage以及stage2,stage2和内核文件等通常放置于一个基本磁盘分区。
grub有自己的命令行接口:
配置文件说明:/boot/grub/grub.conf
kickstart是什么
许多系统管理员愿意使用自动化的安装方法来安装linux系统。为了满足这种需要,红帽公司建立了kickstart安装方法。使用kickstart自动化安装,系统管理员可以创建一个ks文件,该文件包含了在典型的安装过程中所遇到的问题的答案。
Kickstart文件可以存放在一个固定的位置上,在安装过程中被独立的机器所读取。这个安装方法可以支持使用单一kickstart文件在多台机器上安装Linux系统,这对于网络和系统管理员来说是个理想的选择。
如何执行kickstart安装
kickstart 安装可以使用本地光盘,本地硬盘驱动器,或通过 NFS、FTP、HTTP 来执行。
要使用 kickstart,必须:
1.创建一个正确的kickstart文件。
2.创建有kickstart文件的引导介质或者让主机可以通过网络访问该文件。
3.筹备安装过程。
4.开始kickstart安装。
创建kickstart配置文件的方式:
1. 文本编辑器编辑生成:vim
2. 用图形化界面配置:system-config-kickstat(需要安装system-config-kickstart.noarch包)
步骤:
创建光盘根目录
复制光盘下的isolinux目录到根目录下
赋予isolinux里的所有文件和目录写权限(这样就可以自定义isolinux.cfg文件)
复制修改好的ks文件到myboot目录下(这里myboot目录相当于光盘的根目录)
建立镜像
⑺ 急!安装Linux时,无法写入grub
【winxp】
确认自己装好了ubuntu,
下载一个geub4dos,将其中的 grldr 放到C盘,编辑C盘的boot.ini文件,
修改:
timeout=10
添加:
C:\grldr=Ubuntu
这样,就装好了grub引导器,在C盘编辑配置文件 menu.lst :
default 0
timeout 3
title Ubuntu
find --set-root /vmlinuz
kernel /vmlinuz
initrd /initrd.img
重启。
如果不能正常启动,使用这个配置(假设ubuntu装在 /dev/sda8,根据自己的修改)
default 0
timeout 3
title Ubuntu
find --set-root /vmlinuz
kernel /vmlinuz root=/dev/sda8
initrd /initrd.img
如果你的 /boot 是单独分区,这个要改,把你的分区方案贴出,/boot 文件名贴出,可以重写。
如果是win7,win visa 在拷grldr的同时,要拷grldr.mbr,还有ntldr,ntdetect,boot*文件。
安装grub,就选装入 /dev/sda ,对初学者很好,仅仅要注意的是,删linux前要恢复mbr,就好。
⑻ 如何用grub装linux
如果你想在g盘装linux那么你要先删除g盘,因为linux的文件系统和windows的不同,windows是不认linux的文件系统的,但反过来可以。如果你是新装linux的话不用去管grub的安装。因为在系统安装是他会给你装的。但是如果你是先装了linux在装windows的话,你需要重写grub才可以引导linux具体步骤是:
1.把第一张安装光盘放进光驱,进入引导界面后按F5,然后打linux rescue
2.进入单用户模式后,打chroot /mnt/sysimge
3.打命令grub-install -/dev/hda
注:/dev/hda这里是硬盘名称,就是第几块硬盘的意思,如果你就一块硬盘就按这个命令打就可以
linux的版本也很多,redhat最新的版本是FC5,redhat已经宣布redhat9.0已经停止升级服务了,建议你用FC5,另外SUSE10.1也不错,对于初学者的话,最好用这两个之一。
⑼ Linux实现U盘启动(1.GRUB安装U盘)
简单的说,GRUB 是系统的启动引导程序。我们要启动系统时,需要通过BIOS启动硬盘0扇区的程序引导启动系统内核。从早期的 MBR到如今的UEFI启动类型和GUID分区表 (GPT) 特殊操作。想了解详情自行查阅资料。
Linux系统 U盘
首先我们要给U盘分区。通过下面命令查看U盘的挂在情况。
如果挂载正常,就可以通过下面命令给U盘分区。(/dev/sdb是我的U盘)
d删除所有分区,然后o写入DOS分区表,再n添加分区。配置好后w保存退出。
然后格式化U盘分区。命令:
然后挂载U盘,如果U盘无法挂载,可以把分区类型改为Linux filesystem(20类型),挂载后再改回BIOS boot(4类型)。否则GURB安装时会提示错误。
挂载命令
--force 选项启用对 blocklists(块列表)的支持
--debug 显示安装信息
第一个路径挂载的分区路径,第二个路径为U盘的设备路径。
至此我们已经把GRUB安装到了U盘。U盘会多个boot目录 。
可以重启BIOS选U盘启动,正常的话会进入GRUB 命令行。
下一篇说说GRUB配置
⑽ 安装Linux的时候出现grub安装失败怎么办
由于预装了Linux系统,格式化之后重新启动会有GRUB的提示,如图 grub是linux的引导菜单,驻留在MBR(硬盘的主引导记录),需要清除了才能引导。 1.正常使用纯净版慢装盘,一步步安装,非ghost版。 2.DOS下利用fdisk /mbr命令清除,需要DOS有fdisk这个程序 3.DOS下利用disk genius简称diskgen winpe下利用PTDD