分享

我与阿里云的一千零一夜-010-挑个趁手兵器(其一)

 偏扁豆 2021-11-24

0x0 前言

自古习武之人,必有好兵器傍身,可谓如虎添翼。

我们既然要在云上“兴风作浪”,那必然要选一把趁手兵器。常见的容器基础操作系统镜像主要有alpine,centos,Ubuntu,Debian等,busybox是包含一定工具的基础镜像,scratch是空镜像。这里值得注意的是,他们有的虽然有操作系统的名字,但并不能和真正的操作系统划等号,因为他们都在复用宿主机的内核模块实现上层功能。

好的兵器就那几种描述,锋利程度、重量、长度、形状是否趁手。

好的操作系统基础镜像不仅需要考虑效率,还要考虑可移植性、分发效率、开发者用得是否顺手、安全性、稳定性等情况。

0x1 关于标准库

C语言标准库是所有操作系统运行其他软件的基础,毕竟操作系统是C语言开发的,uclibc,eglibc,glibc,musl-libc是几种常见的C语言标准库,musl libc和glibc较为常见,alpine内置musl-libc,而centos、Ubuntu、Debian一般内置glibc。

基于不同标准库开发的二进制程序是有差异的,因此首要基于已有程序的标准库版本选择基础镜像。

0x2 关于包管理

alpine基于apk包管理工具,centos基于rpm/yum包管理工具,Ubuntu基于apt包管理工具,Debian基于dpkg包管理工具。

当然这些都不是固定的,你甚至可以定制这些组合,但毕竟功夫花在刀刃上不是吗?

0x3 关于shell版本

bash,csh,sh,zsh等,都是可以定制装入容器的。在没有特殊需求情况下,建议采用使用最广的bash作为解释器。
0x4 小结

在讨论操作系统的时候,很多纠结点是桌面环境的华丽或简约,是启动器的优雅与小巧,当然也包括上述所有东西,最不可少的就是系统里的各类工具软件的丰富程度。

但事实上,绝大多数人会选择自己熟悉的。

月是故乡明,不是因为家乡多特别,是你熟悉家乡的月光与风景。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多