QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4025|回复: 18

没有initrd文件无法配grub,如何生成initrd文件

[复制链接]
发表于 2005-4-28 20:03:13 | 显示全部楼层 |阅读模式
我装gentoo linux用手动配置内核,但没有initrd文件,grub里没有initrd这一行启动半就停下。请问各位如何生成initrd文件。谢谢!
发表于 2005-4-28 20:08:32 | 显示全部楼层
#cd /boot/grub/

#mkinitrd -o initrd-2.6.11.6.img /lib/modules/2.6.11.6

然后配置 grub.conf
initrd=/boot/grub/initrd-2.6.11.6.img
回复

使用道具 举报

 楼主| 发表于 2005-4-28 20:20:59 | 显示全部楼层
先谢谢!我试试。
回复

使用道具 举报

 楼主| 发表于 2005-4-28 20:53:06 | 显示全部楼层
我有从光盘引导进入gentoo linux 用chroot进入安装的gentoo linux下执行命令提示是没有mkinitrd这个命令,而且/lib/modules/2.6.11-gentoo-r3是个目录,不是文件,下面有很多文件。其中我看了有一个kernel文件4m多,是不是这个文件。如何转换成initrd文件。再次感谢!
回复

使用道具 举报

发表于 2005-4-28 21:13:28 | 显示全部楼层
但没有initrd文件

你需要这个干嘛?? 是做gensplash还是其他什么?
回复

使用道具 举报

 楼主| 发表于 2005-4-28 21:25:25 | 显示全部楼层
grub里得配置initrd,不然无法启动。
回复

使用道具 举报

发表于 2005-4-28 22:32:25 | 显示全部楼层
[quote:affde754f2="xinjiandx"]grub里得配置initrd,不然无法启动。[/quote]

楼上不要乱说啊,intrid不是必须的!

看我的menu.lst:
liyue@liyue:~$ cat /boot/grub/menu.lst

default         0
timeout         5
splashimage (hd0,6)/boot/grub/splash/sexgirl.xpm.gz

foreground = FFFFFF
background = BFBFBF
title          Debian GNU/Linux kernel-2.6.10
root           (hd0,6)
kernel         /boot/linux-2.6.10 ro vga=791

title          Windows XP

root           (hd0,0)
makeactive
chainloader    +1
回复

使用道具 举报

发表于 2005-4-28 22:36:05 | 显示全部楼层
纠正一下错误观点,initrd不是必须的。
回复

使用道具 举报

 楼主| 发表于 2005-4-28 22:43:25 | 显示全部楼层
在我的linux里因没有initrd文件,所initrd这一行没写,系统启动到半就停,大概意思是说要手动配置initrd.但系统没有死机。按 ctrl-alt-del三键可以重起
回复

使用道具 举报

发表于 2005-4-28 23:10:02 | 显示全部楼层
文件系统和磁盘驱动之类启动时必须的都编进内核就不需要initrd了
回复

使用道具 举报

 楼主| 发表于 2005-4-28 23:31:13 | 显示全部楼层
我只是个新手,也时照资料按步就搬编内核,不知有佑方法能把文件系统和磁盘驱动都编进内核。还请指教。
回复

使用道具 举报

发表于 2005-4-29 10:32:10 | 显示全部楼层
grub里没有initrd这一行启动半就停下

不解,有出错信息吗?
回复

使用道具 举报

 楼主| 发表于 2005-4-29 22:40:10 | 显示全部楼层
确实是启动一半就停下,提示是:
warning:unable to open an initial console
kernel panic - not syncing:No init found.Try passing init=option to kernel.
回复

使用道具 举报

发表于 2005-4-30 09:12:45 | 显示全部楼层
kernel panic - not syncing:No init found.Try passing init=option to kernel.

看看你的fstab和grub.conf吧, 只是根分区没有找到罢了, 和initrd没关系的
回复

使用道具 举报

 楼主| 发表于 2005-4-30 13:12:58 | 显示全部楼层
我把的menu.lst和fstab的主要部分贴出:
menu.lst
splashimage=(hd0,14)/grub/splash.xpm.gz
timeout 10

# By default, boot the first entry.
default 0

# Fallback to the second entry.
fallback 1

# For booting GNU/Hurd
title  windows
root   (hd0,0)
chainloader +1

# For booting GNU/Linux
title  GentooLinux
root (hd0,14)
kernel /kernel-2.6.11-gentoo-r3 root=/dev/hda15 ro


fstab
/dev/hda15              /boot           ext2            defaults,noatime        1 2
/dev/hda6               none            swap            sw                      0 0
/dev/hda16              /               ext3            noatime                 0 1
/dev/cdroms/cdrom0      /mnt/cdrom      iso9660         noauto.ro               0 0

none                    /proc           proc            defaults                0 0
none                    /dev/shm        tmpfs           nodev,nosuid,noexec     0 0
我在linux 下用fidsk -l查看分区 /boot分区在/hda15,根分区/在hda16,swap在hda6。你们帮忙看看,menu.lst和fstab那写错了。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-10-5 01:26 , Processed in 0.043278 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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