给Linux 新手--学习的态度与思想

来源:百度文库 编辑:神马文学网 时间:2024/04/20 00:55:37

文章来源:http://club.chinaren.com/416/51941199文章虽然有点老。
但是对于新手仍然是有意义的

给Linux 新手 [系列之一]

      by YUHJ@SMTH BBS

      你从来只用过Windows ,从来没接触过UNIX,只知道把一个文件拽来拽去,
只知道硬盘就是C : D: E:却从来没有研究过分区表,也许会用VC编个程序,
很习惯它的集成环境……

      有一天,不管什么原因了,也许是看报纸上那些把内存和硬盘都分不清楚
的记者的吹嘘,或者是老板要求你用它作个项目,或者是同学们都有了你没有
觉得很土,或者你听说找工作有这个的经验就有更大希望……不管怎样,你想
在自己的机器上安装一个Linux.OK,这个文章就是给你写的,因为从现在开始,
你会有成堆的问题你会觉得从前在windows 那里得来的有关计算机的经验好像
完全用不上。你会觉得“Linux 怎么这样麻烦”。你会有种从来没有开过汽车
但是得把汽车拆开修理一样觉得无处下手。OK,这个文章就是为你写的。

      为什么要学Linux.其实你不必学习Linux ,如果你就是想使用计算机让它
使你的工作,比如打字,排版,统计数据等更有效率,Linux 不行。Windows ,
或者我推荐windows 2000是你最好的选择,它对中文的支持很好,非常稳定,
上面有无数应用程序,而且如果你自己承担风险,还可以使用盗版,免费。Linux
将会给你造成很多麻烦,安装时会造成系统数据丢失,无法驱动网卡/ 声卡/
显示卡/ 显示器,无法配置中文,图形界面速度慢,等等。从前在windows 上
很容易做到的比如修改显示频率或者安装新的网卡驱动在Linux 下都变得好像
要你自己重新上一次大一计算机原理课那么讨厌。呵呵,那Linux 有什么好处
呢?

      你会问。其实Linux 没什么好处,从使用角度,它唯一的好处是它是我们
自己的,而windows 再好,是Microsoft 的。“又能怎么样?”

      你也许又问。区别是,Linux 可以让你来研究它,通过使用Linux 你可以
获得更深一步对计算机的了解——而不只是一个全自动的盒子。计算机是一个
很神奇的东西,你也许对那些写出windows 的程序员很崇拜(我是的),或者
对那些能发明更好的算法更安全的操作系统的hacker(对不起,远程攻击系统
的不是hacker)很崇拜,那么你应当知道,坐在一个windows 的机器前面整天
就会用鼠标拖拽也许能给你一个很好的打字员的薪水,但是永远无法让你进入
真正计算机的世界——成为一个自由思想的Hacker,或者说,你只能永远是个
windows 的用户——也没什么不好,很多领导还不会计算机呢——而不可能有
机会自己写一个windows.一个不太妙的结果是,当世界上充满了windows 的奴
隶时,我们就得花更大的价钱从Microsoft 那里获得这样的技术,某些社会里,
我们管这个

      讲这么多,无非是说,萝卜不能两头切,至少现在是这样。要想什么别人
都给你做好,系统安装一路回车,硬件配置点两下鼠标,对不起,请用windows
2000. 如果你准备好了这一切,那么接着看吧。

给Linux 新手 [系列之二]

      by YUHJ@SMTH BBS

      OK,你的第一个问题是:什么是Linux ,它和UNIX有什么区别?

      问这个问题的原因呢,多半是你还在大一的时候一次去实验室,看到高年
纪学生在一个特大屏幕的机器上作题,你羡慕的看着他,问:“这是什么计算
机啊,这么高级?”而他不无骄傲的说,“这是UNIX”。后来你懂的多了,知
道那是SUN 工作站,上面运行着Solaris ,就是UNIX. 现在你又听说Linux 也
是UNIX,是怎么回事呢?

      short answer:去看书,街上很多Linux 的书第一章就是讲他们的历史和
亲属关系的。

      long answer : UNIX 是一个20还是30年前由几个研究生在实验室里开始
后来一个大公司把它商业化了的一个操作系统。一来二去,它成长并且占领了
市场。当时它只是运行在只有大学才买得起一两台的昂贵

      机器上。后来机器多了,公司多了,懂得人也多了,就分家了,而“UNIX”
这个名字由于法律关系,谁也不能说自己的操作系统是“UNIX”

      而只能说是“UNIX兼容”系统了。所以现在“UNIX”系统是不存在的,存
在的只是一个遥远的传说。那么现在那些Solaris ,AIX ,IRIS都是什么呢?

      那些都是各公司在他们硬件平提上作的商业UNIX,这些系统都遵循一个叫
