自动检测和管理内核配置选项的工具
autokernel的Python项目详细描述
<;br/>;<;br/>; [![自动内核](./docs/imgs/autokernel_横幅.svg)](https://autokernel.oddlama.org) <;br/>;<;br/>
[快速入门指南](https://autokernel.oddlama.org/en/latest/intro/quick-start-guide.html)| [文档](https://autokernel.oddlama.org/en/latest)| [Gitter聊天](https://gitter.im/oddlama-autokernel/community)
[![PyPI](https://img.shields.io/pypi/v/autokernel.svg)](https://pypi.org/pypi/autokernel/) [![MIT许可证](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE) [![文档](https://readthedocs.org/projects/autokernel/badge/?version=latest)](https://autokernel.oddlama.org/en/latest/?徽章=最新) [![吉特](https://badges.gitter.im/oddlama-autokernel/community.svg)](https://gitter.im/oddlama-autokernel/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
关于autokernel
Autokernel主要是一个内核配置管理工具。 它的主要目的是从 更正式的配置描述。 为了帮助您编写配置,它附带了一些有用的功能:
- 检测系统的内核选项(基于/sys中的信息)
- 以更结构化和更理智的方式管理内核配置。 配置语句的选项冲突检测与条件表达式 允许编写可用于多个内核版本的声音和模块化配置。在
- 构建内核(和initramfs)并将它们安装到系统上
您可以将其用于上述任何组合,没有必要 如果只想检测设备的选项,请将其用作生成系统。在
请看一下[简介](https://autokernel.oddlama.org/en/latest/intro/introduction.html) 文档中的一节,它解释了 此工具的设计目的及其工作原理。在
检测内核选项|自动满足内核选项 ———————————————————————————- | ———————————————————————————- [![腹水病人](https://asciinema.org/a/320174.svg)](https://asciinema.org/a/320174)|[![腹水病人](https://asciinema.org/a/320179.svg)](https://asciinema.org/a/320179)
快速入门
要立即开始,请查看[快速入门指南](https://autokernel.oddlama.org/en/latest/intro/quick-start-guide.html)。 有关命令的深入解释,请访问[用法部分](https://autokernel.oddlama.org/en/latest/contents/usage.html)。在
##安装
您可以使用pip安装autokernel,也可以从源代码运行:
皮普
`bash pip install autokernel `
源代码
`bash git clone "https://github.com/oddlama/autokernel.git" cd autokernel pip install -r requirements.txt ./bin/autokernel.py --help `
然后,您应该运行一次autokernel setup来创建一个默认配置 在/etc/autokernel中。在
内核强化
如果您对强化内核感兴趣,请特别注意: 内核感知模块 硬化([强化.conf](./autokernel/contrib/etc/modules\/强化.conf)),即 兼容任何内核版本>;=4.0。每一个选择都有完整的文档记录 并解释道。随时根据您的需要调整它。在
##致谢
我要特别感谢以下项目及其背后的人:
- [kconfiglib](https://github.com/ulfalizer/Kconfiglib)让awesome python库加载和处理Kconfig文件,而这是这个项目不可能实现的。在
- [sympy](https://www.sympy.org/)用于复杂的符号逻辑求解器
- [lark](https://github.com/lark-parser/lark)用于伟大的解析库
- [LKDDb](https://cateee.net/lkddb/)用于提供awesome Linux内核驱动程序数据库(用于选项检测)
- [KSSP](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)查看内核强化选项的列表
- [CLIP-OS](https://docs.clip-os.org/clipos/kernel.html#configuration)为他们提供了良好的文档和精心选择的内核选项
- [kconfig harded check](https://github.com/a13xp0p0v/kconfig-hardened-check)获取来自多个内核强化资源的选项集合
- 项目
标签: