我的Linux学习历程:那些我看过的Linux书籍们

[+]查看原图http://www.ituring.com.cn/article/119401

  来北京工作已经一个多月,大都市的生活比起读大学要忙碌得多,尤其是出行,基本以小时为基本的计时单位。有时茫然看着窗外车水马龙,会有些迷茫自己选择的是对还是错。

  题外话不多说,回归这次的主题,扒一扒我看过的那些Linux相关的书籍。

  对于Linux的了解和接触,缘起自大一时候的Linux限选课,老师说这门课可选可不选,但是选修后考试挂了的话需要补考。当时的我还比较爱学习,于是兴冲冲地选修了这门课,用的是清华大学出版社出版的《Ubuntu Linux应用技术教程》。这本书写的并不是很好,里面对于图形界面的叫法还是最原始的XWindows,此书一大半都是基于图形界面说什么安装啊、应用软件使用啊、7788的。但也简单讲了bash的使用和常见的命令,比如ls -all然后用管道|将输入导入至wc -l来计算文件数,还有一些简单的vi编辑器的使用,Shell脚本的写法。

  当时因为才开始学的原因,什么都不懂,渐渐地,也就失去兴趣没怎么好好学。课程对应的实验都是和老师卖萌才过的,考试的时候也就是背了一下往年的考题,考完就忘得一干二净。现在想起来,还有点小后悔。

  本以为噩梦就此结束,我与Linux应该是老死不相往来,作为一名从小学四年级就开始学习使用Windows的用户,我真的很难适应和使用Linux。可是大二学习操作系统原理的时候再一次无奈了,我们的一切实验的环境都是在Linux下面,使用那些基本fork() pipe() 等Linux下面的C函数进行操作系统的实验。当时在极其痛苦的情况下重拾课本,花了整整一周时间去学习使用Shell,学习简单的C语言(妈的,看的是谭浩强的书),会用vi来编辑,会手动写Makefile使用gcc编译。

  这期间通过学长的介绍知道鸟哥这位Linux大牛,开始阅读他的《鸟哥的Linux私房菜》。很遗憾的是,鸟哥的教程是基于CentOS来介绍的,看完开头极其冗余复杂的安装部分,我就“阵亡了”。“妈妈啊,快来救我,Linux怎么这么复杂,什么Ubuntu、什么CentOS,还完全不怎么一样。”

  真正意义上接触并使用Linux,严格意义上说还得感谢“笨兔兔”这位Linux大牛。当时 Ubuntu 12.04 正好才出,本着不装逼就不会死的精神,我安装了这个系统,准备弄个双系统来装装逼。在研究如何配置 Ubuntu 12.04 的时候正好搜到了笨兔兔在他的博客发表的配置博文,当时也就是按照教程一行一行地复制粘贴命令。稍微知道如何使用 PPA 来安装 Ubuntu Tweak (一个国人写的对Ubuntu进行简单定制和优化的软件,你可以理解为Win里面的360)。这期间阅读他的博客,接触到深度的Linux发行版Deepin Linux。

  什么?专门为国人打造的便于国人使用的Linux?不错,装!

  在我安装使用后立刻就被它的界面所吸引,坦白说 LinuxDeepin 12.04 真的很优秀,它基于Ubuntu 12.04 的基础上,去掉了那个真的超级丑超级难用的Unity,美化了各种常见的组件。直到现在,我家里上大学前的台式机还装的是此系统。

  当时逛Deepin社区的时候,看到懒蜗牛Gentoo的《Linux入门很简单》出版了,看完电子版前2章后我就被此书深深地吸引了。真的,它一点都不枯燥,语言十分浅显风趣,内容也简单使用。实体版到货后我立刻通宵2天把它看完,虽然最后部分的程序编译有点云里雾里,但是基本的日常使用已经无碍。

  这个时候Linux已经基本被我用于日常的装逼,每当我在自习室前排用着Linux上网,常常会以一种看土鳖的眼神看着那些 Mac 上装 Windows 的同学,心里暗自发笑。

  故事本该到了这里就结束,反正Deepin日常使用已经无碍,还有什么好学的。可命运就是这么神奇,它往往会在你最得意的时候给你浇盆冷水,让你“压压惊”。

  那时已经到了13年,我开始迷恋上写博客,在学校组团参加CCF大会的时候接触到阿里云,和阿里云的销售一聊天,他大手一挥给了我一张半年的代金券,此券也开启了我新的Linux学习之路。

  下单安装ECS系统,果断Linux,选择系统的时候果断装逼,Ubuntu和Deepin一样,咱不屑于使用,咱要用CentOS。等云主机资源分配好可以运行时,我就傻眼了。纳呢,没有图形界面!只有一个简陋的Shell界面!这不是坑爹么!

  没有熟悉的 apt-get,没有了熟悉的软件报名,我不得不重拾大一的课本继续蛋疼地看那些常见命令,yum 的使用也让我蛋碎一地。等我使用 yum 搭建好 LAMP 环境嘚瑟地在一个主机交流群里面炫耀时,某位大神(这里他要求不透露姓名)很是鄙视地说:现在流行LNMP,流行编译源代码。

  得,你丫瞧不起我是吧,我也给你整出来……

  这期间学会了很多,参考了各种官方文档、手册、教程,一点点学会如何wget源码包,如何解包。看着./configure --help后面的一大串长到吐的参数一点点配置,看着make时候屏幕上滚动的各种debug信息暗自发呆。有时候为了解决一个简单的缺少依赖的问题Google一整个下午。即使是最后的编译完后,make install之后的配置也让我头疼万分,Nginx与FastCGI的交互,php-fpm的配置,MySQL的优化等等……

  很庆幸有这么一段黑暗的学习经历,因为真正的动手学习配置才对 Linux 有了深入的了解。当然,用前女友云儿的话说:装逼是要付出代价的。因为对 Linux 本身产生了极大的兴趣,这期间也读了很多设计的书籍,比如那本《Linux/Unix设计思想》。我至今依旧记得那个经典的小即是美的设计理念,没有代码层面的讲述,全书薄薄的一册介绍了各种Linux相关的编程理念,十分经典。

  还有就是那本《Linux内核设计与实现》,当时因为上选修课需要用到此书,在老师的讲授下结合以前学过的操作系统知识,真的能学到很多东西。比如,如何时间调度,如何实现排序,如何中断……

  2013年年底买了Kindle,又一次开始了我的新的Linux学习之路,当时国行还没上市。因为学生党,兜里银子少,就买了日货。可是问题由此而来,日版没有中文界面。在研究时发现Kindle官网部分开源了Kindle的源码,于是我便萌发了自己编译Kindle内核来装逼的想法。从基础的交叉编译工具链的搭建,到内核源码的定制配置,BusyBox的编译,UBoot的定制,还有Eink驱动的移植……

  因为涉及的东西很多很杂,在别人的指导下先看完了LFS手册,本着不装逼就不会死的原则先行尝试编译LFS,然后慢慢上手嵌入式系统的编译。因为基础比较薄弱的问题(连Shell脚本都不会写),又买了一本《Unix&Linux大学教程》读完。

  说了这么多废话,该讲讲今天参加图灵活动赠送的书籍《Linux就是这个范儿》。如果不是图灵市场部的英子姐姐在读者交流群里面公布了这个新书发布会,很有可能我就这的与这本好书擦肩而过。这本书是由阿里巴巴的两位大牛赵鑫磊张洁写的,赵老师一直在淘宝大学里面做Linux的培训,此书的前身就是他的上课讲义。

  书的内容真的很全很全,但很遗憾的是它不够细,可能是限于篇幅的原因,很多都只是简单介绍,一带而过。但是书籍的编写语言却十分风趣幽默,初看此书的第一眼,就有一种在看《Linux入门很简单的感觉》,十分亲切。

  整个图书发布会上,张洁老师的精彩演讲,赵老师的健谈和广泛的知识面都让人印象十分深刻。很多问题,从他们的口中都能得到很好地解答。我曾经一个glibc的依赖问题将整个系统yum仓库弄坏,和赵老师交流时竟然发现他也有相似的经历,当然结果是无解。(╮(╯▽╰)╭)

  还记得赵老师在《Linux就是这个范儿》一书开头的那个“黄色冷笑话”,简单回顾一下我这短暂的2年Linux学习历程。其实很容易发现,学习,就像爬山一样,没有平坦的大道,需要努力地去攀登,即使途中某段是平面,那是因为后面还有更加陡峭的阶梯等待着你去攀登。

  学无止境!