POSIX 的古怪标准,对了,这个标准呢,是后来UNIX太多太乱,大家编程接口
甚至命令都不一样了所以没办法座下来商量的一个协议。

      那么Linux 是什么呢?Linux 是基于PC(其它平台也有的支持)的UNIX兼
容系统,在跟UNIX的关系上,它不比任何其它UNIX兼容系统远。所以如果你有
“Solaris 才是正统UNIX,Linux 只是兼容”的想法,对不起你错了,起码你
得把支持AIX 的人打败才行,他们还认为AIX 才是正统UNIX呢。

      所以用Linux 你可以学到有关UNIX的知识,这些知识绝大部分在其它商业
UNIX上可以用得上。当然,其核心思想绝对是相同的。那么在三年前只有你的
读博士的辅导员才有机会在实验室那台宝贝SUN 上学的知识,你现在在PC机上
就可以实践了,这难道不是很妙的一件事情么?

      第二个问题:我想装一个Linux ,最新的是哪个版本,我听说过xxxlinux,
yyylinux,还有国内某个公司鼎力推出的zzzlinux,到底哪个更好呢?

      首先你需要明白,Linux 不是windows ,它不是一个由一家商业公司维护
的软件,

      只有一个包装。Linux 是可以任意包装自由配置的东西。任何一个人,一
家公司都可以按照自己的想法,比如加一点功能,加中文支持,作一个Linux
出来。这些Linux 虽然核心部分都一样,但是他们所带的各种软件,缺省的配
置都不一样。区别是用一种Linux 发布(不同的Linux 我们叫做不同的发布)
也许硬件很好配置,各种软件也好安装,用另外一种也许速度快,再一种也许
支持中文比较好。总之没有白吃的午餐,在windows 下想当然的东西在linux
下也许需要你熬夜才能得到。

      所以从一开始选择distribution就必须非常小心,否则因为自己刚好随某
个杂志得到一个Linux 发布就以为所有的都一样就开始安装,等硬盘数据毁了,
或者网络哭天跄地也配不出来的时候,就晚了。不是开玩笑,我知道windows
下安装驱动程序就是鼠标点几下,可是在Linux 下,为了驱动一个网卡,折腾
一夜是不希奇的——当然,我觉得这是值得的。

      所以,面对那么多Linux distribution,你应当选择哪个呢?

      比较著名的Linux distribution有:RedHat:最新版本6.2 , 7.0beta.
由于RedHat公司已经上市,获得了很多商业的支持,所以它在硬件软件兼容性
上很好。实际上它已经是Linux 的工业标准。想象一下如果你是一个比如Oracle
这样厂商的老板,你需要为Linux 开发一个版本,而不同的Linux dist需要单
独开发维护,为成本考虑你自然会只认准一个Linux.

      Slackware (7.1 )。很早就有的Linux ,有很多老的忠实用户,但现在
越来越不行了。

      SuSe Linux,德国人做的,在欧洲很流行,有一些驱动上的优势。

      另外还有Debian,CorelLinux等dist,不一一介绍了。

      还有你会看到国内媒体上吹捧的各种“中文Linux ”,他们的优势主要是
有中文处理。但是如前一篇文章提到的,想用中文,用windows 2000最好。实
际上我觉得一个老7 字班的前辈跟我说的一句话很好:“(对我们来说)在计
算机上看到中文本身就是一件很古怪的事情”。如果你是抱着学习计算机的目
的而来,那么你不可能避免阅读英文文档。即使是microsoft 的文档,有关编
程的文档,最新的也全是英文。当然,要上BBS ,看中文网页等,用英文的dist
一样能做到。

      作为我个人(个人观点,你不必相信我),我只用RedHat,因为我需要它
作为一个操作系统能让我更快的掌握并且学习我想学习的知识,而不是跟愚蠢
的网卡,声卡作斗争。尽管这些斗争对于学习Linux 来说也是很有益的,但是
对于一个新手来说,如果连系统都安装不上,无法配置,又怎么谈如何学习呢?
Again ,this is only my own opnion, and I could be wrong.

      在这个系列里,我会围绕RedHat 6.2来讲。

给Linux 新手 [系列之三]

      by YUHJ@SMTH BBS

      OK,从哪里得到Linux 呢?为了讨论方便,省去不表要的枝节问题,我只
讨论光盘安装。所以第一步是得到一张RedHat 6.2的光盘。

      得到光盘有两种方式,一种是去买光盘,这个比较简单,外面盗版盘就有,
