紧跟云计算潮流,从底层了解一下CoreOS系统,先从编译CoreOS系统做起!
编译准备
CoreOS继承了ChromeOS的编译系统,十分精致,隐藏了诸多细节。我们先按照 官方指南上面来初始化环境。
|
|
环境初始化好后,开始探寻编译的一些细节。编译开始要执行:
|
|
这个命令里面大有玄机。这个命令会下载一个SDK包,然后展开到chroot目录里面,进行一系列配置,然后在chroot到该目录中。可以打开Log查看到一些蛛丝马迹。
比如修改:./chromite/lib/cros_build_lib.py,在Runcommand里面加上一些日志记录。
|
|
经过追踪后发现,这个脚本是关键: src/scripts/sdk_lib/make_chroot.sh。
然后把这个脚本执行时用 ‘bash -x’ 参数,可以看到更多的细节。
|
|
这个脚本执行完后,就会执行src/scripts/sdk_lib/enter_chroot.sh ,进入chroot环境了。