能自己做网站吗,网站开发要注意安全性,wordpress 移动页面 自动跳转,电商网站图片处理为什么要自己编译内核
优点
定制化#xff1a;你可以根据自己的硬件和需求配置内核#xff0c;去掉不必要的模块#xff0c;优化性能。性能优化#xff1a;移除不需要的驱动程序和特性#xff0c;减小内核体积#xff0c;提高系统性能。最新特性和修复#xff1a;获取…为什么要自己编译内核
优点
定制化你可以根据自己的硬件和需求配置内核去掉不必要的模块优化性能。性能优化移除不需要的驱动程序和特性减小内核体积提高系统性能。最新特性和修复获取最新的内核版本和特性或者提前应用一些补丁。学习机会通过编译内核可以更深入地理解Linux的内部工作机制。
缺点
复杂性编译和配置内核需要较高的技术水平过程复杂且容易出错。时间消耗编译内核是一个耗时的过程尤其是在资源有限的系统上。维护成本自己编译的内核需要手动更新和维护缺乏自动化工具的支持。兼容性问题手动配置不当可能导致硬件或软件兼容性问题需要仔细测试。
我的感受是
了解到内核相关的知识内核配置过程可以通过Kernelconfig.io[^4]网站查询。提前使用到最新版本的内核不用等论坛大佬的更新 内核体积大大缩小
过程
下载
网站下载linux内核源码[^1] [^2]并解压进入源码目录 linux内核https://www.kernel.org/ 清华镜像https://mirrors.tuna.tsinghua.edu.cn/kernel/v6.x/
安装依赖
参考脚本安装依赖[^3]
sudo apt install git wget fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison zstd debhelper配置文件
使用现有配置文件dppve.config[^3]
cp /xxx/dppve.config .config精简可选 先让系统尽可能多地加载模块使用工具自动保留已加载的模块[^5] [^6]可以精简掉巨量不需要的模块和驱动 尤其是驱动不精简时执行make可以发现make过程里的大部分时间都是在编译drivers开头的文件 make localmodconfig手动调整配置可选
make menuconfig使用ccache加速多次编译可选 安装配置ccache[^7] [^8]
sudo apt-get install ccache
export CCccache gcc
export CXXccache g 编译 这个步骤很慢网友讲可能需要1-3个小时 可能是我直接在实体机上编译的原因我第一次编译大约花费25分钟 经过localmodconfig精简、ccache后后续编译时间一般在2-8分钟感觉很快 make -j$(nproc)打包deb
make bindeb-pkg安装文件在源码文件夹同级目录生成 默认配置生成的通用linux-image deb文件约80Mlocalmodconfig精简后约20M 安装
安装软件包[^9]linux-libc-dev可不安装
# 查看
ls -lh ../linux-*.deb
# 安装
dpkg -i ../linux-*.deb启用
可使用grub-customizer管理grub配置更换内核加载 列表 设置
References
[^1]. The Linux kernel archives. (n.d.). https://www.kernel.org/ [^2]. 8.10. 编译内核. (n.d.). https://www.debian.org/doc/manuals/debian-handbook/sect.kernel-compilation.zh-cn.html [^3]. kernel_config · AtomGit_开放原子开源基金会代码托管平台. (n.d.). https://atomgit.com/fslong/kernel_config/ [^4]. Kernelconfig.io. (n.d.). https://www.kernelconfig.io/index.html [^5]. Linux 内核编译 —— make localmodconfig 简化内核配置流程-CSDN博客. (n.d.). https://blog.csdn.net/maijian/article/details/6202426 [^6]. 精简LINUX内核配置及快速编译的方法汇总_linux 最小配置 快速编译-CSDN博客. (n.d.). https://blog.csdn.net/exiaoqian/article/details/42522653 [^7]. 使用 ccache 加速内核编译. (n.d.). https://www.expoli.tech/articles/2023/07/06/Use-ccache-to-speed-up-kernel-compilation [^8]. Linux 5.10.20 上使用ccache加快内核编译速度安装配置及使用方法_kernel-5.10编译慢-CSDN博客. (n.d.). https://blog.csdn.net/weixin_48299611/article/details/115563624 [^9]. 查看、安装、卸载内核论坛深度科技. (n.d.). https://bbs.deepin.org/post/243646