+ -
当前位置:首页 → 问答吧 → 升级内核遇到如下问题?

升级内核遇到如下问题?

时间:2009-08-12

来源:互联网

以下是遇到的问题.按照官方的手册去升级内核http://www.gentoo.org/doc/zh_cn/hand...?part=1&chap=7.
执行genkernel这步的时候报以下错误.
localhost linux # genkernel --kernel-config=/usr/share/genkernel/x86/kernel-config-2.6 --bootloader=grub all
* Gentoo Linux Genkernel; Version 3.4.10.904
* Running with options: --kernel-config=/usr/share/genkernel/x86/kernel-config-2.6 --bootloader=grub all

grep: /usr/src/linux/.config: No such file or directory
Could not find source tarball /var/cache/genkernel/src/e2fsprogs-1.39.tar.gz. Please refetch.

作者: bobobian   发布时间: 2009-08-12

我升级内核的时候好象不自己指定配置文件的!

我自己load一个配置文件后,编译很久(说明不是我原来那个配置),我还是赖心等它完成,从启,panic.

我后来是,genkernel默认是用从/etc/kernels/kernel-config-x86-2.6.30-gentoo-r4
作为配置文件的..我把 原来29的配置文件改名到那里直接 genkernel --menuconfig kernel
小作修改就好啦.


genkernel --menuconfig kernel
* Gentoo Linux Genkernel; Version 3.4.10.904
* Running with options: --menuconfig kernel

* Linux Kernel 2.6.30-gentoo-r4 for x86...
* kernel: >> Running mrproper...
* config: Using config from /etc/kernels/kernel-config-x86-2.6.30-gentoo-r4
* Previous config backed up to .config.bak
* >> Running oldconfig...

作者: 2603301009   发布时间: 2009-08-12

引用:
作者: 2603301009
我升级内核的时候好象不自己指定配置文件的!

我自己load一个配置文件后,编译很久(说明不是我原来那个配置),我还是赖心等它完成,从启,panic.

我后来是,genkernel默认是用从/etc/kernels/kernel-config-x86-2.6.30-gentoo-r4
作为配置文件的..我把 原来29的配置文件改名到那里直接 genkernel --menuconfig kernel
小作修改就好啦.


genkernel --menuconfig kernel
* Gentoo Linux Genkernel; Version 3.4.10.904
* Running with options: --menuconfig kernel

* Linux Kernel 2.6.30-gentoo-r4 for x86...
* kernel: >> Running mrproper...
* config: Using config from /etc/kernels/kernel-config-x86-2.6.30-gentoo-r4
* Previous config backed up to .config.bak
* >> Running oldconfig...
我单独升级内核的时候没有这种情况发生.我是更新完成系统之后再升级内核的.然后就给我报这个错误.
.config文件没有.我执行了make menuconfig后自动产生了.然后运行genkernel 命令就只报Could not find source tarball /var/cache/genkernel/src/e2fsprogs-1.39.tar.gz. Please refetch.


我emerge这个包成功后是比这个包版本更高的.还是不行.请问怎么指定版本来下载包呢?
我执行如下命令报错
localhost src # emerge -f e2fsprogs-1.39
!!! 'e2fsprogs-1.39' is not a valid package atom.
!!! Please check ebuild(5) for full details.
localhost src #

作者: bobobian   发布时间: 2009-08-12

e2fsprogs-1.39.tar.gz
这个包扔到/var/cache/genkernel/src/下试试

作者: nonplus   发布时间: 2009-08-12

引用:
作者: nonplus
e2fsprogs-1.39.tar.gz
这个包扔到/var/cache/genkernel/src/下试试
我在网上下载了一个e2fsprogs-1.39.tar.gz拖到对应的目录中后.运行以下命令是可以编译的 genkernel --kernel-config=/usr/share/genkernel/x86/kernel-config-2.6 --bootloader=grub all
感觉有点奇怪.为什么会与到这种问题.我先更新了系统.然后系统更新完成之后/usr/src目录下自然存在2.6.30的内核源码文件.然后按照手册进行这样的操作为什么会有这样的问题呢.genkernel就是把手工执行内核的步骤综合起来使用了吗.根据你使用的参数不同他就做的不同.为什么还会少.config文件呢.另外这个e2fsprogs-1.39.tar.gz包作用是什么.感觉和文件系统好象有关系吧.高人指点.

作者: bobobian   发布时间: 2009-08-12

ls /usr/portage/sys-fs/e2fsprogs/
ChangeLog e2fsprogs-1.41.6.ebuild e2fsprogs-1.41.7-r1.ebuild Manifest
e2fsprogs-1.40.9.ebuild e2fsprogs-1.41.6-r1.ebuild e2fsprogs-1.41.8.ebuild metadata.xml
e2fsprogs-1.41.3-r1.ebuild e2fsprogs-1.41.7.ebuild

根本就没有1.39的了,汗!

我的刚同步过.

作者: 2603301009   发布时间: 2009-08-12

引用:
作者: 2603301009
ls /usr/portage/sys-fs/e2fsprogs/
ChangeLog e2fsprogs-1.41.6.ebuild e2fsprogs-1.41.7-r1.ebuild Manifest
e2fsprogs-1.40.9.ebuild e2fsprogs-1.41.6-r1.ebuild e2fsprogs-1.41.8.ebuild metadata.xml
e2fsprogs-1.41.3-r1.ebuild e2fsprogs-1.41.7.ebuild

