其实关于这个问题,我相信大家肯定也通过各种渠道搜索,什么样的书籍比较好,然后购买一堆相关的书籍回来,但是到头来这些书也只有翻开几页或者是在家吃土的份。但其实推荐什么书,对于这个答案必然是不唯一的。

俗话说的好:适合自己的才是最好的。

那么什么才是适合Linux小白的书籍呢?首先你要明白,Linux是什么?我们常说Linux操作系统,那么当然Linux是一种操作系统。那你又会有疑问,我们虚拟上跑的不是Ubuntu么?没错Ubuntu才是正统意义上的操作系统,它的内核是Linux内核。所以我们将基于Linux内核的这一类操作系统统称为Linux操作系统。当面试官问你,你使用Linux操作系统吗?只要是你使用了Ubuntu,Redhat,Debian等等其他一列的操作系统,你都可以回答是的。

所以首先,入门小白想要对Linux有一个简单的了解,我推荐大家看的第一本书就是《鸟哥的Linux私房菜基础学习篇》。这本书可以誉为是最具知名度的Linux学习宝典。全书分为5个部分:第一部分着重说明Linux的起源及功能,如何规划和安装Linux主机;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口 shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全非常重要的Linux账号的管理,以及主机系统与程序的管理,如查看进程、任务分配和作业管理;第五部分介绍了系统管理员(root)的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。

掌握了这些基础知识,你也就对Linux有了一个浅显的入门,全书通篇浏览,熟悉是最重要的。对于一个有命令行的操作系统,操作远远要比单纯看书重要的多,你需要经常动手敲命令才能对这个系统有很深入的探索。这就好比我有一年在做POS机项目开发的时候,Pos机上只能输出Log文件,而没有Debug的方式,那么我如何能够时时的监测我的log文件呢?大家能想到的第一个方式必然就是vim打开Log文件但是这个有个问题是,Log文件很大,你一行行的按照时间找过去是非常费力的。这时候又会想到tail命令,只显示文件的尾行,这确实能够直接定位到最新产生的Log内容,但是如何做到实时呢?

这个时候我推荐大家使用一个命令行手册大全(网站详见下链接),Linux的命令复杂,能够巧妙的使用可以使工作事半功倍,但人的大脑不不比机器,不能记住全部命令后面的参数,这时候随时查阅就显得尤为重要。所以经过查阅,tail -f命令就轻松达到了我的需求,方便我随时看到机器输出的Log文件里的内容。 《Linux命令手册大全》 https://www.linuxcool.com/

对于小白来说,一个扎实的基础比什么都重要,赶紧尝试下,动起手来,翱翔在命令的海洋之中吧。

如果你已经对Linux有了很好的认识,并且命令行控制也不在话下的时候,就可以为自己选择一个喜爱的钻研方向,这个时候我推荐大家看:《Linux内核设计与实现》 《Linux多线程服务端编程》《Linux内核源码剖析》等书,详细的介绍Linux内核的实现,讲解内核的源码,针对Linux系统的特点进行编程。

不积跬步无以至千里,冰冻三尺非一日之寒。小白从积累命令开始坚持,最后也能成为Linux的大神。