编译、裁剪、安装、删除 Ubuntu内核和模块管理

简介: <div class="bct fc05 fc11 nbw-blog ztag">一、下载最新内核文件<br><blockquote>地址:http://www.kernel.org,一般下载Full Source版本。<br> 下载完毕后,放到任意文件夹中,使用命令:<br><pre class="prettyprint"><p><span>tar jxvf linux</span><
一、下载最新内核文件
地址:http://www.kernel.org,一般下载Full Source版本。
下载完毕后,放到任意文件夹中,使用命令:

tar jxvf linux-x.x.x.tar.bz2     //版本号自行填写

二、安装必要的编译工具

sudo apt-get install build-essential kernel-package libncurses5-dev

三、裁剪内核的方法
目前有三种流行的配置方式:
  1. make menuconfig:文本界面,配置高效
  2. make xconfig:Qt编写,GUI配置,建议初学者使用
  3. make oldconfig:互动性的脚本,用当前内核的配置作为配置标准,重新编译新内核,使用与只是为了升级的选择
四、编译内核最简单方法
编译内核最快的方法就是用当前内核设置标准来编译最新版本的内核,具体操作如下:

cd linux内核解压目录

sudo make oldconfig

sudo make-kpkg clean

sudo make-kpkg -initrd --initrd --append-to-version=xxx kernel_image kernel-headers

//xxx用自己喜欢的名字

注意:如果不是第一次编译Linux内核,一定执行清理命令,对源代码目录进行彻底清理,否则编译会出现问题。

sudo make mrproper

这种方法最适合用于 更新内核系统版本
五、编译和裁剪内核
进入系统内核文件夹,输入如下命令以文本方式裁剪和配置内核。

sudo make menuconfig

每个选项前面又[],空的选项表示不选择[N],有的选项表示要编译进内核[Y],有M标志的表示编译成动态的模块(M)。
桌面应用环境的内核配置过程为:
  1. 常规设置
  2. 模块支持
  3. 计算机硬件支持
服务器的内核配置过程主要对内核进行性能优化。

1.定制内核参数:
桌面应用环境的内核配置过程:
A.常规设置(General setup)
Prompt for development and/or incomplete code/drivers:选中用于支持新的硬件
POSIX Message  Queues 和 Kenel->user space:多数用户用不到
裁剪Ubuntu内核和模块管理 - conanswp - 不混出个人样来,你对得起谁?
 
B.模块支持(Enable loadable module support)
模块的设计可以实现内核在运行时的功能扩展,linux的内核其实就是Kernel加模块,这样的好处就是减小内核体积并提高了Linux内核的灵活性。配置工具中凡是可以选择成圆点的项目,就可以被编译成模块;如果可以选择成对对勾,则是编译进内核。
裁剪Ubuntu内核和模块管理 - conanswp - 不混出个人样来,你对得起谁?
 
C.对硬件设备的支持
在终端中安装Hardinfo或者lshw,可以彻底了解硬件。

sudo apt-get install hard info

安装完成后终端输入:

hardinfo

启动软件检测计算机硬件

 D.文件系统支持
定制LInux支持的文件系统,通常又fat,ext2/3/4,ntfs等。

2.编译和安装内核
A.编译内核

sudo make-kpkg clean

sudo make-kpkg -initrd --initrd --append-to-version=xxx kernel_image kernel-headers

//xxx可以用自己使用的字符替换,不能大写

B.安装裁剪好的内核
编译好的内核在内核文件的上一层目录,包括linux-headers....和linux-image...两个文件。
安装操作如下:

cd..

sudo dpkg -i linux-image....deb

//桌面用户只需安装这个image文件即可

具体的卸载方法为:

uname -a  #使用这个命令可以查看当前系统使用的内核。
dpkg --get-selections|grep linux #列出当前内核。

sudo apt-get remove linux-image-2.6.15-23-386
这样就可以实现自动删除内核文件了,还可以释放磁盘空间。
另外还要记录一个命令。
uname -a
使用这个命令可以查看当前系统使用的内核。

相关文章
|
22天前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
79 4
Linux系统之Ubuntu安装cockpit管理工具
|
27天前
|
Ubuntu 应用服务中间件 nginx
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
本文是关于Ubuntu系统中使用ffmpeg 3.2.16源码编译OpenCV 3.4.0的安装笔记,包括安装ffmpeg、编译OpenCV、卸载OpenCV以及常见报错处理。
114 2
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
|
27天前
|
Ubuntu Linux C语言
Ubuntu安装笔记(二):ubuntu18.04编译安装opencv 3.4.0 opencv_contrib3.4.0
本文介绍了在Ubuntu 18.04系统上编译安装OpenCV 3.4.0及其扩展包opencv_contrib 3.4.0的详细步骤,包括下载源码、安装依赖、配置CMake和编译安装,以及常见问题的解决方法。
69 1
Ubuntu安装笔记(二):ubuntu18.04编译安装opencv 3.4.0 opencv_contrib3.4.0
|
16天前
|
Ubuntu 编译器 计算机视觉
Ubuntu系统编译OpenCV4.8源码
【10月更文挑战第17天】只要三步即可搞定,第一步是下载指定版本的源码包;第二步是安装OpenCV4.8编译需要的编译器与第三方库支持;第三步就是编译OpenCV源码包生成安装文件并安装。
|
23天前
|
Kubernetes Ubuntu Docker
从0开始搞K8S:使用Ubuntu进行安装(环境安装)
通过上述步骤,你已经在Ubuntu上成功搭建了一个基本的Kubernetes单节点集群。这只是开始,Kubernetes的世界广阔且深邃,接下来你可以尝试部署应用、了解Kubernetes的高级概念如Services、Deployments、Ingress等,以及探索如何利用Helm等工具进行应用管理,逐步提升你的Kubernetes技能树。记住,实践是最好的老师,不断实验与学习,你将逐渐掌握这一强大的容器编排技术。
75 1
|
27天前
|
Ubuntu Linux
软件安装(五):Ubuntu 18.04安装Teamviewer 看一遍就会
这篇文章介绍了在Ubuntu 18.04系统上通过图形界面和命令行两种方法安装TeamViewer远程控制软件的步骤。
26 2
|
9天前
|
消息中间件 Ubuntu Java
Ubuntu系统上安装Apache Kafka
Ubuntu系统上安装Apache Kafka
|
15天前
|
Ubuntu Linux
Ubuntu 16.04下无法安装.deb的解决方法
希望以上策略能有效协助您克服在Ubuntu 16.04中安装.deb文件时遇到的挑战。
16 0
|
28天前
|
并行计算 Ubuntu Linux
Ubuntu学习笔记(五):18.04安装多版本CUDA
这篇博客文章介绍了在Ubuntu 18.04系统上如何安装和切换不同版本的CUDA,以及如何安装不同版本的cuDNN。
149 2
|
28天前
|
并行计算 PyTorch TensorFlow
Ubuntu安装笔记(一):安装显卡驱动、cuda/cudnn、Anaconda、Pytorch、Tensorflow、Opencv、Visdom、FFMPEG、卸载一些不必要的预装软件
这篇文章是关于如何在Ubuntu操作系统上安装显卡驱动、CUDA、CUDNN、Anaconda、PyTorch、TensorFlow、OpenCV、FFMPEG以及卸载不必要的预装软件的详细指南。
2557 3