您现在的位置: 设计龙 >> 服务器 >> linux free bsd >> 正文

Linux初学者入门

Author:x Link:www Hits: Update:2006-11-12 0:48:28
天极网摘 ViVi收藏夹 365Key 和讯网摘 POCO网摘

  ◎Linux的起源◎
  
  在1990年代初期,FSF就已经设计好了GNU操作系统的所有主要组件,除了最重要的一样未完成─系统核心。大约就在此时,有一位芬兰荷尔辛基大学的一位学生,Linus Torvalds,开始至力于 UNIX-like【注】操作系统的核心发展工作。Linus使用过Minix一段时间,Minix是操作系统大师Andrew Tannenbaum为学术研究所写的一套UNIX-like操作系统。Linus对于Minix核心的效能表现相当失望,并深信他能设计出一套更好的核心。他把初步的成果与Internet新闻讨论群组上的人分享,很快的,Linus得到热烈的响应,各地的程序设计师透过Internet参与此核心的发展计画,而这套由Linus所设计的核心就被命名为〝Linux〞(因为它是Linus’ Minix)。然而,只有核心程序是无法称为一套操作系统的,必需还要有其相关套件与工具程序配合在一起,才算是一套完整的操作系统。Linux的成长相当快速,在1991年的十月五日初版发行后的第三年,终于在1994年三月发行第1.0正式版。在这之前,于1992年时,Linux已与GNU的其它软件整合在一起,成为一套完整的全功能操作系统,这套操作系统就以它的核心来命名。
  
  【注】UNIX-like,故名思义,就是以UNIX操作系统的架构理念,衍生改良出来的变种版本皆称之为UNIX-like操作系统,如Linux、Solaris……等。
  
  然而,Linux的开发工作并没有停止,在初版问世之后,Linux迈入了快速发展的阶段,它被疑植到non-intel的处理器,也加引入了分布式运算技术,使多重处理器(SMP)的支持产生了,更重要的是,一些复杂的TCP/IP网络机制(例如IP伪装)也被纳入了核心里。目前Linux所支持的计算机平台包括Apple PowerPC、DEC Alpha、Motorola 68k、Sun SPARC、Mips……等等;更进一步的来说,Linux不应该被归类为UNIX的变体版,它大体上符合POSIX(Portable Operating System Interface)的标准,POSIX是Open Group的X/Open规格的基础。
  Linux 的沿格


   
  Linux的创始人─托瓦滋先生,他为Linux这套操作系统选定了一个吉祥物作为Linux的标志,就是一只可爱的企鹅,如图所示。所以Linux的使用者或爱好者也称之为〝企鹅族〞。

  ◎Linux 套装版本(Distribution)简介◎
  因为Linux是属于GNU软件,和微软的Windows的是, Windows是由微软公司内的数百位资深的程序设计师与工程师在进行维护、更新、及服务;相较于Linux,它是由广大的全球信息网络上的精英份子、骇客、高手、与专业级的玩家,来共同使用、修改、维护,所以Linux的更新速度是异常的快,平均每两个月左右就会有新版本,只要一有漏动或BUG【注】被发现,马上就会有网络上的高手骇客们为它修改、更正,并马上推出新版本。当然,Linux 的版本相较于Windows自然是较为紊乱不一,不像Windows般有规律统一性,这是Linux的缺点之一,使得初学者光是认识Linux的版本就弄得一头雾水。
  【注】BUG,故名思意,中文常译成臭虫,是一套软件设计时,因程序设计师的疏忽,或逻辑架构的错误等,所造成的缺陷或安全性漏洞。在操作系统中,常被骇客有机可乘而入侵的原因,就是在此。在Windows中,一发现有漏洞或BUG,只能等微软官方出修正程序或更新的版本;在 Linux中,若您发现了漏动或臭虫,则不必如此大费周章,只要您有一些基本能力,您就可以自行修改、补正,这也是Linux的优点之一。
  
  目前Linux有许多种不同的包装版(Distribution),大致可规类为以下这几种较常见的:RedHat Linux、Mandrak Linux、Slackware Linux、Debian Linux、SuSE Linux、Open Linux、Corel Linux、Turbo Linux、Linpus Linux、Power Linux……等等,然而,这并不是都是单一版本,例如以RedHat Linux这套Distribution来说,它目前的最新版本已经到7.0版了。其中,在台湾最常见的是美国红帽公司的RedHat Linux以及台湾百资科技公司的Linpus Linux,只有Linpus Linux是台湾本土的,支持大多数中文环境,但台湾真正使用的人并不多,一般对初学者的建议是使用RedHat Linux,因为在所有的Linux当中,此款是学习曲线较平缓的(较容易上手)。而且,RedHat也是美国Linux Distribution的最大供货商。本文也将以此款为中心来介绍。
  
  ◎ Linux系统结构简介◎
  
  现在这节就本文的重心了,本节将以RedHat Linux为基础来介绍并引导各位进入Linux的核心世界里。
  本文之所以选择以RedHat Linux来作引导的原因除了在台湾较盛行以及较易学习的原因外,最大的原因是因为所有的Linux系统都是以英文为接口,目前尚无真正支持中文的环境接口,但是在台湾的RedHat Linux使用者中,有一些志同道合的前辈们,共同开发出了所谓CLE(中文延申组件)【注】,安装此套件之后,可以使全英文接口的RedHat Linux支持中文的输出输入环境,这对于中文国家的Linux初学者来说,真是一大福音。
  
  【注】有关于CLE的详细信息,请参访此网站:http://cle.linux.org.tw/
  
  Linux目前是以〝ext2〞为主档案系统,相较于使用〝FAT 32〞的Windows系统有很大的差别,不论是在档案储存分配或资料存取机制,都有大大的不同。因为Fat 32的档案储存机制是所谓的〝见洞就钻〞,就是当你要储存一份档案或资料时,Fat 32系统会将他切割成不等大小的资料区段,然后分散存放到盘片上的每个剩余小空间,要读取时在从每个被分散的片段搜寻组合回来,这样的储存方式固然有其优点,就是能使硬盘中的资料排列更紧密,节省了许多的计忆空间;但是,你想想看,若硬盘中上千个档案都以这种方式储存,且随着档案的移动、修改、删除、新增,整个硬盘中的资料丛集岂不变得一团乱,所以微软才会开发一套〝磁盘重组程序〞,三不五时就要重组硬盘。至于Linux所使用的ext2档案系统,则没有这个问题,所以对ext2档案系统的扇区做重组动作是没有意义的。然而,Windows 95/98/me系统只认得FAT 16或Fat 32的档案系统,Windows NT/2000只认得Fat 32和NTFS档案系统,它们都无法存取Linux系统的扇区;当然,程序或软件也百分之百不兼容了。但Linux系统能认证的档案系统却有数十种,除了 Windows系统的FAT32、FAT16、NTFS之外,还支持minix、ext、ext2、HPFS、NFS、sysv……等等。当然, Linux也支持iso9660标准的光盘资料格式。中国站长第一门户
  一般让Linux最感头痛且最易因此而放弃学习Linux的关键就是安装Linux,这是一项不简单的技术,有着一门高深的学问。
  我们先从档案系统关念来开始介绍Linux,在Linux系统中,不像Windows一般,将硬盘的分割区视为C:、D:、E:……等,在Linux系统中,它和Windows一样采用树状式档案分配,Windows系统的根目录(最上层目录)是C:\;然而,Linux的根目录代号则是〝/〞,其所有的相关套件、工具程序、文字文件、暂存盘……等都是在此目录之下。然而,Windows系统的所有组件只能在同一个主硬盘分割区;Linux则不然,要安装Linux系统之前必须先将应碟分割成四份(大小不必相等),其中一个分割区只需30MB大小左右,且必需位于主硬盘的第1024道磁道之前,此分割区在Linux系统中代号是〝/boot〞,专放置一些核心档案及重要的激活相关组件;其它三个分割区可以置于第1024道磁道之后,也可以是用延申分割区规画出来的逻辑磁盘驱动器,这都无妨;第二个分割区大约64MB左右即可,此区乃作为Linux系统的〝swap〞所用,所谓的swap就是档案交换系统,说简单一点,就和Windows系统中的虚拟内存相同的功用,此区不需分配太多空间,不然只是途然的浪费罢了;再来就分一个大约200MB的分割区,这是要给〝/〞目录的;最后是要一个空间最大的分割区,最少要600MB以上,此区是要让〝/usr〞来挂载的,若你希望在Linux系统中安装很多软件的话,就要分配更多一点空间(笔者自己的Linux系统的/usr分配了将近2GB的空间)。当然,你也可以将〝/usr〞的空间并入〝/〞的分割区中,只是这样日后系统的维护与管理或是出状况时资料的抢修较不利。最后,请各位注意,以上的四个分割区除了第一个分给/boot的分割区之外,其它的三个分割区可以位于该硬盘的任何位置(顺序颠倒也无妨),不管是主分割区或逻辑磁盘驱动器都可以,甚至于同一部计算机中的其它硬盘里的分割区也行,这是Linux 系统在于档案的管理上,和Windows较大的差异之一。以下是整个Linux系统的档案配置表,请参考:
   
   
  
  由于Linux系统的安装过程与系统调校是非常的烦索且冗长的,必需要为你的计算机上的硬件配备做精却的调整与设定(包括键盘、鼠标、声卡、显示卡、网络卡或调制解调器……等),您必须先知道计算机中的显示卡、声卡的芯片型号,屏幕的规格、垂直扫描频率、水平扫描频率支持之最大分辨率……等。所以本文不作介绍,若您想真正的了解与正确的安装的话,笔者建议您去书局买一本Linux的相关书籍,这样对您比较有帮助。
  【注意】在安装Linux的过程中,必需非常的小心谨慎,绝对不可以遇到不清处的选项就随便选一个带过。在Linux系统的安装过程中,设定错误对计算机硬件有时会造成极大的伤害,就如屏幕的同步扫描频率,若设的值太高的话,很可能会把你的屏幕给烧毁掉,必须要确定正确后才能进行设定!!!!!
  然而,因为 Linux 系统并不像微软公司的 Windows 系统一般,收录了几乎所有的的硬件驱动程序,在 Linux 所能使用的硬设备,都必须是系统核心所能支持的,这是目前的 Linux 系统的一个缺点;所以你的硬设备若是太新颖或太罕见的话,很有可能 Linux 核心不支持,但你仍可以自己由该硬件厂商的网站下载该驱动程序的 Linux 版,再将它编译进核心中,但这毕竟是要高手级的玩家才办得到的事。
  你若还在对你的硬设备心存怀疑是否能在 Linux 上运作的话,你可以到台湾 Linux 使用者联合协会的网站查询,那儿有台湾的 Linux 前辈们建立的一个庞大的数据库系统,里面存放着目前 Linux 所支持的硬设备列表。当然搂,你若发现你的硬设备并不在该数据库中时,请你在 Linux 系统上测试完后,不管支不支持,都请到该站回报一下,造福一下企鹅族们吧!!!!! 台湾 Linux 使用者联合会的网站如下:
  http://www.linux.org.tw/
  了解了Linux系统的档案分配架构后,接下来就要来了解一下操作接口。
  
  ◎使用者接口◎
  
  基本上Linux是延席了UNIX的传统─纯文字模式,就是像早期得MS-DOS一样的操作方式,没有图形化的窗口接口,要做任何动作都必需要用〝指令〞。但是后来有一个非营利性的组织兴起,他们专门为UNIX-like的操作系统开发外挂软件─X Window─,也就是在UNIX-like的操作系统上的窗口接口(像现今的Windows系统一样),而且其窗口环境的超劲爆的绚丽程度还远超过 Microsoft Windows 系列的产品。这也使得Linux操作系统的使用范围,从大型中央服务器与高阶程序发展平台的领域,扩展到了高阶影像处理与3D计算机特效工程……等,使得 Linux机乎变成万能的了!!!!! 然而,除非是要进行文书编辑、影像处理或高阶绘图等工作,否则,笔者并不建议您经常使用X Window来进行工作,因为这样就失去了使用Linux的重要意义了;Linux真正的精神和之所以有魄力,其重点就在纯文字模式下的〝Shell〞,此字的中文常被译为壳层。但这并不是重点,重要的是它功能的强大和应变能力的机制以及其精巧强悍的特性,这是在X Window之下所办不到的。我们就来认识一下这到底是何方神圣,会如此的有气魄吧!!!!!首先,Shell是一种软件,其功用是介于使用者与系统核心及套件程序之间的沟通协调,在所有的UNIX-like操作系统中,Shell分成很多种版本,其列表如下:
  ASH shell─────类似于AT&T的System V UNIX所使用的Shell。
  BASH shell────Linux标准的Shell。他是号称最能符合POSIX标准的一种Shell。
  C Shell──────第二个UNIX Shell,它为互动操作新设计了许多的新功能,因为它的语法类似C程序语言而得名。
  Korn shell─────第三个UNIX Shell,在原始的Bourne shell中加入了许多C Shell的功能。
  Z Shell──────进一步整合Korn shell的各项功能的一种Shell。
  至于RedHat Linux系统所用的Shell都是使用BASH,所以本文将以介绍此种Shell为主。
  在Linux系统中,千万别妄想要像在MS-DOS时一样,把所有的指令及参数都背起来,在Linux系统的指令实在是太多了,即使再怎么资深的玩家也办不到,Linux系统有提供一些方法来让使用者查询指令,这在本文稍后会介绍。
  由于Linux系统是所谓的〝多人多任务操作系统〞,相较于〝多任务操作系统〞的Windows 95/98/ME自然在使用上的观念有些许的差异,Linux不论是在本地端或网络远程服务,其保全措施都较Windows系统上来的严谨些,为了因应数量庞大的使用者数量,Linux系统将所有的使用这规为两类,一是所谓的〝root〞超级使用者(系统管理员),此帐号的密码又称为管理员密码(root password),在Windows 2000中称之为Administrator;另一种使用者是一般使用者(user),拥有其一般的帐号名称、密码,且每一个一般使用者都会被规类为某一群组(group),当然,同一个一般使用者不一定只规属于一个群组,可能是多个,而不属于不同群组的使用者则拥有着不同的权限。关于此详细的细节介绍,请参照笔者所着的另一篇教学文件─Linux系统指令简介。然而,每一个Linux系统的使用者(包括系统管理员在内,都有一个所谓的自家目录(home director),系统管理员的是/root,一般使用者的是位于/home中的一个以该帐号名称为文件名的目录,如帐号名称为〝XYZ〞的一般使用者其家目录就是/home/XYZ。此目录是该使用者或管理员一登入系统时所在的工作目录,也是该使用者的专属目录,可存放其私人的档案资料。其中的资料,除非是该使用者本身同意,否则只有系统管理员才有权利存取、删改。
  在激活Linux时,经过一连串的开机程序后,第一个画面便是登入系统的动作,当画面出现〝login:〞时,输入使用者帐号的名称,若要以管理员身份登入的话,在此就要输入〝root〞。之后会要求您输入密码,看您是用哪一个帐号登入系统就输入该帐号的专属密码。若以管理者身份登入成功之后,会显示如下:
  
  [root@desktop /root]#_
  
  此时中括号中的第一个root字符表示是以管理者身份登入此系统的,而desktop表示是由本地端登入的(非网络登入),而后面的〝/root〞则表示目前的工做目录位于/root资料夹中,这个目录是系统管理员登入时的预设资料夹,而最后的〝#〞符号则表示拥有最高权限。这一段文字就相当于在MS- DOS中的C:\>之意,而最后面那个闪烁着的〝_〞符号就是光标,其用法和MS-DOS的光标完全一样。若是以一般使用者的身份登入系统的话,假设该使用者的名称是XYZ的话,那登入后的命令列就会如下:
  
  [XYZ@desktop /XYZ]$_
  
  此时,〝/XYZ〞符号表示目前位于/home/XYZ中,而〝$〞符号则表示拥有一般的使用权限。
  在Linux系统的完整指令结构中有几种要素:指令本身、参数、变量;当然除了指令本身以外,都不是必要的参数,您可以依照实际情况斟酌使用。我们在稍后的指令介绍时,再以实例说明。
  所以在Linux的BASH里,提功了数种指令的查询功能,以下就介绍这几种查询指令:
  man───在此指令后空一格接着您要查询的指令,它就会激活该指令的说明页,内容除了指令的功能外,还说明了此指令的各种参数之解说。
  apropos──此指令用于忘记某个指令的正确拼字时;或想做某件事但不知有什么指令可用时。你只要给apropos一个关键词(Keyword),它就会逐一搜寻所有的说明页,然后列出含关键词的说明页。用法一样,也是在此指令后空一格接着你要搜寻的关键词。如apropos file,此时,apropos就是指令本身,而file则是变量。
  
  ◎Linux的参考文献◎
  
  因为 Linux并非由单一厂商所推广,其版本之多杂也就如本文先前所述,所以要全盘性的了解Linux并上手的话并不容易;所以一些对Linux颇有专精的前辈们会写一些技术文件,来引导Linux的使用者,这些文件称为〝HOWTOs〞文件。然而,这些文件都是以英文为主撰写的,对于中文国家的使用者来说,真是非常的不便;但没关系,在台湾的Linux前辈们有成立一个CLDP计画,专门将英文的HOWTOs文件翻译成繁体中文,以供台湾的学者方便阅读,因为这个计画是开放性的,任何有能力的人都能参与翻译,若您有这份服务的热忱,且又有时间、有能力的话,您可以向此计画的主导人员报备,以参与这项计画。此计画的网址如下:
  http://www.linux.org.tw/CLDP/
  你想掌握目前世界上 Linux 的第一索脉动讯息吗???? 笔者推荐一份台湾地区的Linux 电子报,内容相当不错,还有 Linux 的技术文件分享,希望有心投入 Linux 的玩家前往订阅。喔~~当然搂,Linux 是传承自由软件基金会的〝开放〞精神,所以此份电子报也是免费的哟~~~~~。请到下列网址订阅:
  http://www.linuxcenter.com.tw/
  本文的目地在于引导初次接触(或欲接触而尚未接触)Linux的使用者,以上就是本文的内容,这只是Linux的基本而已,若欲更深入的了解Linux的精髓的话,请继续研读笔者所着的其它篇技术文件─Linux指令简介、Linux系统上的X Window…等。

上一页  [1] [2] 

   
  • 上一篇文章:
  • 下一篇文章: 没有了
  • [回到标题] [回到顶部]