现在的ubuntu的grub已经更新到grub1.97 beta4了,估计马上到真正的2.0版了。现在这个版本怎么挂载iso镜像来更新或安装或者修复系统呢?
我们先看看新版的grub有什么新功能吧
1、grub2 和 grub 有很多不同的地方:
a)图形接口
b)使用了模块机制,通过动态加载需要的模块来扩展功能
c)支持脚本语言,例如条件判断,循环、变量和函数
d)支持 rescue 模式,可用于系统无法引导的情况
e)国际化语言。包括支持非 ASCII 的字符集和类似 gettext 的消息分类,字体,图形控制台等等
f)有一个灵活的命令行接口。如果没有配置文件存在,GRUB 会自动进入命令模式
g)针对文件系统、文件、设备、驱动、终端、命令、分区表、os loder 的模块化、层次化、基于对象的
框架
h)支持多种文件系统格式
i)可访问已经安装的设备上的数据
j)支持自动解压
现在我们切入正题,怎么挂载iso镜像
首先你要能进入grub2的选单,有些是设置的不显示的(至于怎么让它先出来,自己搜索喽)
按下组合键 ctrl+c ,新建一个grub的命令行
如果你的分区有ntfs格式的就得让grub支持这个格式,不然你是运行不动ntfs分区下面的东西的
insmod ntfs
当然你可以用insmod支持一些其他东西 还能支持的有jpg png 的图片格式
找到你的iso在那个分区,不是c d e f 这种格式了,而是像(hd0,1) (hd0,2)(hd0,5)这种格式
search -f /你的iso名字.iso
当然了,前提是你知道这个iso的名字,我的做法是先在一个系统下把它改成111.iso 这种简单的名字
这个命令会列出根目录里包含 你的iso名字.iso 文件的分区,返回为分区号类似(hd0,2)
然后我们“挂载”你的iso文件
loopback lo0 (hd0,1)/你的iso名字.iso
这里的(hd0,1) 改成上面返回的分区号比如我上面举例用的(hd0,2);你的iso名字.iso 不用解释吧
然后我们把系统的操作权交给iso中的系统文件
比如我们的iso是新下载的ubuntu desktop的镜像,同时已经重命名为 111.iso
linux (lo0)/install/vmlinuz
initrd (lo0)/install/initrd.gz
最后的命令是启动(你也可以用ctrl+x来启动)
boot
然后回车
OK,完成,用镜像做你需要做的吧
注:有些镜像是不支持挂载iso安装的,比如我一次用的ubuntu 某版本,非让用光驱安装
其他可能用的命令
help
查看命令用法,如
help search:查看 search 命令详细用法
set
设置变量值,如
set default=0
set timeout=5
set root=(hd0,3)等等
需要调用变量 AA 的值时,使用${AA},如 set root=(hd1,1),则${root}=(hd1,1)
default
定义默认引导的操作系统。0 表示第一个操作系统,1 表示第 2 个,依此类推
timeout
定义在时间内用户没有按下键盘上的某个按键,自动引导 default 指定的操作系统。
root
指定用于启动系统的分区。
我们先看看新版的grub有什么新功能吧
1、grub2 和 grub 有很多不同的地方:
a)图形接口
b)使用了模块机制,通过动态加载需要的模块来扩展功能
c)支持脚本语言,例如条件判断,循环、变量和函数
d)支持 rescue 模式,可用于系统无法引导的情况
e)国际化语言。包括支持非 ASCII 的字符集和类似 gettext 的消息分类,字体,图形控制台等等
f)有一个灵活的命令行接口。如果没有配置文件存在,GRUB 会自动进入命令模式
g)针对文件系统、文件、设备、驱动、终端、命令、分区表、os loder 的模块化、层次化、基于对象的
框架
h)支持多种文件系统格式
i)可访问已经安装的设备上的数据
j)支持自动解压
现在我们切入正题,怎么挂载iso镜像
首先你要能进入grub2的选单,有些是设置的不显示的(至于怎么让它先出来,自己搜索喽)
按下组合键 ctrl+c ,新建一个grub的命令行
如果你的分区有ntfs格式的就得让grub支持这个格式,不然你是运行不动ntfs分区下面的东西的
insmod ntfs
当然你可以用insmod支持一些其他东西 还能支持的有jpg png 的图片格式
找到你的iso在那个分区,不是c d e f 这种格式了,而是像(hd0,1) (hd0,2)(hd0,5)这种格式
search -f /你的iso名字.iso
当然了,前提是你知道这个iso的名字,我的做法是先在一个系统下把它改成111.iso 这种简单的名字
这个命令会列出根目录里包含 你的iso名字.iso 文件的分区,返回为分区号类似(hd0,2)
然后我们“挂载”你的iso文件
loopback lo0 (hd0,1)/你的iso名字.iso
这里的(hd0,1) 改成上面返回的分区号比如我上面举例用的(hd0,2);你的iso名字.iso 不用解释吧
然后我们把系统的操作权交给iso中的系统文件
比如我们的iso是新下载的ubuntu desktop的镜像,同时已经重命名为 111.iso
linux (lo0)/install/vmlinuz
initrd (lo0)/install/initrd.gz
最后的命令是启动(你也可以用ctrl+x来启动)
boot
然后回车
OK,完成,用镜像做你需要做的吧
注:有些镜像是不支持挂载iso安装的,比如我一次用的ubuntu 某版本,非让用光驱安装
其他可能用的命令
help
查看命令用法,如
help search:查看 search 命令详细用法
set
设置变量值,如
set default=0
set timeout=5
set root=(hd0,3)等等
需要调用变量 AA 的值时,使用${AA},如 set root=(hd1,1),则${root}=(hd1,1)
default
定义默认引导的操作系统。0 表示第一个操作系统,1 表示第 2 个,依此类推
timeout
定义在时间内用户没有按下键盘上的某个按键,自动引导 default 指定的操作系统。
root
指定用于启动系统的分区。