linux实践(一)-内核编译

内核编译
一. 环境
vmware:14.1.3版本
ubuntu:18.0.1版本
内核版本:linux-4.19.23(可去官网自行下载)
二. 查看系统原内核

uname -a

在这里插入图片描述
三. 下载内核压缩包,并导入到虚拟机中,解压
在这里插入图片描述
解压命令为

tar xf linux-4.19.23.tar.xz

在这里插入图片描述
四. 为了之后使用方便,给刚解压的文件加一个软链接。

ln-sv linux-4.19.23 linux

在这里插入图片描述
查看链接文件中的文件
在这里插入图片描述
五.配置内核
配置内核的指令有很多个,具体如下:

   make config:遍历选择所要编译的内核特性
   make allyesconfig:配置所有可编译的内核特性
   make allnoconfig:并不是所有的都不编译,而是能选的都回答为NO、只有必须的都选择为yes。
   make menuconfig:这种就是打开一个文件窗口选择菜单,这个命令需要打开的窗口大于80字符的宽度,打开后就可以在里面选择要编译的项了
   下面两个是可以用鼠标点选择的、比较方便哦:
   make kconfig(KDE桌面环境下,并且安装了qt开发环境)
   make gconfig(Gnome桌面环境,并且安装gtk开发环境)
   menuconfig:使用这个命令的话、如果是新安装的系统就要安装gcc和ncurses-devel这两个包才可以打开、然后再里面选择就可以了、通这个方法也是用得比较多的:

使用make menuconfig的界面如下:
在这里插入图片描述
有界面,操作更加方便,但是编译时间更长。
本次采用 make localmodconfig 进行编译,结果如下:
在这里插入图片描述
备注:配置内核阶段可能会遇到各种问题,需要配置各种支持库,具体情况参考博文二。

六. 编译内核
(1)编译内核需要生成映像文件和模块文件,映像文件由配置中的选择为<*>的文件编译链接而成,开机后直接加载在内存中运行模块文件将选择为的文件编译成.o文件,放在磁盘中,以备后来要用到,先配置映像文件,
输入

make bzImage

在这里插入图片描述
(2)然后编译模块文件,输入:

make modules

在这里插入图片描述
(3)把散落在各个文件夹下的.o文件组装起来,输入:

make modules_install

在这里插入图片描述
(4)安装内核,输入:

sudo make install

在这里插入图片描述
七. 配置启动项
(1) Ubuntu 系 统 为 GRUB(GRand Unified Bootloader )引导,需要更新grub
用update-grub命令可以直接更新grub启 动菜单(grub.cfg),生成相应的启动项 ,此时新版本的内核在第一个启动位置;
输入:

sudo update-grub

在这里插入图片描述
(2)在开机时进入Grub 界面后,按 shift 键可以进行选择内核 • 默认情况下grub界面并不显示, 修改grub界面显示时长需要 修改相应的配置文件 /etc/default/grub, 具 体 为 修 改 GRUB_HIDDEN_TIMEOUT 和 GRUB_TIMEOUT 参数 ( 在 ubuntu18.04 中只需 修改GRUB_TIMEOUT 参数)

sudo vi etc/default/grub

在这里插入图片描述
更改参数
在这里插入图片描述
(3)重启: 执行reboot 命令进行重启并选择 刚刚安装的内核 – 上一步执行update-grub 命令后默认以4.19.23内核运行

进入系统之后执行uname –a命令查看系 统版本,如果为4.19.23则内核安装启动成功
在这里插入图片描述
至此完成内核编译~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值