V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
okudayukiko0
V2EX  ›  Linux

关于 Linux Kernel 的编译

  •  
  •   okudayukiko0 · 2016-09-16 17:40:59 +08:00 · 3489 次点击
    这是一个创建于 2996 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1.自己编译的内核(也删除了一些不需要的东西),内核的模块足足有 1 个 GB 那么大,比系统自带的内核大多了。
    2.Enable Loadable Module Support 的本质是什么?将所有模块都编译到内核文件中?或者只允许访问特定的模块(估计是在编译内核时产生的内核模块列表)?会不会对 KVM 、 VMware 、 VirtualBox 这类依赖内核模块的软件产生影响?会不会对安装驱动程序( eg : NVIDIA/AMD 驱动)有影响?
    9 条回复    2016-09-17 22:49:29 +08:00
    regist
        1
    regist  
       2016-09-16 17:49:47 +08:00
    估计你就删除了几个吧,如果编译一个普通 PC 配置的内核, kernel 中的驱动要去掉至少 90%
    Enable Loadable Module Support 就是字面的意思。对 vmware virtualbox 当然有影响,他们本身就需要打开这个内核开关。
    regist
        2
    regist  
       2016-09-16 17:51:25 +08:00
    我 13 年台式机,所有硬件都支持上, kernel 为 5MB ,/lib/modules 目录 15M
    你是如何弄到 1GB 那么大的...
    gorf
        3
    gorf  
       2016-09-16 19:10:52 +08:00
    我是在 gentoo 下,默认内核 config 加上一些支持,内核 6.3M , modules 1.8M
    raysonx
        4
    raysonx  
       2016-09-16 19:15:57 +08:00
    Loadable Module Support 就是允许内核按需加载预编译好的.ko 文件,而不用把所有模块都编译进内核。
    建议先从发行版拷一份编译内核的配置文件,再在此基础上编译自己的内核。
    helloworld2010
        5
    helloworld2010  
       2016-09-16 21:02:53 +08:00 via iPhone
    你可以把系统的 config 文件来覆盖掉源码的 config 文件,那样编译的 kernel 就是匹配呢系统的 img
    第二个意思是支持可装载模块,内核运行时可动态加载和卸载内核模块
    wsy2220
        6
    wsy2220  
       2016-09-17 01:09:01 +08:00 via Android
    你把调试符号也编进去了吧
    okudayukiko0
        7
    okudayukiko0  
    OP
       2016-09-17 17:01:14 +08:00
    @wsy2220 果然是因为把调试符号编译进去了,砍掉一些内核调试选项后,文件小多了。
    okudayukiko0
        8
    okudayukiko0  
    OP
       2016-09-17 17:35:54 +08:00
    此外, Linux 内核的 Live Patching 怎么用?打算在内核中编译 Grsec 和 l7filter 的 Patch ,但又不是完全编译,只是将这几个 Patch 编译为可用的内核模块而已,我的机器编译内核比较慢。
    danili
        9
    danili  
       2016-09-17 22:49:29 +08:00
    ER-X 路由器的内核 3M 大小
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2904 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 03:42 · PVG 11:42 · LAX 19:42 · JFK 22:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.