QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2263|回复: 13

se 兄, grub 的安装比较麻烦,是否可以考虑直接用 dd

[复制链接]
发表于 2012-6-5 08:02:33 | 显示全部楼层 |阅读模式
新硬件我不了解,直接安装 grub 需要从运行的当前系统进行,限制太多,所以我考虑是否直接使用 dd 来写入硬盘,grub.conf 由 grub 可以自动搜索的吧。
发表于 2012-6-5 12:43:46 | 显示全部楼层
你打算要求所有用 ml 的人都用同一种硬盘还是同一个大小的分区?
回复

使用道具 举报

 楼主| 发表于 2012-6-5 13:36:37 | 显示全部楼层
这个好象是字节量的问题吧,sunshine 和 KDE 写的 grub 安装器好象也不考虑硬盘差异。
回复

使用道具 举报

发表于 2012-6-5 18:42:41 | 显示全部楼层
执行个 grub-install 很难?
回复

使用道具 举报

 楼主| 发表于 2012-6-5 20:31:42 | 显示全部楼层
原帖由 jiangtao9999 于 2012-6-5 18:42 发表
执行个 grub-install 很难?

是的,因为 Live 自身是只读的,所以运行 grub-install 就困难了,grub-install 必需是已运行的可写的系统上进行,所以就算我 chroot 到子系统也是不行的,因为内核没有运行起来,设备没有建立起来,很多东西还是主系统在操作,MI 可以实现的安装但 Live 很困难。
回复

使用道具 举报

发表于 2012-6-6 01:55:46 | 显示全部楼层
光盘只读问题不是有AUFS吗,调试LFS写GRUB我都用CDLINUX启动光盘写入mbr
我暂时还没有到写安装GRUB的脚本,如果有需要我看看能否写个安装脚本,本人暂时还只会写点简单的bash脚本.
回复

使用道具 举报

 楼主| 发表于 2012-6-6 08:20:01 | 显示全部楼层
huizlge,我的水平很有限,如果方便我们可以加好友多沟通,目前我已经写好的整个 Live 安装过程,除了要安装的分区设备名需要手工填入,所有的安装过程都自动进行,包括 grub 安装直到重启。
安装 grub 我现在就是用 dd 写进 sda,这个就没办法管用户的想法了,用户也许想装在 sdb 或者 U 盘之类。
现在只是差了点小问题,cce 没字体不显示了,要不然早发布 ISO 了,现在暂时做法是删掉 cce,因为我觉得能运行桌面才是最要的,linux 终端中文操作也不需要在效率低下的实终端进行。
回复

使用道具 举报

发表于 2012-6-6 09:23:37 | 显示全部楼层
原帖由 haulm 于 2012-6-6 08:20 发表
huizlge,我的水平很有限,如果方便我们可以加好友多沟通,目前我已经写好的整个 Live 安装过程,除了要安装的分区设备名需要手工填入,所有的安装过程都自动进行,包括 grub 安装直到重启。
安装 grub 我现在就是用 dd 写进 sda ...

cce运行有些问题,删了吧。
回复

使用道具 举报

发表于 2012-6-6 09:59:43 | 显示全部楼层
原帖由 haulm 于 2012-6-5 08:31 PM 发表

是的,因为 Live 自身是只读的,所以运行 grub-install 就困难了,grub-install 必需是已运行的可写的系统上进行,所以就算我 chroot 到子系统也是不行的,因为内核没有运行起来,设备没有建立起来,很多东西还是主系统在操作,MI  ...

那你的意思是 Gentoo 是不可能安装的操作系统了?
回复

使用道具 举报

 楼主| 发表于 2012-6-6 10:15:30 | 显示全部楼层
原帖由 jiangtao9999 于 2012-6-6 09:59 发表

那你的意思是 Gentoo 是不可能安装的操作系统了?

可能是我们都没搞懂双方的意思,现有的 Live 脚本还是原来 se 介绍给我的那个,以我的水平不可能大规模地修改,所以我能做的只是基于实现和修改,而不能是从构架考虑重新设计。我不懂 gentoo 是怎么制做的,dd 备份和恢复系统的grub 是绝对没问题的,我已经用自己机器上的 mbr 在虚拟机上成功实现了引导。牛和马相提并论……
Live 安装我已经写好原始的实现,润色是以后的事,几天内新的 ISO 会以 Live 方式发布,MI 以后只用于开发。
回复

使用道具 举报

发表于 2012-6-6 17:23:51 | 显示全部楼层
chroot 运行命令啊……
/dev 和 /proc 用当前运行中的系统里面的就行了。不过是 mount --bind 而已。
回复

使用道具 举报

 楼主| 发表于 2012-6-7 01:33:54 | 显示全部楼层
dd 果然不行,唉。 grub-install 不能安装现在也明白过来了,这东西淘汰了,只有 MI 能运行安装,换成 grub2 就可以了,只不过参数就要研究了,还有那两个动画就不能用了。
回复

使用道具 举报

发表于 2012-6-10 13:58:58 | 显示全部楼层
想到一个有点绕的办法:

1. LiveCD 启动计算机;启动后,Live 系统会有自己的 /dev 。

2. 用户指定系统安装在哪个设备上(比如 sdc3)、引导头安装的哪个设备上(比如 sda6 ——虽然挺蛋疼)。

3. Live 系统把所需的文件全部复制到 sdc3 。

4. Live 系统根据自己的 /dev/ 在 sdc3 : dev/ 下临时创建 sda6 和 sdc3 ,根据用户的指定,在 sda6 安装 grub 以启动装在 sdc3 上的系统。

5. 安装临近结束时,删除 dev/ 下临时创建 sda6 和 sdc3 (以后由装好的系统自己产生);卸载分区,系统安装完成,重启。
回复

使用道具 举报

 楼主| 发表于 2012-6-10 15:12:09 | 显示全部楼层
对头,现有的 2.5.15 就是这么做的,第五步可能没必要,因为 mount --bind 到目标目录的东西重启后应该就消除了。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-4-26 05:18 , Processed in 0.096771 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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