不过需要指出的是,RedHat 6.2的光盘不可能是盗版盘,因为RedHat 6.2遵循
GPL 协议,它是不收取版权费用的。所以任何人拷贝安装光盘都是合法的。所
以不必为买到一张“RedHat 6.2的盗版盘”而沾沾自喜或有了偷盗成功的喜悦
……只是需要注意,卖盗版盘的为了骗钱什么都能做,有的把RH 6.0的盘刷个
封面愣告诉你这是6.5 最新的,可别轻易信。记得当年(6 年以前)kill杀毒
软件流行的时候版本升级快就有了各种假版本,我个人就亲自作了kill 500.2
来骗人玩,谁让他愣说他那个kill 79.8 是真的呢?

      另一种方法是获得ISO 文件,这个是一半新手必问的问题。你多半是有

      了网络,懒得或者无法买到光盘。你从某个FTP 下载了RH62_INSTALL.ISO
这样一个600 多M 的文件。你琢磨着这就是个跟光盘有关的文件,但是你不知
道怎么解开它。怎么办呢?

      ISO 呢,就是光盘镜像文件。假设你要把一个光盘的内容* 完全* 的传给
别人,你怎么做呢?当然最简单就是光盘拷贝,如果要通过网络,可以把光盘
上的文件都传过去。如果这个光盘只是一些文件倒简单了,可是如果这个光盘
有比如可以光盘启动这样的功能,传文件恐怕就不行了吧。更不用说在网络上,
传总量为600M的上千个小文件的可怕了。

      所以呢,有人就发明了ISO ,就是可以把一个光盘忠实的“照张相片”,
写到一个ISO 文件里。再用同样的软件可以把所有的信息再写回光盘,得到一
个一摸一样的盘,包括所有的比如能光盘启动的能力。

      那你已经有了这个ISO 了,怎么获得光盘呢?简单,找任何一个能刻光盘
的机器,它上面一定有类似EZCDPRO 的刻盘软件。每个这样的软件都应当有把
光盘写成ISO 文件和把ISO 文件写成光盘的功能。你需要在它的菜单里仔细找,
或者找人帮你找,如何把CD IMAGE FILE 刻成CD的功能,然后开始刻,就得到
一张跟RedHat发行版一个字节都不差的光盘了……

      一点小问题:那些down ISO的地方往往有md5.checksum或者RedHat62.md5
这样的

      文件,并不大,几十个字节,你不知道它们是干什么的,是不是也得都download
不然无法刻CD. 实际上你不必管他们,那些是数据完整性校验的文件,好像挂
号信的跟踪单据一样。只要信能到,是否有他们无关紧要。

      另外还有ftp 方式安装,用winimage展开ISO 本地文件安装等方式,我不
去讨论他们。

      好,现在你有一个RH 6.2的CD了,因为是ISO 刻的,所以它应当能做光盘
启动。那么,把它放入光驱,然后调BIOS设定光盘启动,启动机器。我们可以
开始安装RH Linux了。

      下来你的首要问题是“我的机器有16G ,分了一个C 盘4G,两个D ,E 盘
各6G”我还想保留C 盘的windows ,我能把Linux 安装到D 盘或者E 盘上么?
呵呵,非常好,你知道Linux 是一个操作系统,可能要把windows 弄掉,但是
遗憾的是你对硬盘,分区的理解是错误的。

      下篇文章会讲硬盘分区的问题。

给Linux 新手 [系列之四]

      by YUHJ@SMTH BBS

      OK,要讲硬盘分区了。在讲这个问题之前,我先来讲讲概念问题,什么是
概念问题呢?你还记得第一次,绝对的第一次听到A :盘,B :盘,C 盘时候
的感觉么?

      在那之前自己也许知道计算机有个存储数据的地方,因为在电视上或者广
告上看到过磁带机(我一直不知道为什么到了很久很久那种一个傻姑娘在一个
磁带柜前面操作一个现在看来是垃圾的磁带设备会不停的成为电视台播放电脑
题材节目的缺省背景)或者硬盘的图象。但是你并没有一个概念计算机究竟怎
么使用这些设备,直到你第一次打出dir a :或者打开explorer看到A : C:
字样的目录树。如果你还记得当时的感觉,恭喜你,这种感觉又回来了。

      对于一般人,只需要知道计算机能做什么就行了,所以对于他们来说,什
么东西越简单越好,越不需要他们去花时间学习理解越好,所以计算机从开始
的打孔到了后来的键盘屏幕,现在又往语音输入智能交互方向发展。这很好,
让那些把计算机当工具的人能更专注他们的工作(当然,他们会为此向我们—
—计算机的建设者付出应有的报酬)。可以说,MS在这方面作的很好,没有人
会否认

      windows 是一个非常“好用”的操作系统。这是指从使用者而言,你不需
