2023 年学习 Linux 是否值得?
随着云、无服务器技术以及预测和人工智能工具的出现,我们似乎几乎不需要再学习编码了,更不用说学习与我们已经熟悉的操作系统截然不同的另一种操作系统了。但在 2023 年,仍然有充分的理由学习 Linux。如果你投入时间,你可能会发现它能让你更好地理解云、它的代码以及你正在运行、编写和学习的应用程序的架构。
一切都由 Linux 支撑
云端可能提供只需单击几下即可启动并运行代码的功能,但后台运行的功能很可能由 Linux 提供支持。在 AWS 上,亚马逊在 EC2 上提供自己的 Linux 发行版,其中内置了云工具,而在 Azure 上,我们可以使用 Azure Kubernetes 服务启动数百个 Ubuntu 容器集群 — GCP、Akamai 和其他公司也可以这样做。这些只是云端提供的、由 Linux 提供支持的工具的一部分。
虽然想象一个基于无服务器调用构建的应用程序几乎不需要接触 Linux 终端当然是件好事,但这最终并不适用于每个应用程序。您的云应用程序或服务的复杂性和需求可能需要容器、CI/CD,甚至一两个虚拟机——而了解 Linux 只能帮助您理解如何使用基于 Linux 构建的工具。
对于故障排除和自动化来说尤其如此。部署代码、进行 CI/CD 测试,然后部署到生产容器可能会感觉很顺利,但前提是一切正常。如果容器错误引用了依赖于 Linux 上安装的服务的入口点命令,您能否有效地读取容器错误?或者在没有理解的情况下发现容器上的 Linux 文件系统存在问题?您是否可以使用云的命令行界面和脚本语言自动执行操作以最大限度地提高效率?
这些问题的答案可能是“是的,只要有足够的时间和搜索。”但是,如果您已经掌握了 Linux 语言,则可以减少执行任何这些操作所需的时间,因为您已经知道幕后发生了什么,而无需手动执行任何操作。了解您的架构堆栈非常有价值,而 Linux 可能正在为您的堆栈提供动力。
Linux 并非遗留系统
您可能还记得,2020 年,美国一些州迫切需要 COBOL 程序员来帮助处理他们 40 多年的大型机。也就是说,总是有遗留程序需要维护——但 Linux 甚至不是遗留程序(事实上,COBOL 也不是——某些东西老旧并不意味着它过时了)。
正如我们上面所述,即使我们用容器和无服务器选项混淆了云,Linux 仍是云的驱动力。但此外,云的出现并不意味着普通的 Linux 服务器部署已经消失。有一些遗留服务、从本地数据中心迁移到云的系统,以及复杂或成本高昂的应用程序,在我们能够完全控制服务器设置的情况下,它们会变得更好——是的,有时人们会发现他们必须从无服务器云支持解决方案切换到 Linux 服务器上的自定义安装,无论是为了提高性能、节省资金还是访问云平台尚未实现的功能。
您可能还想将其视为我们使用版本控制的原因——因为我们很少是唯一从事项目的人。即使我们在一家新公司开始新工作,我们也会继承与我们一起工作的每个人的做法和偏好。如果我们在更成熟的地方呢?我们有多年的架构、技术堆栈变更和具有特殊需求的项目需要考虑。
如果能够进入这些情况,只需要了解当前问题的具体细节,而不需要与承载它的系统作斗争,那不是很好吗?
对于 Linux 来说,定制才是王道
虽然将我们对正常运行时间和安全性的大部分担忧转嫁给我们的云合作伙伴通常是一件好事,但这往往会导致失控。如果我们需要特别关注我们的架构、安全性、配置或其他方面,那么没有什么比一个简单的 Linux 服务器(在云端或本地)更好的了。我们可以选择要使用哪个版本的 Kubernetes,或者由于合规性问题而维护我们自己的共享文件托管。或者可能是内核本身需要更改。由于 Linux 是开源的,我们可以对其核心进行更改,如果这对我们的工作是必要的 - 例如,如果我们有一个 RAM 密集型应用程序并且想要禁用大页面限制。
注重安全的人可能还会喜欢 Linux,因为它为用户、文件、网络等提供了功能齐全的安全选项。将主机入侵检测系统与您现有的基于云的日志和警报配对,以了解何时在您的 Linux 服务器上执行某些操作,并对其采取行动。使用任意数量的 Linux 工具或使用专为安全专业人员设计的发行版执行渗透测试任务;使用 SELinux 等 Linux 安全模块来保护您的文件系统,使其得到美国政府的批准。
并不是说 Windows 或 Mac 没有提供这些选项 - 但它们很少像在 Linux 上那样能够根据用户和情况进行定制。
结论
虽然在编写和运行代码方面,Linux 可能不再像以前那样普遍,但这并不意味着它不应该成为您的必备工具。随着您成长(作为开发人员、管理员、工程师),了解运行代码和应用程序的核心只会对您有所帮助。
您不需要深入研究 Linux 内核(除非您愿意),但了解底层架构的工作原理只会让您变得更好,并帮助您做出更好的选择。云可能彻底改变了我们使用技术的方式,但这并不意味着技术本身已经发生了深刻的变化,而且最有可能的是,这项技术正在运行 Linux。
了解有关 Linux 的更多信息
想要了解有关 Linux 以及它与云计算的更多交集?查看我的课程“保护云中的 Linux ”。或者,查看 Pluralsight 的Linux 基础知识学习路径。
要了解今年需求旺盛的技能列表,请查看 Pluralsight 的 2023 年顶级技术技能。
免责声明:本内容来源于第三方作者授权、网友推荐或互联网整理,旨在为广大用户提供学习与参考之用。所有文本和图片版权归原创网站或作者本人所有,其观点并不代表本站立场。如有任何版权侵犯或转载不当之情况,请与我们取得联系,我们将尽快进行相关处理与修改。感谢您的理解与支持!
请先 登录后发表评论 ~