Linux Kernel的编译笔记

再一次,编译kernel,这次又遇到新问题: 必要的config以及最小化。 目标是支持docker,KVM, usb串口等。

方法:

  1. 默认的选项 localmodconfig, 快速获得需要的module。
  2. 用scripts/kmod/merge_config.sh 来添加增量
  3. 用 https://github.com/moby/moby/blob/master/contrib/check-config.sh 来获得docker配置项
  4. make && make modules_install && make install
  5. /etc/default/grub 和 update-grub

问题和解决:

  1. 利用localmod会漏掉一些模块,所以需要3来检查缺失项:用2来做merge。
  2. 缺少aufs,因为kenrel没有带,需要patch http://aufs.sourceforge.net/;zfs我没有用到,所以忽略。

– Storage Drivers:
– “aufs”:
CONFIG_AUFS_FS: missing
– “btrfs”:
– CONFIG_BTRFS_FS: enabled
– CONFIG_BTRFS_FS_POSIX_ACL: enabled
– “devicemapper”:
– CONFIG_BLK_DEV_DM: enabled
– CONFIG_DM_THIN_PROVISIONING: enabled
– “overlay”:
– CONFIG_OVERLAY_FS: enabled
– “zfs”:
– /dev/zfs: missing
– zfs command: missing
– zpool command: missing

其余边角料:

  1. journalctl -xe 来查docker启动日志

 

发表评论

邮箱地址不会被公开。 必填项已用*标注