原文地址:http://little.cat/posts/this-is-the-linux/

时间: 2024-10-13 08:58:47

我的Linux学习历程:那些我看过的Linux书籍们的相关文章

linux学习(二)——汤哥的推荐书籍

成为一名精通 Linux程序设计的高级程序员一直是不少朋友孜孜以求的目标. 根据中华英才网统计数据,北京地区 Linux 程序员月薪平均为 Windows程序员的 1.8 倍.Java 程序员的 2.6 倍, Linux 程序员年终奖金平均为 Windows 程序员的 2.9倍.同时数据显示,随着工作经验的增长, Linux 程序员与 Windows 程序员的收入差距还有扩大的趋势. Denis 认为,要学好Linux 环境下的编程,关键是要看对.选对.学会正确的书籍. 可以说,如果你选对了Li

linux学习历程-不熟悉的linux命令

一:man(执行查看帮助命令) 二:常用的系统工作命令 1:echo echo命令用于显示在终端输出字符串或变量提取后的值,格式“echo [字符串]|[$变量]” 2:date 用于显示系统的时间和日期:格式为“date [选项] [+指定的格式]”. 在date后加“+”即可按照指定格式来输出系统的时间或日期:常用于将文件打包好在其后面加上当前系统时间,便于分辨该文件打包的时间. date命令中常见参数 参数 作用 %t 跳格[tab] %H 小时(00-23) %I 小时(00-12) %

