FAQ 出现了System.map not found怎么办
出自Gentoo Linux Wiki
| 一般 • Portage • Wiki |
[编辑] 问题缘由
因为gentoo在启动中会检查模块的依赖性是否得到满足,所以会运行modules-update这个脚本。而这个脚本中寻找System.map的位置是/usr/src/linux/System.map。而不少人将/usr单独分区。于是在系统启动的过程中加载完/后,/usr并没有加载。于是当系统运行到modules-update脚本的时候就提示System.map找不到了。
[编辑] 解决的办法
- 不要单独分出/usr。当然这个要牺牲一些性能。
- 在安装内核时使用make install而不是gentoo handbook中的cp命令。
$ make install
这样会执行内核编译系统中的一个脚本,它会将内核文件复制至/boot目录,复制config,System.map带版本号的等文件至/boot目录,并且会在/boot创建不带版本号的config和System.map符号链接文件指向真实的带版本号的文件。然后再将/sbin/modules-update中引用到/usr/src/linux/System.map处修改为/boot/System.map即可。
