我是一个本科学电子的理工男,但是一直对计算机感兴趣,所以平时自己在课下喜欢学一些与计算机有关的东西。由于对计算机感兴趣,所以后来我参加了学校的计算机社团,在那里接受一些培训和指导。当时在社团里看到师兄在弄Linux,我这才接触到了Linux。不过当时只知道Windows系统,并不知道除了Windows,世界上还存在其他的操作系统。所以就很好奇,并在师兄的指导下,在电脑上装了个系统,便开始了一番探索,当然开始也是很迷茫的,也走了一些弯路。

接下来我就浅谈一下如何学习Linux,当然我也是个初学者,所以哪里有不对的地方,还望指正。

首先,应该为自己创造一个学习linux的环境--在电脑上装一个linux系统。由于Linux发行版众多,但是大同小异,所以我们首先找到适合我们的版本。所以下面我将为你介绍几款十分流行的Linux发行版本,希望对你的选择有所帮助。

Debian运行起来极其稳定,这使得它非常适合用于服务器。Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Redhat是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。Arch是一款采用滚动发行方式的操作系统:只要安装一次就够了;每当发行了某个新版本,就可以升级发行版,不需要重新安装。OpenSuse这款Linux发行版是免费的,并不供商业用途使用,仍然供个人使用。此外还有很多出名的发行版本,不再列举。原则是:我们没有必要把时间浪费在"装系统"上而应集中精力学习最有用的东西。如果你并不打算深入学习linux,而是只是想像使用Windows一样进行日常的办公还有娱乐等,那么国内的优麒麟,红旗、deepin等中文linux操作系统同样是不错的选择。

好了,以上就是我对操作系统的推荐。下面你需要做的就是安装属于你的Linux操作系统了。我强烈建议:自己亲自动手把linux装到你的硬盘或者虚拟机上,你必须学会独立安装linux系统的技能。虽然第一次安装Linux会遇到很多的问题,而且安装过程中为有很多地方都不懂,但是你一定要亲自动手尝试安装。你可以去网上找一篇文章跟着安装,如果哪里不懂或者不知道怎么做,你可以通过百度来解决问题,总之, 你一定要学会安装Linux系统。当你第一次安装成功后,你会发现你特别有成就感,并且你会在安装过程中学到很多东西。

等你安装完Linux系统后,真正的学习就要开始了。我们应该掌握至少50个以上的常用命令:

1.   理解shell管道"|",文件流重定向">"及追加">>"等;

2.   熟悉Gnome/KDE等X-window桌面环境操作;

3.   掌握.tgz.rpm.biz等软件包的常用安装方法;

4.   学习添加外设,安装设备驱动程序(比如modem);

5.   熟悉Grub/Lilo引导器及简单的修复操作;

6.   熟悉系统固有目录的名称及学会用mount命令访问其他文件系统;了解vi,gcc,gdb等常用编辑器,编译器,调试器学习linux环境下的简单组网。

个人建议:买一本不需要太厚的linux教材,大致可以满足要求。(现在的书越来越多了,还带很多图,我当时可没这么多书:)这里我要推荐一本我入门时候学习Linux的书籍《Linux就该这么学》。这本书在我看来,是你入门Linux的绝佳选择。可以让你很快的就上手Linux系统。我本人就是看着这本书一点点从入门到精通的。

后续我们需要学点高级的了。比如shell编程。shell是命令解释器,是内核与用户界面交流通道,shell写的小脚本有点类似于win下的.bat但shell比.bat强大的多,shell不只是解释命令,更是一种编程语言,有时候几百行的c用shell几十行就能代替完成工作,因为shell的工作方式建立在系统已有的众多应用程序之上这也是Linux中的一个重要思想。

接下来,如果你决定深入学习Linux的话,我个人理解的读linux内核需要的基础:在此之前,希望先把应用层的东西学一下,那样会比较好理解。

首先我建议你学C语言,如果学过潭浩强的大学教科书,然后再去看《C Primer plus》,建议再看一下《The C Programming Language》,《C陷阱与缺陷》,《C专家编程》,《C\C++深层探索》等等。反正经典书看多了是没有坏处的。然后开始看数据结构(离散数学),这是计算机专业的核心课程,重要性我就不说了。接下来,我们需要学习操作系统原理和微机原理/组成原理,看懂这个再去读linux内核源代码吧,那时候你就会知道Linux是多么伟大的杰作了。

本科理工男如何学习Linux的更多相关文章

  1. 本人亲身讲解本科期间学习Linux系统过程

    学习Linux也有一段时间了,回首这段时光,既迷茫过也既充实过.当时刚接触Linux是在大学,身边的同学都在学习,我想我也该学点一技之长了.我本科并不是计算机专业的,关于软件的课程也就只有C++,所以 ...

  2. 我是如何学习 Linux 的

    为何要学习 Linux? 这个问题可能困扰着很多 Linux 初学者和爱好者,其实我也说不上来为何要学习 Linux,可能最实在的理由就是—-Linux 相关工作岗位很多.在“见到” Linux 的第 ...

  3. 聊聊大学期间的我是怎样学习Linux系统的

    高考成绩并不是那么的理想,本科是个普通的二本院校,来到学校之后,整个人其实很迷茫,当时对大学的专业真的是一点都不了解,也不知道自己对哪方面感兴趣,最后选择的专业是电子方面的,其实当时选择专业的时候对电 ...

  4. 我在大学毕业后学习Linux系统的心得经验

    扣着手指头一算,自己已经毕业快半年了,这半年莫名其妙进外包圈子溜达了一圈,有幸退的早还是正常干一些事情吧,外包终究不是太适合刚入社会的毕业生,今天想把自己的学习和工作经验写成一篇文章,希望能够帮助到正 ...

  5. (转)学习linux的几本书

    成为一名精通 Linux 程序设计的高级程序员一直是不少朋友孜孜以求的目标.根据中华英才网统计数据,北京地区 Linux 程序员月薪平均为 Windows 程序员的 1.8 倍.Java 程序员的 2 ...

  6. 转:学习linux驱动经典书籍

    Linux驱动学习的最大困惑在于书籍的缺乏,市面上最常见的书为<linux_device_driver 3rd Edition>,这是一本很经典的书,无奈Linux的东东还是过于庞大,这本 ...

  7. 学习Linux让我进入了知名企业 原

    说起我学习Linux的原因是多方面的,大学时我学的是物理学师范专业,有部分计算机课程,但我觉得这些课程没什么实际作用,我自己对计算机比较感兴趣,我利用业余时间学习了很多计算机技术.在大学期间我参加了很 ...

  8. 学习Linux让我进入了知名企业

    说起我学习Linux的原因是多方面的,大学时我学的是物理学师范专业,有部分计算机课程,但我觉得这些课程没什么实际作用,我自己对计算机比较感兴趣,我利用业余时间学习了很多计算机技术.在大学期间我参加了很 ...

  9. 学习Linux系统永远都不晚

    作为一名机械专业毕业的学生,两年的工作经历实实在在地教会了我如何认清现实,让当初那个对机械行业无比憧憬的少年明白了自己选择的路有多艰难.由于我的父母都是工人,所以我比其他同龄人能更早地接触到工业的魅力 ...

随机推荐

  1. C语言的结构和联合,以及PHP是怎么实现弱类型的

    C语言的结构(struct):包含多个成员,可能有多种数据类型,并且需要分配几种类型占用空间之和的空间. 联合(union):支持多种类型,供使用者使用其中一种数据类型,当然是需要分配其中占用空间最大 ...

  2. 通过 JS 脚本去除csdn广告

    1. chorme 浏览器 1.1 通过书签方式添加 新建书签: 在网址一栏中输入: javascript: $(function () { $('aside .csdn-tracking-stati ...

  3. Vscode更新之后rg.exe占用cpu过高

    文件->首选项->搜索"search.followSymlinks"改为false https://www.zhihu.com/question/67317040

  4. 史上最全的Spring Boot配置文件详解

    Spring Boot在工作中是用到的越来越广泛了,简单方便,有了它,效率提高不知道多少倍.Spring Boot配置文件对Spring Boot来说就是入门和基础,经常会用到,所以写下做个总结以便日 ...

  5. IIS配置Url重写实现http自动跳转https的重定向方法(100%解决)

    引言 本文推荐阅读地址:https://www.52abp.com/BlogDetails/10008 这种文章网上可以说一搜一大把,但是我为什么还要写呢,因为一搜一把没把我气死,都是东抄西挪的东西, ...

  6. Jmeter(三十八)while控制器实现ssh三次重连

    在jmeter中,可以使用SSH协议连接主机进行相关操作, 步骤如下 首先添加一个ssh command  我们的测试交流群:317765580 在command中填写远程连接的必要信息 结果树中可以 ...

  7. UVA - 12716 - 异或序列

    求满足GCD(a,b) = a XOR b; 其中1<=b <=a<=n. 首先做这道题需要知道几个定理: 异或:a XOR b = c 那么 a XOR c = b; 那么我们令G ...

  8. hdu3294(马拉车模板)

    注意:string会超时 #include<bits/stdc++.h> using namespace std; #define ll long long const double PI ...

  9. pycharm导入自己写的.py文件时,模块下方出现红色波浪线解决

    点击菜单栏的File,选择Setting, 然后,选择需要导入的.py文件“所在的目录",而非项目根目录,右键 之后再导入该.py文件就不会出现红色波浪线了.

  10. 【学习总结】C-翁恺老师-入门-第3周<循环>

    [学习总结]C-翁恺老师-入门-总 1-求一个整数的位数:引入循环while 注:循环体内要有改变循环的机会,要不然就死循环了啊! 注:手写推测程序是否正确. 注:测试程序-边界:个位数.10.0.负 ...