要太多的去理解机箱里面的知识,或者说尽可能不去理解,就能尽快让计算机
为你工作。比如将本来很复杂的硬盘通过它在中间的操作搞成了C : D: E:
盘这样的东西,让一个只需要会打字的秘书MM也能知道怎么存储文件(当然也
会有笨的不可救药的)。但是这样(MS替你打点一切)的做法的一个问题也是
显而易见的:你没有机会,或者说没有被迫的机会去了解更深一层的知识。而
且当你脑子里只知道“C : D: E:”的时候,你就只有跟着windows 走这一
条路了。

      OK,言归正传。安装Linux 的硬盘分区问题。这个问题说起来是每个Linux
新手,甚至到有一定水平的人都不敢说很清楚或者掌握的(包括我自己)。硬
盘是个很古怪的东西,它的基本脾气是,一点搞不好,一大块数据就要丢,而
且丢的干干净净。我已经不止一次看到某人的毕业论文之类东西在答辩之前三
天因为硬盘问题而丢失并且没有备份!而安装Linux 是必须跟硬盘很底层的部
分打交道的,而不是win 下面安装个程序那么安全。所以我的第一个建议是,
如果硬盘上有重要数据,最好别贸然安装Linux.比较好的一个办法是找台不重
要的机器,硬盘可以重新分区格式化的,多安装几次Linux ,多试验一下windows
和linux 共同存在的各种情况。这样以后心里就有底了。如果实在要安装,一
定要备份重要数据,切记。

      下来讲Linux 对于硬盘的概念。只考虑IDE 硬盘。对于一个硬盘的操作分
很多层。我们需要知道的,是硬盘是由很多个512 字节的扇区组成的。而这些
扇区会

      被组织成一个一个“分区”。这些对于每个操作系统都是一样的,在这之
上每个操作系统自己去管理分给自己的分区。对于windows 来说,它会把这些
分区格式化然后按照CDE 盘来管理。而Linux 则不同。所以呢,一个硬盘上分
多个分区,安装多个操作系统比如windows ,Linux ,Solaris 等是完全可以
的。但是由于每个操作系统对分区的操作不同,只能说把操作系统安装到分区
中而不存在把操作系统安装到CDE 盘中(UMSDOS方式先不提)。

      每个硬盘的第0 个扇区是个特殊扇区,它不属于任何分区。它存放的是两
个东西:第一是一个很小的程序,它由计算机在启动的时候运行,这个程序一
般是某个操作系统带的启动程序,它运行后会启动某个操作系统或者给用户选
择来启动某个操作系统。Windows 的0 扇区启动程序很简单,它就是把windows
启动了,所以在这之前你是不会有多操作系统在一个硬盘上共存的概念的。而
Linux 所带的启动程序可以让你选择启动哪个操作系统,它叫做lilo. 这个东
西我们以后会经常碰到它。0 扇区还存放有另外一个重要数据:分区信息。前
面讲过,硬盘是有分区的,那么到底怎么分的,这个信息是存在0 扇区的。硬
盘的分区规则是这样的:一个分区的所有扇区必须连续,硬盘可以有最多四个
分区,这四个分区可以是四个主分区或者三个主分区加一个扩展分区。在扩展
分区里可以再继续分逻辑分区。举一个例子,一个10G 的硬盘,安装windows ,
有C : D: E:三个盘。那么它的分区情况可以是这样的:

      分区一:主分区 4G ,格式化为C :盘分区二:扩展分区 4G 扩展分区不
能格式化,它只能被再分区为逻辑分区

      剩余空间(可以被分区三,四占用) 2G

      在扩展分区中,建立两个逻辑分区各为2G,格式化为D :E :盘。

      那么在Linux 看来又是怎么样呢?注意我提到过,对于任何操作系统而言,
分区都是一样的,尽管Linux 不认同C D E 盘,但是这些分区都是相同的。所
以Linux 下看也是分区一,分区二等东西。但是它对这些分区的标志和解释是
不同的。

      在Linux 下,硬盘是一个设备,实际上Linux 下什么都是设备。对于IDE