linux学习2章-新手必须掌握的linux命令

2019年11月10日 SHEEL 1.人不能够直接控制我们的硬件. 2.人一层一层控制我们的硬件的程序叫做SHELL:SHELL的中文意思叫做壳. (shell的一个作用就是人与我们硬件的一个翻译官.) bash 1.当前主流的linux系统的终端,大部分都是bash,因此我们学习过后,大部分的系统都可以通吃:具有广泛适用性,通用性. 2.真的好用. 常用系统工作命令 1.echo命令:可以将我们的信息输出到屏幕上 2.date命令:查看和设置系统时间 需要在date命令中输入以“+”开头的参

linux学习总结一:虚拟机上安装linux

一:下载linux (CentOS 4.2 x86_64官方正式版系统(64位)) http://www.xitongzhijia.net/linux/201603/69616.html 二:开始安装

linux学习(2016.6.21)- 常见linux命令

常见命令: shutdown -h now 立即关机(在root权限下) shutdown -r now 立即重启(在root权限下) reboot 现在重新启动 su 如果当前用户是普通用户的话,输入这条命令则是切换到管理员用户(root):如果要切换到其他用户的话,则敲入su -用户名, 如:su -zl logout 从当前用户注销(如果在图形界面的话,在终端输入exit命令退出当前用户) cd 切换目录(cd /tmp 时切换到tmp目录下)

【我拼搏的2016】-linux学习

2016年还有两天就过了,在此记录下2016年在51cto的学习总结. 我是从2014年开始在工作上接触到linux系统,那时候没有系统的知识,就是怎么从windows系统连接到linux系统也是从网上找资料,那时是用到什么知识就上网找资料,连续的接触就对linux有了初步的了解,并且对linux越来越感兴趣.2016年初的时候,老大建议我去考一个RHCE证书,我想想自己这两年内学习的知识都是零零散散的,而且当时做的网管也看不到什么前途,于是把心一横,决定从网络转向linux运维,开始了我的li

Linux学习笔记(整理记录)

1.安装 (1):安装网址:http://www.jb51.net/os/78318.html 2.鸟哥的Linux命令学习 (1):显示系统目前所支持的语言:echo $LANG (2):修改语言成为英文语系:LANG=EN_US (3):显示日期与时间的命令:date+%y-%m-%d (4):显示日历的命令:cal 2015 (5):简单好用的计算机:bc  退出命令 quit 3.命令学习 在Linux学习中,如果我们要使用linux命令操作的话,是需要切换到管理员用户下的,下面简单整理

Linux学习笔记一 磁盘管理常用命令

Linux学习笔记一 磁盘管理常用命令 Linux系统下,一切均是文件,磁盘是一种特殊的块设备文件. 常用的硬盘接口类型 并口:IDE ,SCSI 串口:SATA,SAS 磁盘设备文件设备文件的命令规则: IDE: 设备名为/dev/hda, /dev/hdb-.  (末尾的a ,b-代表不同的IDE硬盘) SCSI:设备名为/dev/sda, /dev/sdb-.(末尾的a,b-代表不用的SCSI硬盘 机械式硬盘: track: 磁道(盘面上由外向里划分成不同的磁道) cylinder: 柱面

linux学习总结(改)

   Linux学习总结                                    结束了一学期的linux学习后我收获非常的丰富,在这次学习中,我们尝试了一种全新的学习方式,linux翻转课堂,每周都上到mooc网站上跟着老师讲解的视频学习并进行实验,刚开始的一两周感觉特别的不适应,因为由于一部分知识的欠缺,所以在刚开始学习linux的时候并不能完全的理解mooc里面孟老师的讲解,做实验的时候也遇到了很多困难,然后通过不断的查资料,翻笔记才一点点弄懂并且完成实验.我觉得这种自学的方