Linux内核编译和运行
2014-02-15 15:36
190 查看
内核获取网站:https://www.kernel.org/pub/linux/kernel/
步骤如下:
1、打开终端,更改用户权限为root。具体做法是在终端输入sudo su,然后按提示输入密码。判断是否是root用户是使用whoami命令,若输出为root则已经切换到root账户。
2、输入mv linux-2.6.36.tar.gz /usr/src,目的是把下载的内核源代码文件移到/usr/src目录。
3、输入cd /usr/src切换到该目录下。
4、输入tar zxvf linux-2.6.36.tar.gz,目的是解压内核包,生成的源代码放在linux-2.6.36目录下。
5、输入cd linux-2.6.36,切换到该目录下。
6、输入cp /boot/config-,然后按下Tab键,系统会自动填上该目录下符合条件的文件名,然后继续输入 .config,目的是使用在boot目录下的原配置文件。
7、配置内核
方法很多,主要有如下几种:
make mrproper
#make menuconfig //基于ncurse库编制的图形工具界面
如果没有ncurse 库
Ubuntu: 运行apt-getinstall libncurses5-dev
fedora : 运行 yum install ncurses-devel
#make config //基于文本命令行工具,不推荐使用
#make xconfig //基于X11图形工具界面
#make gconfig //基于gtk+的图形工具界面
由于对Linux还处在初学阶段,所以选择了简单的配置内核方法,即make menuconfig。在终端输入make menuconfig,等待几秒后,终端变成图形化的内核配置界面。进行配置时,大部分选项使用其缺省值,只有一小部分需要根据不同的需要选择。
对每一个配置选项,用户有三种选择,它们分别代表的含义如下:
<*>或[*]——将该功能编译进内核
[]——不将该功能编译进内核
[M]——将该功能编译成可以在需要时动态插入到内核中的代码
注意:SCSI 虚拟机的话要编译进去
8、编译内核只需在终端输入make,然后等待编译的完成。
9、sudo make modules (编译模块)
10、sudo make modules_install (安装模块)
11、make install
PS: 以下是内核无法启用的时候照下面做:
sudo mkinitramfs -o /boot/initrd.img-2.6.36
sudo update-initramfs -c -k 2.6.36
sudo update-grub2 //自动修改系统引导配置,产生grub.cfg启动文件。
注意:
之前安装内核2.6.32版本总是失败,虽然和gcc 高版本有点关联,但修改了内核文件,是可以兼容高版本的gcc,之后发现有可能是和我Ubuntu版本12.4有冲突,要么和GRUB2 有点关联,要么和图形界面有点关联,但做人要有恒心,做不出来也要想办法搞出来,之后我又下载了一个2.6.36版本,因为老师的龙芯系统就是2.6.36的内核,安装我电脑虚拟机,果然成功!发现是2.6.32版本太早导致有可能失败,我之前的内核版本是3.8.13.
相关文章推荐
- LInux 2.6 编译内核出现Question
- Linux : fedora 安装 vnc server
- Linux系统编程:客户端-服务器用FIFO进行通信
- Linux系统编程:dup2()重定向
- linux虚拟机和宿主机的互连
- Linux FIFO
- linux内核中的likely()和unlikely()宏
- vim 用法大全
- linux系统 进程管理一点总结【001】
- Linux高级程序进程管理
- Linux多线程程序设计学习笔记
- 究竟是谁杀死了中科红旗Linux?
- Linux vim 底下显示行号
- Linux环境变量的设置和查看方法
- Linux crontab 命令格式与详细例子
- Linux下ntpdate时间同步
- Linux高级程序进程管理
- Linux中find常见用法示例
- OMAPL138学习---typedef int(init_fnc_t)(void)
- linux命令之install安装命令