硬盘而言,Linux 认为存在四个设备,对应于IDE 的四个位置接的设备。如果
装过机器我们知道主板上有两个槽,IDE0和IDE1,每个槽上能挂两个设备,主
盘和从盘,这些盘可以是硬盘可以是光驱。那么Linux 是怎么认为这些设备的
呢?在Linux 下,这些设备用/dev/hdx来标示。IDE0上的主盘就是/dev/hda,
从盘就是hdb ,依此类推,如果可以有多个IDE 槽就可以延续到hde hdf 等。
总之每条硬盘线上接的设备都被Linux 认为是一个/dev/hdx设备。如果你的机
器是IDE0槽上的主盘是硬盘,那它就是hda ,如果IDE1的槽上主盘是一个光驱,
那它就是hdc.在windows 下fdisk 是对“硬盘1 ”,“硬盘2 ”进行操作,而
linux 下的fdisk 就是对/dev/hda,/dev/hdb等进行操作。这样做很灵活,很
直观,不是么?

      那么Linux 下怎么看分区呢?Linux 下的分区概念是,硬盘上的每个分区
也是一个设备(又来了)。他们的标志是/dev/hdxy ,其中hdx 根前面一样表
示哪个硬

      盘,y 表示第几个分区。以hda 为例。hda1就是第一个分区,hda4就是第
四个分区位置。逻辑分区从hda5开始。所以刚才那个例子中,Linux 看来就是
hda 有10G.hda1是主分区,格式是windows.hda2是扩展分区,在它上划出了hda5
和hda6,格式是windows.hda 还有2G剩余空间可以继续建立hda3和hda4. 注意
因为hda2空间已经被划分完,所以无法再建立逻辑分区。

      这些硬盘的东西很容易搞混,建议多实践,多总结一下。可以参照一些有
关书籍,早期的DOS 书在安装部分讲了一些。现在的linux 安装部分也都有不
少。另外还有网上的一些介绍资料。

      明白了Linux 对分区的处理。下来就是分区策略了。在用RH6.2 的光盘启
动,一直回车选择缺省设置会到一个分区界面。这里你需要告诉linux 安装程
序在硬盘的什么地方安装linux.你需要告诉它一些信息,其中包括,建立一个
新的Linux 分区,多大,mount 到哪里。这里需要介绍一下mount 的概念。

      我们知道硬盘是可以分成很多分区的,每个分区由各个操作系统格式化然
后就可以使用了。但是要使用必须有一种方法。windows ,或者DOS 的做法是
将格式化好的分区挂(或者说mount )成C : D: E:盘。盘符的分配是操作
系统决定的(到NT后可以用户指定)。在Linux 下某个分区怎么使用必须用户
自己指定。在Linux 下分区并不按照C : D: E分配,而是挂(mount )到一
个目录下。整个UNIX

      的存储空间结构是一个目录树(而不是每个C : D: E:下各有自己的目
录树)。

      最上一层是根目录(用/ 表示,注意不是windows 的反斜杠\\ )在根低下
有其它目录。首先需要有一个分区mount 成/ ,然后再在根下面建立其它目录
然后把分区mount 到这些目录上去。所以整体来看一个unix的存储系统是一个
目录树,但是它可以包括很多分区,甚至其它存储设备,比如光驱,内存盘,
或者网络磁盘等。

      在Linux 安装的时候除了/ 还有几个目录是预先建立的,我们需要知道的
是/usr,/home 还有/root.先不管他们都做什么,一般而言我们需要分一个空
间,指定它为Linux Native类型,然后mount point 是这几个目录之一。另外
还需要注意的是Linux 分区有两种类型,native是可以存储文件建立目录的那
种,还有一个linux swap,这个是linux 的内存交换分区,在安装RH的时候必
须指定一个。所以在安装的时候最少需要分一个区,类型linux native,mount
到/ 上,然后一个分区类型linux swap,swap区不mount 为任何目录,系统对
其进行单独处理。

      下来是分区大小问题,安装Linux 一般而言1G空间为/ 就差不多了,初次
安装为方便起见,可以建一个2G的分区mount point 为/ ,然后一个swap.swap
的大小作的跟内存一样大就是了,最大128M. 以后再安装的时候可以根据自己
对硬盘的要求建立其它分区来mount 比如/home.

      对于已经安装了Windows 的机器,可以在Linux 安装程序里删除一个windows
的分

      区,一般而言是一个逻辑分区(你不会想删除C :盘吧),然后在它的空
间里建立Linux 的分区。

      Linux 的/ 可以是主分区可以是逻辑分区。但是需要注意的是8G的问题。
我想你也许听说过8G,到底8G是什么呢?具体问题比较复杂,简单说就是不能
把Linux 的/ 分区mount 到一个硬盘8G以后的分区上。所以如果你的硬盘有16G
,前6G 已经分给C :盘,后里面是两个5G的D : E:盘,纳闷你就得把D 盘分
区删除建立Linux 分区而不是E 盘,因为E 盘已经在8G以后了。8G以后安装Linux
是没有问题的,只是无法启动。当然这个是有解决办法的,但是在新手的状态
我还是建议尽量按照最简单情况作,将来熟了再练习其它。

      分了区之后继续安装,你还被要求配置一些其它东西。包括root密码,Lilo,
