无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3572|回复: 6
打印 上一主题 下一主题

[求助] 用grldr启动linux(ubuntu)的通用菜单或批处理

[复制链接]
跳转到指定楼层
1#
发表于 2012-4-15 00:30:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在某个分区安装了ubuntu,以下是以前的菜单

title 启动 Ubuntu
find --set-root /vmlinuz
kernel /vmlinuz root=/dev/sda11 ro quiet splash
initrd /initrd.img

这样启动没有问题,但是我想知道/dev/sda11部分能不能用一个通用的参数代替,或者可以用一个批处理之类
的方式实现:不管ubuntu在哪个分区都能自动正确的启动。

[ 本帖最后由 2010chinawy 于 2012-4-15 00:31 编辑 ]
2#
 楼主| 发表于 2012-4-15 15:07:40 | 只看该作者
兄弟姐妹们知道的告诉一声啊,谢谢啦
回复

使用道具 举报

3#
 楼主| 发表于 2012-4-16 08:33:14 | 只看该作者
find --set-root /vmlinuz 的结果是(hd0,10)
那sda的编号是否可以直接获得或者定义个变量来求得?
还有没有其他途径比如uuid能实现目标?

ps: 本人是g4d和linux的菜鸟
回复

使用道具 举报

4#
发表于 2012-4-16 08:33:50 | 只看该作者
title [05] 启动ubuntu中文版\n
find --set-root --devices=h ls /boot/vmlinuz > (md)0x200+1
cat --locate=\x20(hd (md)0x200+1 > nul
cat --length=%?% (md)0x200+1 | set vmlinuz=
find --set-root --devices=h ls /boot/initrd > (md)0x200+1
cat --locate=\x20(hd (md)0x200+1 > nul
cat --length=%?% (md)0x200+1 | set initrd=
uuid () > nul
kernel /boot/%vmlinuz% root=UUID=%?% ro quiet splash
initrd /boot/%initrd%

可以启动不同版本的内核

[ 本帖最后由 jianliulin 于 2012-4-16 08:35 编辑 ]
回复

使用道具 举报

5#
发表于 2012-4-16 22:00:47 | 只看该作者
原帖由 jianliulin 于 2012-4-16 08:33 发表
title [05] 启动ubuntu中文版\n
...


关键就是
uuid () > nul
kernel /boot/%vmlinuz% root=UUID=%?% ro quiet splash


谢谢,学习了
回复

使用道具 举报

6#
 楼主| 发表于 2012-4-18 10:33:43 | 只看该作者
这两天没上论坛,没想到已经写好了,非常感谢~
但还是有点小问题

如楼上所说
关键就是
uuid () > nul
kernel /boot/%vmlinuz% root=UUID=%?% ro quiet splash
这部分已经可以满足要求了。

至于上面的部分虽然精彩却不适用于我,我的系统中的内核版本包括从2.6.32-24到2.6.32-40的
十多个版本,所以ls的结果是一大长串,有很多空格,所以前面部分的结果中%vmlinuz%的值是
~2.6.32-24~而非~2.6.32-40~,%initrd%亦然,这样无法启动,所以只能暂时选用其中两行了

当然,前面的部分,J大有兴趣完善一下的话,也是热烈欢迎的~~
回复

使用道具 举报

7#
发表于 2012-4-19 16:44:07 | 只看该作者
ubuntu 还是很好用的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-16 17:57

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表