上篇已经准备好源码,接着就是配置,很多人都想直接从debian的默认拷过来,
这样省时,但是配置多,编译很浪费时间,如果这样,也就没必要自己编译内核了
而且版本的差异会产生一些配置的警告,这不是我想要的,我们要从最简配起,
让内核适应我们的机子,这样看起来更和谐,这里以amd64来配置~
1,make defconfig产生一个较小的配置,像amd64,会自动产生x86_64_defconfig对应于
.config这个文件
2,make nconfig自定义配置 nconfig 是在2.6.35之后推荐用的,也建议不要再用回以前的
menuconfig,
帮助信息 f2显示当前条目的信息,f6保存配置,f9退出配置菜单,<-和->上下级菜单,很方便
3,上图,一个全局图
4,先来第一节General setup,全局配置,再上图
讲解:
Prompt for development and/or incomplete code/drivers
这个是要的,如果你不选,你用的驱动可能会遇到问题
Local version - append to kernel release
这个是自定义版本,用->可以输入东西,比如-my-kernel之类的
Kernel compression mode (Gzip),内核镜像的压缩格式,下有一个小菜单,上图
默认是gzip,当然建议选择xz(上下键,空格选择就行,会退到上级菜单)
xz的包debian7默认已经装上了,如果要选lzma,还不如选xz
如果要用lzo的,要先装上lzop,速度上的区别基本可以忽略
Auditing support
Enable system-call auditing support
安全之类的问题,像selinux这种的,一般人用这个没什么用,忽略第一项,第二项也就没了
3.7改动之~~~~Timers subsystem
这个以前是在处理器那一个菜单中,现在在全局配置这里,不用更改就行
3.7改动之~~~~CPU/Task time and stats accounting,
有一个子菜单,以前是在上一层菜单,上图
其中Export task/process statistics through netlink (EXPERIMENTAL)
kvm是依赖这个的,建议默认就行,如果你极品的话,下面三个子选项忽略
当然如果你不要kvm那就忽略,kvm在哪?在后面章节
Control Group support
这个是systemd需要的,建议现在大家也用systemd,后面还有几个也是需要的,
都会一一说明,不用更改,默认就行
systemd是2.6.39搞进来的,现在debian的版本是44,也很好用了~~
Initial RAM filesystem and RAM disk (initramfs/initrd) support
现在都是initramfs了,勾上,debian也是这样搞的,如果你在后面勾上ram disk(initrd),
会增加内核15k,在哪?在后面的章节
Optimize for size
可要可不要,要的话,内核会减小一点,现在的gcc一般不会产生错误,不在乎的话忽略
Profiling support
Kprobes
这两个是分析调试用的,可选可不选,一般人没什么用
还有些没讲到的,像irq,rcu,swap这样的保持默认,不用纠结,内核文档说明非常多
按上面讲的一步步来,保证可以编译出一个称心如意的内核
我一直是这样编译的,希望不会对大家产生误导~~~
来源:http://www.tognu.com/
这样省时,但是配置多,编译很浪费时间,如果这样,也就没必要自己编译内核了
而且版本的差异会产生一些配置的警告,这不是我想要的,我们要从最简配起,
让内核适应我们的机子,这样看起来更和谐,这里以amd64来配置~
1,make defconfig产生一个较小的配置,像amd64,会自动产生x86_64_defconfig对应于
.config这个文件
2,make nconfig自定义配置 nconfig 是在2.6.35之后推荐用的,也建议不要再用回以前的
menuconfig,
帮助信息 f2显示当前条目的信息,f6保存配置,f9退出配置菜单,<-和->上下级菜单,很方便
3,上图,一个全局图
图片:1.png
![点击查看原图](http://www.tognu.com/attachment/thumb/1301/thread/4_2_b93e645731d8396.png)
4,先来第一节General setup,全局配置,再上图
图片:1.png
![点击查看原图](http://www.tognu.com/attachment/thumb/1301/thread/4_2_b93e645731d8396.png)
图片:3.png
![点击查看原图](http://www.tognu.com/attachment/1301/thread/4_2_cbca6e330cee42a.png)
讲解:
Prompt for development and/or incomplete code/drivers
这个是要的,如果你不选,你用的驱动可能会遇到问题
Local version - append to kernel release
这个是自定义版本,用->可以输入东西,比如-my-kernel之类的
Kernel compression mode (Gzip),内核镜像的压缩格式,下有一个小菜单,上图
图片:4.png
![点击查看原图](http://www.tognu.com/attachment/1301/thread/4_2_0ec3de6c3a5d4e6.png)
默认是gzip,当然建议选择xz(上下键,空格选择就行,会退到上级菜单)
xz的包debian7默认已经装上了,如果要选lzma,还不如选xz
如果要用lzo的,要先装上lzop,速度上的区别基本可以忽略
Auditing support
Enable system-call auditing support
安全之类的问题,像selinux这种的,一般人用这个没什么用,忽略第一项,第二项也就没了
3.7改动之~~~~Timers subsystem
这个以前是在处理器那一个菜单中,现在在全局配置这里,不用更改就行
3.7改动之~~~~CPU/Task time and stats accounting,
有一个子菜单,以前是在上一层菜单,上图
图片:5.png
![点击查看原图](http://www.tognu.com/attachment/thumb/1301/thread/4_2_65966361a00a34f.png)
其中Export task/process statistics through netlink (EXPERIMENTAL)
kvm是依赖这个的,建议默认就行,如果你极品的话,下面三个子选项忽略
当然如果你不要kvm那就忽略,kvm在哪?在后面章节
Control Group support
这个是systemd需要的,建议现在大家也用systemd,后面还有几个也是需要的,
都会一一说明,不用更改,默认就行
systemd是2.6.39搞进来的,现在debian的版本是44,也很好用了~~
Initial RAM filesystem and RAM disk (initramfs/initrd) support
现在都是initramfs了,勾上,debian也是这样搞的,如果你在后面勾上ram disk(initrd),
会增加内核15k,在哪?在后面的章节
Optimize for size
可要可不要,要的话,内核会减小一点,现在的gcc一般不会产生错误,不在乎的话忽略
Profiling support
Kprobes
这两个是分析调试用的,可选可不选,一般人没什么用
还有些没讲到的,像irq,rcu,swap这样的保持默认,不用纠结,内核文档说明非常多
按上面讲的一步步来,保证可以编译出一个称心如意的内核
我一直是这样编译的,希望不会对大家产生误导~~~
来源:http://www.tognu.com/