根本就没有1.39的了,汗!

我的刚同步过.
你还是再更新一个系统,
再更新内核吧.

我也觉得奇怪,emerge -uND world
不更新内核???
还的手动!

作者: 2603301009   发布时间: 2009-08-12

引用:
作者: 2603301009
你还是再更新一个系统,
再更新内核吧.

我也觉得奇怪,emerge -uND world
不更新内核???
还的手动!
更新了系统然后更新的内核.更新了系统系统只会把内核源码帮你下载
.不会给你安装的啊.

作者: bobobian   发布时间: 2009-08-12

引用:
作者: bobobian
更新了系统然后更新的内核.更新了系统系统只会把内核源码帮你下载
.不会给你安装的啊.
原来如此!

sys-fs/e2fsprogs
Latest version available: 1.41.3-r1
Latest version installed: 1.41.3-r1
Size of files: 4,262 kB
Homepage: http://e2fsprogs.sourceforge.net/
Description: Standard EXT2 and EXT3 filesystem utilities
License: GPL-2 BSD

* sys-libs/e2fsprogs-libs
Latest version available: 1.41.3-r1
Latest version installed: 1.41.3-r1
Size of files: 478 kB
Homepage: http://e2fsprogs.sourceforge.net/
Description: e2fsprogs libraries (common error, subsystem, uuid, block id)
License: GPL-2
我的都是1.41了,没有那个1.39的也行,不知道是不是你的特殊.


E2fsprogs: Ext2 Filesystem Utilities

你不该用那些参数的,实在不行就 genkernel all吧!


"genkernel就是把手工执行内核的步骤综合起来使用了吗"
个人觉得它就是几个命令和在一起.
配置的事还的自己做.

作者: 2603301009   发布时间: 2009-08-12

引用:
作者: 2603301009
原来如此!

sys-fs/e2fsprogs
Latest version available: 1.41.3-r1
Latest version installed: 1.41.3-r1
Size of files: 4,262 kB
Homepage: http://e2fsprogs.sourceforge.net/
Description: Standard EXT2 and EXT3 filesystem utilities
License: GPL-2 BSD

* sys-libs/e2fsprogs-libs
Latest version available: 1.41.3-r1
Latest version installed: 1.41.3-r1
Size of files: 478 kB
Homepage: http://e2fsprogs.sourceforge.net/
Description: e2fsprogs libraries (common error, subsystem, uuid, block id)
License: GPL-2
我的都是1.41了,没有那个1.39的也行,不知道是不是你的特殊.


E2fsprogs: Ext2 Filesystem Utilities

你不该用那些参数的,实在不行就 genkernel all吧!


"genkernel就是把手工执行内核的步骤综合起来使用了吗"
个人觉得它就是几个命令和在一起.
配置的事还的自己做.
你可以看帮助啊.帮助里写的很清楚啊.genkernel比较自动化.选择all的时候.除了配置内核那步其他的步骤几乎都做了.

作者: bobobian   发布时间: 2009-08-12

e2fsprogs-1.39.tar.gz 是由genkernel提供的,并不关e2fsprogs ebuild事情
估计是genkernel本身问题或者是安装genkernel出问题(自己没有纯猜测)

e2fsprogs是基本库,如果你想正常启动必须有它
至于genkernel为什么要用到它,那就要提到initramfs(通用启动使用initramfs,而它必须用到e2fsprogs)

另外,直接genkernel all是可行的,它会调用默认的设置进行编译kernel,并不存在不加参数就不能编译的问题

引用:
genkernel --menuconfig kernel
这种方式需要自己Load config

上传的图像
scrot-00.png (15.3 KB, 62 次查看)

作者: nonplus   发布时间: 2009-08-12

引用:
作者: nonplus
e2fsprogs-1.39.tar.gz 是由genkernel提供的,并不关e2fsprogs ebuild事情
估计是genkernel本身问题或者是安装genkernel出问题(自己没有纯猜测)

e2fsprogs是基本库,如果你想正常启动必须有它
至于genkernel为什么要用到它,那就要提到initramfs(通用启动使用initramfs,而它必须用到e2fsprogs)

另外,直接genkernel all是可行的,它会调用默认的设置进行编译kernel,并不存在不加参数就不能编译的问题


这种方式需要自己Load config



我升级的时候先也是安图中所行,load一个29的配置文件,小作修改,编译(但是很久),重启就panic.
后来,用29的内核启动(多亏了我把该用的都编译进内核了,不然它也启动不了),lsmod 发现了很多实际上我没有用的模块(如ipv6,无线网卡)
我想可能是没有load成功(但是我load后检查了相关项的),第二次我就把29的配置文件更名放到/etc/kernels/kernel-config-x86-2.6.30-gentoo-r4
这样编译就好了.....真是奇怪啊!

作者: 2603301009   发布时间: 2009-08-13

Load的时候最好给绝对路径,相对路径可能出错,指向问题

作者: nonplus   发布时间: 2009-08-13

引用:
作者: nonplus
Load的时候最好给绝对路径,相对路径可能出错,指向问题
哦,可能就是吧!

作者: 2603301009   发布时间: 2009-08-13

etc-update 去merge了 /etc/genkernel.conf 后就没有这个错误信息了。

作者: cateester   发布时间: 2009-09-19