配置网络,X 等东西。其中Lilo是比较重要的一部分。你会被要求将lilo安装
到MBR ,分区启动扇区,或者一张软盘上。你需要选择是是否安装到MBR 或者
floppy上。一般而言安装到MBR 上即可,为了保险起见可以做到软盘上,这样
机器用硬盘启动还是windows 那套,进入linux 可以用软盘启动。注意你需要
把BIOS中的Virus Warning 关闭,否则无法安装到MBR 上。

      如果你的机器配置比较标准,网卡,声卡,显示卡等都能自动检测出来的
话,一路回车,再启动你就可以进入Linux 了。如果运气不好(大多数情况是)
网卡声卡没有在启动的时候配好也无所谓,跟windows 一样将来可以再配置。
总之这些不会影响到你安装。

      OK,机器再启动,跟以往不一样的是没有看到Starting MS Windows 98…
…而是一个Lilo:的提示符。这说明Lilo已经正常安装了。你现在按回车就可
以进入Linux 了。如果要进入Windows 可以打DOS 然后回车。如果你指定了不
同的windows 分区启动标志符,可以用[TAB] 键看一下你有哪些选择。

      这是一个很经常被问到的问题,这里说一下。出于某种原因你要删除Linux
,你知道用DOS盘启动然后fdisk 删除Linux 分区或者重新安装NT删除Linux 分
区。但是当你一切都安装完了之后windows 无法启动,Lilo:这个符号总在那
里,机器死了一样。别重新分区格式化都没用。然后某个半瓶子醋可能告诉你
“没救了,低格吧”。记住,除非硬件损坏,硬盘任何时候不需要低格。这种
情况是由于其它安装程序并不重写0 扇区,即MBR 造成的lilo无法删除。解决
办法很简单,请牢牢记住:用一张DOS 盘启动,运行DOS 的fdisk /MBR. 这个
命令就是重写0 扇区的引导程序为MS的标准程序,即可以启动DOS ,Windows ,
WindowsNT ,Windows 2000的那个,而不会改变硬盘分区任何其它信息。所以
它是绝对安全的,绝对安全的,绝对安全的。当你碰到Lilo无法删除的时候,
记得fdisk /MBR.

      OK,你成功的启动了Linux ,进入了一个图形或者字符界面要求登陆。下
来你会有成堆的问题要问。下来我会讲怎么去问问题以及怎么寻找帮助。

给Linux 新手 [系列之五]

      by YUHJ@SMTH BBS

      “大夫,我痛,告诉我怎么办吧”

      “别着急,你先说你哪里怎么痛了”

      “噢,哪里痛还不一样治啊,我肚子痛,快告诉我怎么办吧,我很着急的”
“别着急,再说说你昨天都干了些什么啊?”

      “怎么跟昨天干什么还有关系?我昨天就干了我每天作的事情嘛,我觉得
很正常,你怎么还不告诉我怎么办?不想说就别说”。“别着急,你再想想,
昨天作了什么跟平时不同的事情?”

      “不同?好多都不同啊,我昨天上班没搭上公车打的的,上午没人给我打
电话,比较古怪……。”“不是这些,我是问你有关吃饭啊,运动啊之类的”

      “噢,这个啊,昨天晚上我吃了饺子,很好吃的喔”“噢,吃了多少个饺
子啊”

      “嗯,80多个吧,噢,对了,晚上肚子就疼,一直到现在”“噢,那你是
吃撑了”

      以上是我记忆中BOB 老师写过的文章。如果你觉得这是个笑话的话,那我
几乎每天都会经历这类笑话。一个人会先问“我的Linux 怎么xxx 了,怎么办”,
到最后一步一步的诱导问题直至答案揭晓。你下来会遇到很多问题,你不知道
去哪里找答案。你觉得网上都是高手,你觉得高手就是你一站到那里他就知道
你有什么问题。他无所不知,会告诉你一个“绝招”一下解决你的问题。所以
你什么都不必多说,一句话的标题加一个“无内容”的内容。就等高手给你
“绝招”了。

      可惜这样的事情从来没有发生过。

      如前所述,Linux 相对于你也许很熟练掌握的windows 系统来说有很多全
新的概念。好像微积分对一个只知道简单代数的人来说一样。在这种情况下,
你用你固有体系下的思维来试图获得答案显然是困难的。举一个例子,Linux
下的图形界面X 配置一向是新手必问的问题。你安装了Linux 但是屏幕却是300X200,
16色的,你想知道怎么办。从windows 那里得来的经验,你想应该有个办法找

      到“显示属性”这样的菜单然后改变一下分辨率颜色深度,甚至扫描频率
