★引子
近期接到若干读者反馈,希望能够普及一下 Linux,包括某些专门为安全而优化的发行版(比如 TAILS)。所以俺考虑从几个不同的方面,扫盲一下基于 Linux 内核的操作系统。考虑到很多读者不是 IT 从业人员,俺尽量写得"傻瓜化"一些,希望能让技术菜鸟看明白。
今天这篇,先来说说:一个新手该如何一步步搞定它,从"菜鸟"进化为"老鸟"。(为了打字省力,以下把"基于 Linux 内核的操作系统" 简称为 "Linux")
★两种思想上的误区
按照俺的风格,先来说说两种思想上的误区(学习其它技术,通常也存在这两个误区)。
◇望而却步
有些新手把 "掌握 Linux"看得过于复杂,看得高不可攀。这是非常没有必要的。
如果是在上个世纪90年代,抱有这种想法或许还情有可原(毕竟那时候 Linux 内核刚问世没几年)。但是如今捏?Linux 都已经二十几岁了。经过这么些年的发展,已经变得很成熟,很傻瓜化了。在易用性方面,它跟 Windows 的差距已经很小了。
如果你还在怀疑 Linux 的易用性,不妨看看如今 Android 手机的市场份额——Android 就是基于 Linux 内核搭建的。
◇急于求成
和上面的"望而却步"心态相反,有些新手带有一种急于求成的心态——企图一口吃成胖子。这也是不对滴。
为啥很多人有这种想法捏?主要是被"急功近利"的风气影响,变得浮躁了。对于心态浮躁的同学,建议你看看 Peter Norvig 写的好文《十年学会编程》(Peter Norvig 是 Google 研究总监)
★如何循序渐进?
介于上述两种心态之间,俺的观点是:循序渐进。下面来说说,在上手 Linux 的过程中,该如何循序渐进?
◇从"虚拟机"到"实体机"
去年俺专门写了一个《扫盲操作系统虚拟机》的系列(已经写完)。没看过的同学,强烈建议你先去看看。看完这个系列,你自然就能体会到"操作系统虚拟机"的种种好处。
对于一个新手,一定要先从虚拟机里面开始折腾,而不要直接在实体机上折腾。
虚拟机的好处之1——不用担心搞坏系统
虚拟机,顾名思义,是"虚拟的"。随便你怎么折腾(即使是格式化硬盘),都不会影响到你的实体机(Host OS)
虚拟机的好处之2——快照功能
在你摸索的阶段,可以充分利用虚拟机的"快照功能"。
"快照功能"就如同"后悔药"。比如你想修改某项系统设置,如果你对此没有把握,可以先做好一个快照,然后再修改。万一改坏了,直接回退到这个快照,系统就恢复原样啦。
虚拟机的好处之3——降低装硬件驱动的麻烦
常见的虚拟机软件(比如 VirtualBox、VMware),在虚拟系统(Guest OS)中仿真出来的虚拟硬件,往往是比较常见的硬件。因为是比较常见的虚拟硬件,所以你在虚拟机中安装 Linux,Linux 通常都能直接识别出那些虚拟硬件。这就避免了折腾硬件驱动的麻烦。
以上就是关于 "Linux装在虚拟系统" 的种种好处。只有当你已经脱离了"菜鸟"阶段,再考虑把你的实体机换成 Linux。
◇从"业余环境"到"工作环境"
有一句至理名言叫:"从实践中学习"。
当你已经学会如何装 Linux,学会了一些基本的操作,之后就要在实际环境中使用它(也就是"实践")。那么先从哪种环境开始实践比较好捏?俺建议先从自己的业余环境中开始实践。不要首先在工作环境中尝试。
因为当你的水平还不够的情况下,如果首先在工作环境中尝试,万一出了啥差错,会影响到你的工作。而如果在业余的环境中尝试,出了差错风险较小。
比方说,你可以专门开一个虚拟系统(Guest OS),装好 Linux,在业余时间用来上网。
◇从"图形界面"到"命令行界面"
作为一个新手,刚开始会被各种各样的 Linux 命令搞得眼花缭乱。为了降低学习曲线的陡峭程度,你可以先从图形界面入手。先通过图形界面,了解 Linux 的各种功能。等到你慢慢熟悉了,再逐步学习命令行界面的使用。
顺便再罗嗦一下:
命令行界面是 Linux 的精髓之一。善于使用命令行,可以大大提升你的效率。所以,一开始你可以完全依赖"图形界面";但如果要想提升,必须让自己逐步适应"命令行界面"。
◇从"傻瓜化"到"DIY"
有些"傻瓜化"的发行版,它会把各种各样你可能需要的软件都事先内置了。一旦装好系统之后,(你只需使用它的默认设置)就可以完成日常操作了。显然,这类发行版更容易让菜鸟上手。
但是,如果你想在 Linux 领域有所深入,想要充分发挥其特长,不应该仅仅停留在"傻瓜化"的层面;相反,你要通过逐渐的摸索,不断地折腾,搞定各种"DIY"。在折腾的过程中,你自然会学到很多东西。
另外,俺在《磨刀不误砍柴功——聊聊个人IT基础设施的完善》也说了,Linux 相比 Windows 的特色之一就是:高度的可定制化。所以,你可以利用 Linux 的这个特色,定制非常个性化的系统环境,以提高你使用操作系统的效率。
★如何选择发行版?
Linux 有千奇百怪的发行版(洋文叫 distribution),有几百种之多。不同的发行版有各自的特色。你可以根据自己的情况,选择一款适合自己的发行版。
很多初学者经常困扰于如何选择发行版。在这里,俺先给出第一个建议:一定要选"成熟的"发行版。对初学者而言,选择成熟的发行版,有助于你少走弯路,避免浪费时间。
判断某个发行版是否"成熟",可以看如下几方面:
◇文档是否足够完善
这点对于初学者尤其重要。如果某个发行版缺乏完善的文档,对初学者是巨大的障碍。
◇用户数是否足够多
如果你使用的发行版,用户过于稀少。万一你碰到问题,就比较难在网上找到答案。
反之,如果你用的发行版,用户数量较大。那么你碰到的问题,通常别人已经碰到过 N 次了。网上已经有很多相关的讨论了。那么你就比较容易 Google 到答案。
◇解决Bug(发布补丁)的速度是否够快
只要是软件,难免会有Bug——Linux 系统当然也不例外。有 Bug 不可怕,可怕的是有了 Bug 却迟迟得不到解决(没补丁 或 补丁发布太慢)。
对于成熟的发行版,通常有足够多足够牛的维护人员,所以成熟发行版解决问题(发布补丁)的速度通常较快。而不成熟的发行版,维护人员不多,反应速度自然差得多。
上述这三个指标,第一个比较容易判断。后面两个指标,对某些菜鸟而言,比较难判断。不过没关系,有一个捷径——你可以通过维基百科来判断某个发行版的成熟度。某个发行版的词条写得越详细,通常说明这个发行版越成熟。(提醒一下,可以同时参考中英文两个语种的维基百科词条)
考虑到篇幅,没法在本文中详细介绍各种类型的发行版。所以,俺另写了一篇博文《扫盲 Linux:如何选择发行版》,从多个角度介绍不同发行版的特色。
★从哪里获得文档和资料?
◇维基百科
首先,要善于利用维基百科(尤其是英文维基百科)。通过维基百科,你不但可以找到某个发行版或某个软件的概要介绍,还可以找到与之相关的一系列软件。
举个例子,如果你想找轻量级的发行版,只需访问维基百科的这个页面,就可以一目了然。
◇发行版的官网
刚才说了,成熟的发行版,必定有相对完善的文档。所以,你可以去该发行版的官网,通常就能找到比较详细的文档。另外,有些成熟的发行版还会提供多语种的文档。
说到文档的语言,稍微跑题一下:
在折腾 Linux 的过程中,俺强烈建议大伙儿还是尽量看英文文档。有如下好处:
1. 如果你英文的基础不行,顺便可以提升一下英文的阅读能力
2. 英文文档相比其它语种的文档:更新更及时、内容更详细、覆盖面更广。
◇相关软件的官网
如果你使用的是"成熟的"的发行版,那么该发行版内置的软件,通常也是比较成熟的。这就意味着,这些软件的官网,通常也会有比较完善的文档。
所以,如果你使用某个软件碰到困难,可以去该软件的官网看相关的文档。
◇相关的论坛
成熟的发行版或者成熟的软件,通常都有专门的论坛/邮件列表。你可以去这些地方寻找你要的文档。(提醒一下:要善于使用 Google 搜索的 site 语法)
◇其它
Linux Documentation Project(简称 LDP)上面汇总了许多扫盲性质的文档(HowTo 和 FAQ)。
除了上述这些,俺也会抽空分享一些关于 Linux 的书籍到俺的网盘上。相比网上的文章/文档,某些好的书籍可以有助于系统化地学习相关知识。
★碰到问题如何解决?
在你摸索的过程中,势必会碰到很多问题,这时候你需要学会利用互联网自己找答案。
如果你是 Linux 的新手,你碰到的问题,通常是低级问题(所谓的"低级问题"就是说,这个问题之前已经有 N 个人碰到过了,属于比较普通常见的)。这种情况下,你通常可以利用搜索引擎,找到自己需要的解答。
关于如何利用搜索引擎,可以看俺的另一个系列《如何挖掘网络资源》。
俺博客上,和本文相关的帖子(需翻墙):
《扫盲 Linux:如何选择发行版》
《扫盲 Linux&UNIX 命令行——从“电传打字机”聊到“shell 脚本编程”》
《为什么桌面系统装 Linux 可以做到更好的安全性(相比 Windows & macOS 而言)》
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者编程随想和本文原始网址:https://program-think.blogspot.com/2013/10/linux-newbie-guide.html