如果给我一台运行着Linux的电脑,我就能玩转Linux。我能拥有一台运行着Linux的电脑吗?”我说:“这个完全可以有。所以,是的,你能玩转Linux。”
大多数人可能会在Windows上虚拟一个Linux出来,我的建议就正好相反。要养成使用Linux的习惯,显然就是让Linux入住你的电脑,让它成为你的主要操作系统。然后再虚拟一个Windows出来:)
很多人在决定让Linux入住自己电脑的时候遇到了很大的障碍。我所了解到的大多数问题是担心没有可以替代的软件。
实际上对于大多数人而言这实际根本就不是问题,只是他们不知道罢了。但是如果你买电脑就是用来玩游戏的,那么这本书估计也不适合你。这并不代表本书排斥游戏玩家,恰恰相反,我本身就是一个超级玩家。我总是认为拿电脑打游戏是十分浪费资源的,专用的游戏主机更适合干这件事儿,也很便宜。比如一台PS3的价格绝对比一块超级显卡便宜很多,但是游戏效果绝对是目前最棒的。那么排除了打游戏这种需求之外,Linux几乎可以满足绝大部分的需求了。
对于现如今不可或缺的浏览器来讲,除了没有IE以外,其它的各种主流浏览器都有Linux版本。比如FireFox、Chrome、Opera等。有人可能会来抬杠,说Linux下肯定没有Apple的Safari浏览器,那么抬杠的人就要失望了,因为Safari实际上是修改自Konqueror这个来自KED的浏览器。其实在FireFox和Chrome还没诞生之前,笔者最常用的浏览器就是Konqueror了,只是由于后来它的开发者们被Apple耍了一道之后便开始没落了。说句题外话,现在是HTML5大行其道的年代,即便在Windows上,IE也开始不讨好了,Linux在这方面并不会吃亏。
除了浏览器之外的另外一个重要的领域就是Office软件了。当然MS Office是不可能有的,这方面的首推替代品就是OpenOffice系列了。但是笔者自身认为OpenOffice是给老外用的。换句话说,它的中文本土化做的不如MS Office,对中文排版的处理上也特别差劲,而且与MS Office兼容性还不好。这可能是Linux无法推广普及的最大壁垒。但是话又说回来,我们中国有一家十分靠谱的公司,那就是永中科技,它出品的永中Office可以完美的兼容MSOffice,完美的处理任何中文排版问题(总觉得永中应该给笔者点儿好处费才行)。永中Office采用Java开发的,所以可以很容易的有Linux版本,而且还是免费给个人用户。绝对的自主知识产权的,可以很好的满足一下广大愤青们的虚荣心啦。此外,老品牌的WPS也不甘寂寞,也正在加紧研发Linux版本,不日就会与大家见面了。
对于大多数普通用户来说,上网、打字之外就应该是聊天了。如果你很清高从不使用QQ的话,那就实在是太好办了,几乎所有开源IM工具都不支持QQ。当然,如果你跟笔者一样很三俗,非QQ不用的话,WebQQ是一个非常好的选择。飞信还可以有libFetion和OpenFetion。唯独阿里旺旺比较麻烦,但是也有一个不伦不类的官方版本出来,我倒是可以在这里帮大家忽悠一下:童鞋们努努力吧……但是如果我那些负责开发旺旺的同事们不看这本书就没啥作用了。
如果你还觉得不够,还想看看电影听听歌曲,那就更好办了。其实Windows上我们使用的大多数免费播放器真身原本就是为Linux而开发的,比如VLC、MPlayer等。很多播放器,甚至收费的也都只是在它们外面包上一层皮罢了。但是需要注意的就是你的声卡不能太“高级”了,因为一些特别专业的声卡没有Linux的驱动。但是显卡很好办,因为AMD和Nvidia都很重视Linux,只要是还不太老掉牙的显卡,Linux都能良好的驱动它。
对于一些专业人事,比如视觉设计师们,或许会觉得Linux缺乏专业的设计软件。这其实也是一种误解。GIMP完全可以胜任Photoshop的工作;Inkscape一点也不比Illustrator差劲;Cinelerra兼有Permiere和After Effects的功能。不要忘记,我们之所以能够知道世界上还有Linux这玩意儿,很大的因素是当年卡梅隆导演用它作为平台完成了《泰坦尼克号》的特效。
到目前来看,对于我们来说Windows的唯一救命稻草就只有一个了,那就是网上银行了。这的确是很重要的一块儿领地,也没有任何替代的方案。我的方法就是虚拟一个Windows出来。这个Windows只用作网银操作,还能有效防病毒,连杀毒软件都省下了(卡车司机别来找我麻烦啊:)。
好了,我想我已经给出了足够多的理由使你可以义无反顾的让Linux入住你的电脑了。放心,只要你按照我的方法来做,不会给你带来任何损失。
接下来我们将面临一个更为麻烦的问题,就是我们到底应该选择哪个Linux发行版。因为Linux发行版实在太多了,用多如牛毛来形容一点都不夸张。可以想象,在牛毛中要选择出一个毛色最正、长短最合适、粗细最均匀的一根是多么复杂的事情啊。我们现在就要做这件事情,还要做好它!
就目前的情形看,Linux发行版可以分为三个主要的分支:RedHat、Slackware和Debian,每一个分支都拥有一个最具代表性的商业服务器级的发行版,它们是:RedHat Enterpries Linux,简称RHEL、SUSE LinuxEnterprise,简称SUSE,和Ubuntu Server,简称Ubuntu。
看似好难选择的样子,但实际上也没什么,不管是谁家的Linux发行版,都不会有本质的区别。因为Linux本身就不是一个完整的系统,它实际上只是一个内核。所谓的发行版只不过是这个内核加上一堆应用程序而攒成的系统。而且这些应用程序很大一部分都是来源于GNU社区,代码都是一样的,能有什么差别呢?
虽然本质上没有什么不同,但是不同的发行版在细节上还是有一些差别的。这主要体现在管理工具的选用上。由于开源软件的绝对自由性,具有相同功能的系统管理类软件可以有很多种,不同的发行版可能会对某种有偏好。有些实力比较强大的发行商,比如Red Hat,自己也会为开源社区贡献很多这类软件,它的发行版自然也会首选自家的产品。当然,其他发行版也可以采用Red Hat开发的管理软件,实际上很多发行版也是这么做的。
前面还说道发行版的分支,但是具体分支的归属并不取决于是否使用相同的系统管理工具。其实所谓的分支在软件层面上并没有十分严格的界限,只是这三个分支是历史最为悠久的发行版,而后续诞生的这些发行版大多都是从修改它们其中一种而发展起来的。实际上很多到目前为止已经跟其原有分支没有任何关联了,比如SUSE Linux已经跟Slackware没有任何联系了,但是最初的SUSE Linux是从Slackware修改而来的,所以现在依然认为它属于Slackware分支。现在,不同的分支之间互相也有借鉴,取长补短,所以分支概念在目前的发行版中越来越模糊了。现在比较清晰的是软件安装方法的不同,有些使用rpm、有些使用deb,有些甚至直接采用源代码。当然,这样的差别只有在使用不同安装方法的发行版之间才能感觉到比较明显的差异。在日常使用中,Linux就是Linux,跟发行版没什么关系。
虽然花费了这么大的篇幅,但是依然没有讲清楚到底该选择那个发行版,笔者感觉有点对不住各位。那么接下来就解决这个实际问题。大家可能有所察觉,我所列举的这些发行版有些人根本都没有听说过,现在流行的都是什么Fedora、Ubuntu。的确,如果你就是想自己装个Linux玩,它们都是很好的选择。但是我们都是实用主义,同时还要排除一下个人偏好,所以从选择哪个发行版更适合找到好工作这个角度出发,比较理想的选择应该是——CentOS。
你绝对没看错,也不是笔者的脑袋让电梯夹了出来语无伦次。虽然这之前完全没有提到过CentOS,但是当你知道它实际上是RHEL的一个克隆之后,就会稍微地理解我推荐它的原因了。
RHEL由Red Hat发行,可以说是系出名门的,也是目前被众多品牌厂商支持得最为完善的Linux发行版。当然,SUSE和Ubuntu也未见得差到哪里,但是RHEL还有另外一个优势,就是对kvm虚拟机的支持。很多大型互联网公司为了充分利用服务器的硬件资源,都回大量采用虚拟机技术。而kvm的很多开发和测试工作都是在RHEL上进行的。这也导致了很多大型互联网公司都选择了RHEL作为其主要的服务器系统。既然RHEL这么优秀而又是大型互联网公司的选择,那么我们直接选择RHEL好了,为什么要选择它的克隆——CentOS呢?
原因非常简单,RHEL要收费。当然,RHEL也允许免费使用,但是你将得不到任何系统升级服务,也得不到任何技术支持。RHEL在对外发行的时候采用两种方式,一种就是收费的二进制方式,一种就是完全免费的源代码方式。CentOS就是利用完全免费的RHEL的源代码重新编译而成的,免费提供给大家,所以本质上与RHEL没什么区别。唯一的区别就是更新的频率没有付费的RHEL快。当然,如果你有足够的时间,也可以使用RHEL的源代码构建自己的发行版,至于是否收费,你自己说了算,给自己的公司用当然也不成问题。
不管怎么样,要想吃Linux这碗饭,选择CentOS是非常好的选择。在免费的同时可以体验到大型互联网公司的服务器系统环境。如果有机会去这些公司面试,根据自己的平时的学习经验就可以很好地回答面试官的问题了,而面试这种事儿“共同语言”是很重要的。
时刻不要忘记,学习Linux的本质还是要学习它最核心的那些机制。而CentOS并不会改变这些机制。掌握好了这些机制,对于掌握任何其他Linux发行版,乃至自己去制作发行版,都将是水到渠成的事情。而在这之前还有希望找到一份较为体面的工作,何乐而不为呢?
1.1.3 安装系统
到哪里去获得CentOS或RHEL,乃至其它Linux发行版呢?你们可以问Google或者百度。我不会像其它书籍那样提供一大堆URL列表,总感觉这样做是在辱没你们的智商。可能比较麻烦的事情是如何规划磁盘,本书的第三章会深入的探讨这个问题。那么现在这个阶段只要按照系统默认的安装设置就行了。如果你还需要让Linux与Windows共存,只需要使用分区工具留下几十个GB的未分区的磁盘空间就行了,CentOS的安装程序可以自动使用你特意留下的空间。当然,安装的时候一定要慎重,看清楚提示,不要做一些蠢事。此外,我不是很建议你的Linux与Windows共存,还是在虚拟机上运行Windows吧(具体怎么弄可以去去问Google或百度)。
一个比较好的建议是使用64位版本,毕竟现在已经是21世纪又过了10多年了,老掉牙的32位系统应该在坟墓里歇息了!到本书截稿为止,最新版本的CentOS是6.3。为了安装方便,最好下载它的DVD镜像,前提是你安装的不是“假宽带”。
为了方便现在身边没有电脑读者能够尽早体验到Linux系统的一些魅力,这里我们一些截图来讲述一下CentOS 6.3的安装过程,以期能够图文并茂,让你对Linux有一个好印象,出于成本考虑,当然也是为了帮助你省钱,我不打算使用彩色图片。但是即便是黑白二色,依然无法掩盖Linux系统的美。不过不要高兴得太早,你若想在安装的CentOS 6.3的时候与我所描述的内容相符,那么必须保证你的机器内存大于628M,因为低于这个要求不会启动图形安装模式。但是幸运的是,文本安装模式不支持自定义分区,也不支持自定义软件包,这使得安装过程十分简洁,也造成了我没得可讲的境地。而不幸的是你也无法得到拥有图形环境的Linux系统。不过我倒十分希望你有这“下场”,因为在我看来只有坚持使用文本才能学好Linux。
CentOS 6.3系统镜像有两个,只需要下载第一个镜像就能完成安装。第二个镜像是一些附加的软件包,基本上就没什么用。因为我们安装新的软件基本上都是从“云端”下载的,所以第二个镜像你都没有理由下载它(“假宽带”用户另议)。
接下来的步骤就是刻盘、启动和引导了,如果没有问题,应该出现这样的界面:
图1.1 启动画面
这个界面展示了5个功能让你选,如果1分钟内你选择不出来,它就帮你选。选谁呢?选第一个,因为99.99%的人都会选这个。所以其它的功能我就不介绍了,因为当你成为那万分之一之后,基本上都懒得理我了,那我还费什么事呢?
一分钟不用等啦,直接按回车,应该出现这样的界面:
图1.2 检测安装介质
这是要检测一下安装介质是不是有损坏。如果时间比较宽裕的同学可是测测,测测更健康嘛。如果你认为浪费时间就等于浪费生命,那就选Skip吧。
不管你是选择检测还是选择跳过,最终你都要进入这个界面:
图1.3 欢迎界面
没啥实际意义,Next继续。
图1.4 安装时语言选择界面
这里是干什么的,大家应该懂的,我是选择母语的。Next继续。
图1.5 键盘布局选择界面
这里是让你选择你的键盘类型,在中国选择美国英语式就行了,别的样式的键盘估计你不熟悉。默认情况下也就是这样给你选的,所以直接下一步就行了。
图1.6 存储设备选择界面
这个就是让你选择使用的磁盘类型,基本没别的选择,99.9999%的人都不用选择,就是这个默认的基本存储设备。别的那些东西,估计这辈子你都无缘见到,所以下一步就行了。
图1.7 主机名设定界面
这里设置主机名,也就是给你的电脑起个名字。要是没啥好名字,用这个默认的也是不错的。另外,这个地方可以进行一下网络配置,感兴趣的同学可以点开看看。如果觉得自己还不太靠谱,那就下一步好了。
图1.8 时区选择界面
这里确定你的时区。还要告诉你一个秘密:在这个星球上别的国家是不知道有“北京时间”的,但是他们都知道有“上海时间”。有些人是不是要自豪一下呢?
图1.9 管理员密码设定界面
输入管理员密码,尽量弄复杂点。当然,你一定要用你老婆的生日我也没办法不是?
图1.10 磁盘分区方式选择界面
这里有这么多的选项,我们认为最有用的就是第一项“使用所有空间”了,但是你现在未必有胆量这样干。所以,如果之前给Linux预留空间了,就选择“使用剩余空间”。或者使用“创建自定义布局”也行。
“自定义布局”的界面是这样的:
图1.11 自定义分区界面
我们划定的磁盘分区就是上图这样,虽然不是很符合Linux的设计思路,但是操作起来比较简单。作为初学者就这样好了,反正第三章会告诉你做Linux磁盘分区的技巧。
图1.12 引导程序安装界面
没什么能让你设置的,下一步就行了。
图1.13 随机软件定制界面
来到这里就是定制你的Linux系统要安装那些套件。默认的是“Minimal”,只是装个基本系统。我们推荐你选择“Desktop”,这样你就有图形界面的Linux用了。下一步就是安装过程了……
图1.14 安装等待界面
你不再有点按“下一步”的机会了,等待的结果就是最后的成功。
图1.15 大功告成
到了这个阶段,Linux已经进驻你的电脑了,重新引导就可以开始享用了!第一次引导的时候是要进行系统初始化设置的,也是非常简单的,基本上一路“下一步”就能搞定。
Linux与Windows有一个很大的不同就是很有可能你安装的Linux启动之后没有启动图形用户界面(刚刚安装完CentOS 6.3的读者应该不会遇到这种情况)。这个时候你就必须得经过输入用户名和密码才能继续使用。即便你的Linux启动了图形界面,也很少有发行版让你能够自动登陆系统。所以,你一定要搞清楚你的用户名和密码。虽然有人会觉得笔者这样提醒似乎有些弱智,但是的确有很多人忘记了给自己刚刚安装的Linux设置了什么密码。虽然本书会告诉你如何在这种情况下找回密码,但是在现在这个阶段,一旦有这种事情发生,那么你最好还是重新安装吧!
Linux的用户被划分为根用户和普通用户两种。其中根用户是系统内置用户,用户名永远都是root,所以也叫root用户。Linux的root用户与Windows的administrator用户是一样的,都拥有系统的最高控制权。普通用户一般是用户自己定义的,所以没有什么特别的权限。大家在使用Windows的时候大多数都会选择直接使用administrator用户,这是非常不好的习惯,也是Windows下病毒泛滥的推手之一。在Linux下不要随意使用root用户,因为它的权限大到能够自杀的地步。所以很多发行版,比如我们推荐的CentOS在图形界面登陆时,并不会提示有root用户存在。要使用root登陆,必须明确输入这个用户名。
我们提供这部分内容其实是为另外一些读者准备的。当然,你可能就是其中一员。这些读者在安装Linux系统的时候,并没有给自己的系统添加任何普通用户,如果他/她不知道还有root的时候,可能死活都登陆不了系统。大家不要笑,这样的大有人在。笔者在第一次使用Linux的时候就这样,结果反复安装了3遍都没正常进入系统,最后经“高人”指点才解决问题:_(。
当你正常登陆Linux系统后,就可以尝试这个对你来说还十分新鲜的玩意儿。如果你的电脑没有什么特殊的硬件的话,应该可以上网、聊天、看电影了……
本文出自 “Linux就是这个范儿” 博客