就可以了。所以你的提问多半是“我的X 只有300X200 ,我在哪里可以改变它”,
然后你期望一个高手告诉你“在xxx 地方鼠标右键点一下,就得到显示属性的
菜单啦”,然后你就可以象在windows 里面一样修改屏幕分辨率了。这里有什
么不对呢?不对的地方是,Linux 下的X 不是windows ,它的显示分辨率根本
不是在图形界面里面调整,而是在进入X 之前,更重要的是,能改变到更高分
辨率的前提条件是显示卡的驱动要配置好。而这个又跟Linux 的发布,版本等
有关系。这么多情况都不知道,高手绝对是没有“绝招”告诉你的。对照前面
那个笑话,肚子统的原因很多,如果病人都能知道并且判断出来,医生还有什
么用?

      那么当你有问题的时候,应当怎么做呢?第一,最好别问问题。Linux 的
安装配置本身就是个学习的过程,通过自己摸索解决一个问题也许比别人告诉
你要慢很多,但是解决问题的本身有助于你加深对Linux 概念的理解。同时为
了解决一个问题也许能带出很多其它问题。我记得我当初初学Linux 的时候在
一台破机器上把Linux 和win98 安装了很多遍,最终明白了Linux 分区DOS 分
区共存,Lilo的配置的很多问题。当然一些关键地方自己摸索耗费时间太多而
且没有意义,多交流也能达到大家共同提高的效果。关于如何去主动摸索寻找
问题的答案我后面会讲,这里就假定你需要到BBS 上问一个你无法解决的问题。

      你碰到了一个问题,Lilo不启动,显示010101或者LI死机,或者不知道为
什么你的X 屏幕只有300X200 ,或者不知道怎么配置网卡,或者不知道为什么
书上讲

      的cd /usr/src/linux ;make config 返回错误信息,或者编译了一个测
试程序gcc -o test test.c然后运行test什么输出都没有。你手足无措。你想
上网问“大虾”们来获得答案。

      问问题的第一点,是要明白,两个字就能说明问题并且解决一个的事发生
在在一个大侠身上也许表现的很潇洒,但是在你提问题的时候只能表现的很无
知,就好像那个说“我痛”的病人一样。你必须详细的描述一下几个问题:你
有什么,你做了什么,你希望达到什么效果,你发现什么问题,具体的问题现
象描述。比如如果你网络不通,你就需要先说你的Linux 什么发布,什么版本,
你怎么安装的,怎么配置的网络,详细到具体的命令,你的网络情况,局域网
广域网等。你也许会说很多废话,但是要明白你是来问问题的,你不会知道究
竟问题出在哪里,所以你必须把你能想到的跟问题有关的事情都说出来才可能
包含具体出问题的地方。在这里你不是大侠,无关潇洒不潇洒的问题。我们的
目的是解决你的问题,并且通过解决问题获得自身的提高,无它。

      第二点,是不要自己做任何判断。好像那个认为Linux 也应当根windows
一样有个地方点右键获得“显示属性”的问题一样。你事先根据自己在其它系
统上的经验来自己做了问题的限定并且将回答问题的可能限制在一个很小的范
围内。

      这样做既限制了你自己的思维,也影响到你正确描述问题。事实是你的错
误多半是概念错误,开始走的方向就错了,与其这样不如把自己明白的似是而
非的东西抛开,仔仔细细的把那几个问题(你有什么,你做了什么……)写清
楚,看别人会怎么作判断。

      第三点,你是来提问题的,你觉得你应该受到帮助。且慢,这里已经不是
教师答疑了,你不再是一个有权力受到教育的大学生了。回答问题的人也不再
是你的老师或者助教了。他们对你没有责任。大家无非是在一个地方相互交流
共同提高。如果有人回答你,绝对是在助人为乐帮助你。而当你的问题没有人
回答的时候,多半是你的描述不够详细,别人不是医生,不必一个一个问题诱
导下去。所以当你的问题没有回答的时候,先对照前面一点再修改问题的描述,
这也是个思考的过程。实在不行,就自力更生吧,接着看下面的文章。

      Linux 的一个重要作用,我觉得,就是培养人自己探索的能力。回想我们
的学习过程,从小学中学到大学。让人自己去探索的环境实在太少。所有的问
题都有一个标准答案,要么在老师那里,要么在参考书上。就连作文这样无法
量化的东西也有个倒霉的“中心思想”。所谓“自学”也无非是猜测到底标准
答案是什么。如果要做大一点的课程项目(Class Project )也会定义的非常
详细,老师恨不得把所有你能自我创造的细节都堵上,这样可以方便他评卷。
这样环境下教育出来的人,到了Linux 下就会经常感到无所适从——的确,没
有老师的标准答案了,你做的对不对只有自己知道。

      所以学习Linux ,很重要的一点是有自己搜索知识,突破自己思想局限的
