对 Linux 的了解一直停留在简单的 command line 层面,比如 ls
能列出所有当前文件夹下的文件和文件夹,但这个功能是怎么实现的?能不能自己定义命令来简化日常的工作?在安装完一个软件后,安装在里哪里?比如说安装完了 node, 为什么在终端能使用 npm 指令了?在/
目录下有 /bin, /var, /etc, /home, /dev 等文件夹,这些文件夹都是做什么用的?为什么要按照这种方式划分?有很多类似于这一类的关于 Linux 操作系统的问题一直得不到解答,有时花了不少时间才能解决一个小问题,所以这段时间就将操作系统的学习提上了议程。
要比较全面的了解新的知识,最好的办法还是读书。因为入门的书籍更侧重的是广度,通常内容不会太难,但是基本能囊括需要了解的知识点,之后如果想在某个领域继续深究,可以再做进一步学习。《鸟哥的 Linux 私房菜》算是 Linux 历史上最畅销的中文书籍,行文比较轻松,更像是有个 Linux 高手在你身旁将 Linux 知识娓娓道来。
作者
鸟哥原名蔡德明,台湾人,外号菜鸟,因为大学三年级有学弟叫他菜鸟学长,最后干脆让大家统称他鸟哥。本以为鸟哥应该是在计算机领域有所深耕,没想到人家是个环境工程博士,因为在研究所里不得不用上电脑,所以自学了 Linux,想想在98年左右时,资源并不是那么丰富的情况下,鸟哥还能做到这种程度,确实是挺佩服的。有时候我们缺的并不是周围的资源,而是专注与恒心。
内容
- Linux 的规划与安装
- Linux 文件、目录与磁盘格式
- Shell 与 Shell Scripts
- Linux 使用者管理
- Linux 系统管理员
整本书的内容大概分为上面目录的5大块,深入浅出的介绍了 什么是 Linux 、 Linux 系统的规划与安装、Linux 的文件管理模式、 Linux 系统的使用和系统管理等,步步推进。每个章节的内容都很详细,不仅仅讲了怎么做,还讲了为什么要这么做,并且每个章节有附有实际代码运行的结果,即使没有办法马上上机尝试,也能很顺畅的读下来,当然边看边尝试是最好的学习方式。
这本书没有包括的是对 Linux 系统某些方面问题的深入探讨,比如说Linux 环境下的性能问题等。因为是一本入门级别的书籍,书本以广为主,深度探究需要有兴趣的人自己另外探究。
适合谁读?
1 适合所有对 Linux 有兴趣,想了解 Linux 是什么,怎么运作的人。
2 更适合我这种没有 Linux 基础,对这一知半解的开发者,虽然在看完一遍后,多数内容是记不住的,在实践中也不一定会用到,但可以在需要时回书细看,了解了大概内容,也才能知道怎么去 Google 问题。
3 这本书最适合的是做运维的朋友,成天要和服务器打交道,了解服务器的原理和运作机制是至关重要的,花点时间系统学一学,应该能有事半功倍的效果。
总结
像这类编程性的书籍,没有办法进行浓缩总结,只能做个整体介绍和推荐,具体的内容还需要大家自己去翻看。
现在技术发展速度迅猛,区块链火了一阵,AI 门槛也低了不少,大家在用的编程语言五花八门 Python, Java, Scala, Golang, Javascript 等等,但不管怎么发展,基础都是不变的,不管不同语言在不同场景下的优劣如何,写成程序后最终还是得跑在操作系统上,跑在硬件上。虽然现在各家云服务提供商已经帮我们省去了硬件组装搭建服务器的基本步骤,虽然公司里面会有专门管服务器的人或者部门,但是对操作系统的了解不仅仅是对如何用,还有这么设计背后的原因,而这些设计思想是相通的,是可以在做软件设计时可能可以借鉴的。
前半本书是下载下来在 Apple Books 上看的,体验不好,标注和突出不明显。更推荐直接到官网上看,有简体中文和繁体中文版,鸟哥的 Linux 私房菜。