能力。遇到问题第一步不是想“谁有标准答案”然后去问人,而是先想“我怎
么能

      解决他“,不行就自己去寻找解决办法,再考虑这个解决办法为什么自己
想不出来,将来碰到类似问题应该往哪个方向去努力。最后再考虑自己是否能
在这个方向上作出改进。经历过很多次这样的事之后,人的创造力会有很大的
提高,而这个对于现在靠技术吃饭的人来说,就是10万和2 千的区别。

      OK,你有一个问题,你不知道怎么解决,你怎么去寻找答案,怎么提高自
己呢?在有一个问题的时候,你首先要想,你是个新手,在你之前已经有无数
个新手了,你不会是个多特殊的新手。唯一的不同是你的知识面跟别人不同,
而不是你的问题有多特殊。比如你有个D-LINK 220网卡无法配置你觉得很困惑。
实际情况是有很多人已经困惑过了,他们问过这个问题并且都得到了答案。所
以你的第一步应当是明白“这个问题已经有根我一样的人问过并且在某个地方
有答案了”。

      那么,怎么找答案呢?在BBS 上,你可以进入Linux 版,然后想“已经有
答案了,在哪里呢”。首先你可以在从前的文章里找,这个可以用搜索标题的
方法。

      先想一下如果你要问这个问题要用什么关键字作标题,然后搜索这个关键
字。

      在BBS 上搜索是输入?号然后输入关键字再回车。搜索中用什么关键字很
讲究,比如你要找有关DLINK 530-TX卡的信息,那么你要想别人会怎么问。肯
定标题里有网卡型号,可是别人会怎么写呢?也许是530TX ,也许是530 TX,
也许是530-TX. 所以但是肯定都包括530 ,所以你可以搜索530 这个关键字,
然后把搜索到的文章都看一遍,基本上就有答案了。类似的可以搜索的问题还
有DE尤

      220 ,810 (Intel 810 主板内置显卡驱动)等。

      其实BBS 只是一个很小的地方,真正最新最全的知识在网络上。几乎所有
的Linux 有关程序,常见问题都会有人整理出来放在网上。需要注意的是,一,
Linux 不是microsoft ,有专门公司维护文档。Linux 的文档到处都有,质量
不一,而且随着L inux的不停升级会有各种版本。比如IPMASQ因为它随Linux
内核升级版本更新很快,所以它的帮助(faq )也频繁升级。看了老的faq 会
让你更糊涂。所以找文档不要看到一个就盲从,要确认它的确有用,也许你找
到的是个旧版本呢?要知道一些讲Linux 的文章是5 ,6 年前写的,当时CDROM
还是个稀罕货,你想从那里获得如何用CDROM 安装Linux 的问题,却发现上面
都是讲怎么用软盘安装,这个就不好了。另外还有有些讲内核编译的文档都是
说make config ,而且里面的选项也很旧,实际上现在内核编译都用菜单方式
的make menuconfig 了。所以文档的新旧是个很需要注意的事。第二点是你无
法逃避使用英文,你必须强迫自己去理解英文文档。的确有中文的文档,但是
那些的普遍问题是缺乏维护,太旧了。

      下来请你把这个网址写在手背上:www.google.com. 以后对Linux 有了问
题,就去上面搜索。google是我知道最好的搜索引擎,尤其是在Linux 知识方
面。

      几乎是我想知道什么就能搜出什么,从网卡驱动到并行计算机的配置。我
希望你以后在问问题之前在这上面搜过。搜索的主要技巧是选择正确关键字,
参考前面讲过的,搜索530-TX的驱动最好输入Linux 530 driver字样。有关搜
索技

      另外一个地方是News Group,不过一般的news server 是联不上的,而且
组也不多。我们可以上www.deja.com去搜索。这里都是非常新的国际新闻组的
讨论,当你的问题已经新到最新的文档里也没有的时候,可以上这里搜索。新
手的问题一般不需要。

      当然不要忘了BBS 的精华区,那里往往有些意想不到的收获,仍然需要注
意的问题是,一些中文的文档,尤其是长文章,往往很旧。

附:希望您支持!
最近找了一些视频学习资料,就是没积分换资源,希望您能帮忙到以下链接(abab123视频教程网)支持下,无需注册,您只需通过链接进入视频网站主页即可,谢谢!希望您健康快乐每一天!

http://www.abab123.com/bbs/down.asp?html=1411418