LINUX基础知识

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1LINUX基础知识LINUX是什么?诞生:1990年,芬兰大学生LinusTorvalds用汇编语言写了一个在80386保护模式下处理多任务切换的程序。发展:他把源代码发布在网上,随即就引起爱好者的注意,他们通过互连网也加入了Linux的内核开发工作,一大批高水平程序员的加入,使得Linux达到迅猛发展Linux一开始是要求所有的源码必须公开,并且任何人均不得从Linux交易中获利。然而这种纯粹的自由软件的理想对于Linux的普及和发展是不利的,于是Linux开始转向GPL,成为GNU阵营中的主要一员。成长:1993年加入GPL(GeneralPublicLicense)现在,Linux凭借优秀的设计,不凡的性能,加上IBM、INTEL、CA、CORE、ORACLE等国际知名企业的大力支持,市场份额逐步扩大,逐渐成为主流操作系统之一。Linux是一套免费使用和自由传播的操作系统,它主要用于基于Intel系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的,其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。Linux是一种优秀的操作系统,支持多用户、多线程、多进程,实时性好,功能强大而稳定。同时,它又具有良好的兼容性和可移植性,被广泛应用在各种计算机平台上。LINUX系统结构2硬盘硬盘是可以存储大量信息资源的媒介。现在的硬盘越来越大,存放的资源越来越多。为了更合理的管理使用硬盘资源,更有效的提高查询速度和访问质量,我们可以把硬盘划分为很多分区,分别存放一些信息。当你需要读取某一个资料的时候,系统会自动使用最近的磁头去读取,加快读取速度。硬盘分区是从硬件的基础上对资源进行合理管理的手段。分区已经了解了,但是我们不能只有分区啊,我们得用一个方法来控制分区。Windows操作系统使用了盘符这个概念,用单一的字母来表示硬盘上的不同分区,比如,C盘,D盘等等。在Windows2000以前,C盘对应了第一个分区,D盘对应第二个分区,依此类推。到了Winows2000,这个对应关系可以自己调整了。在Linux里边,我们没有盘符这个概念,我们用目录的形式进行管理。为了保证文章的完整性,简单说说目录吧,其实大家都很清楚的。如果我们把数以万计的水果扔在一个箩筐里面是不是很难找?但是如果我们把苹果放在叫做苹果的箩筐里面,把梨放在叫做梨的箩筐里面……这样是不是大大简化了我们寻找指定水果的速度?这些水果如果是我们的文件,那么我们用的箩筐就叫目录。新的问题出现了,即使把桃子扔在叫做桃子的箩筐中,我们仍然很难从好几千个3桃子里面找出来自四川成都龙泉驿的桃子啊。聪明的你一定想到在桃子的箩筐中再放入很多叫做四川啊,河北啊,广州啊这些名字的箩筐,把不同产地的桃子放进去。对!就这样!我们在一个文件目录下面可以再建立新的文件目录,把文件进行非常细致的管理。到这里你明白了什么叫做目录,还明白了目录是可以嵌套的,这就可以了。目录技术是从软件的基础上对资源进行管理的方法。回到Linux对于硬盘的管理里面来:在Linux里边,我们没有盘符这个概念,我们用目录的形式进行管理。把每一个分区和某一个目录对应,以后对这个目录的操作就是对这个分区的操作,这样就实现了硬件管理手段和软件目录管理手段的统一。这个把分区和目录对应的过程叫做挂载-mount。这种对应关系可以由用户随时中断和改变。SWAP交换分区分区的知识大家已经熟习了,这里需要提一下交换分区。我们如果没有足够的内存,也许就不能运行某些大型的软件,解决的办法是在硬盘上划出一个区域来当作临时的内存,好像内存变大了。Windows操作系统把这个区域叫做虚拟内存,Linux把它叫做交换分区swap。虽然随着硬件价格的下降内存已经不大会限制我们了,但是交换分区这个概念却保留下来,而且有继续保留下去的原因,当然涉及到内核的问题,我们不多讨论,我们要说明的是,安装Linux时候建立交换分区时,如果你的内存只有64M或则128M,那么交换分区最好设置成为它的3倍,如果你的分区足够大,有256M或则512M,那么设置成为相同大小就可以了。但是请注意,最好大小为2的N次幂的数字。分区格式今天说了好多的与硬盘有关的问题,现在还要补充一个,就是分区格式。硬盘只是一个用电磁的方式纪录信息的媒介,我们可以通过不同的格式来管理。不同的操作系统选择了不同的格式,同一种操作系统也可能支持多种格式。微软的操作系统选择了fat16格式作为DOS的分区格式,往后windows95和windows98支持fat32格式,windowsNT使用NTFS4格式,windows2000以及XP支持NTFS5,也支持fat32,但是她们都不支持Linux上常见的分区格式。Linux是一个开放的操作系统,它最初使用ext2格式,后来使用ext3格式,但是它同时支持非常多4的分区格式,包括很多大型机上UNIX使用的XFS格式,也包括微软的那些fat以及NTFS格式。在给硬盘分区时就需要指定使用的分区格式。掌握Linux的目录结构既然目录是用来方便文件管理的工具,那么Linux下面不同的目录到底保存了哪一类的文件呢?目录名称意义/bin该目录中存放Linux的常用命令,在有的版本中是一些和根目录下相同的目录。/boot该目录下存放的都是系统启动时要用到的程序,当用lilo引导Linux时,会用到这里的一些信息/dev该目录包含了Linux系统中使用的所有外部设备,它实际上是访问这些外部设备的端口,你可以访问这些外部设备,与访问一个文件或一个目录没有区别。例如在系统中键入“cd/dev/cdrom”,就可以看到光驱中的文件;键入“cd/dev/mouse”即可看鼠标的相关文件。/cdrom该目录在刚安装系统时是空的,你可以将光驱文件系统挂在这个目录下,例如“mount/dev/cdrom/cdrom”/etc该目录存放了系统管理时要用到的各种配置文件和子目录,例如网络配置文件、文件系统、X系统配置文件、设备配置信息、设置用户信息等。/sbin该目录用来存放系统管理员的系统管理程序。/home如果建立一个名为“xx”的用户,那么在/home目录下就有一个对应的“/home/xx”路径,用来存放该用户的主目录。/lib该目录用来存放系统动态连接共享库,几乎所有的应用程序都会用到该目录下的共享库/lost+found该目录在大多数情况下都是空的。但当突然停电、或者非正常关机后,有些文件就临时存放在这里。/mnt该目录在一般情况下也是空的,你可以临时将别的文件系统挂在该目录下。/proc可以在该目录下获取系统信息,这些信息是在内存中由系统自己产生的5/root如果你是以超级用户的身份登录的,这个就是超级用户的主目录/tmp用来存放不同程序执行时产生的临时文件介绍bashshell如果您使用过Linux系统,那么您知道当登录时,将会看到像这样的提示符:$您所看到的特殊的提示符可能看起来很不一样。它可能包含系统的主机名、当前的工作目录名,或者两者都有。但是不管这个特殊的提示符看起来像什么,有一件事是肯定的。打印出这个提示符的程序叫“shell”,极有可能您的特殊的shell是一个叫bash的程序。您可以通过输入下面的命令来检查您是否正在运行bash:$echo$SHELL/bin/bash如果上面的命令行报错或者不会类似地响应我们的示例,那么您可能正在运行一个不同于bash的shell。关于bashBash是“Bourne-againshell”的首字母缩写,它是大多数Linux系统缺省的shell。shell的任务是执行您的命令,使您能够与Linux系统进行交互。当您输完命令,您可以通知shell执行exit或logout命令,在此您将返回到登录提示符。顺便提一下,您还可以通过在bash提示符下按control-D来注销。使用“cd”您可能已经发现,目不转睛地盯着bash提示符可不是世界上最让人感到有劲的事。那么,让我们来开始用bash来浏览我们的文件系统。在提示符下,输入下面的命令(不包括$):$cd/我们只告诉bash您想在/(也称为根目录)中工作;系统上的所有目录形成一棵树,/被认为是这棵树的顶部,或者是根。cd设置当前您正在工作的目录,也称为“当前工作目录”。路径要看bash的当前工作目录,您可以输入:6$pwd/在上面的示例中,cd的/参数叫做路径。它告诉cd我们要转到什么地方。特别是,/参数是一个绝对路径,意味着它指定了相对于文件系统树的根的位置。绝对路径这里有几个其它的绝对路径:/dev/usr/usr/bin/usr/local/bin您可以看到,所有绝对路径有一个共同点就是,它们都以/开头。通过路径/usr/local/bin,我们告诉cd进入/目录,接着进入这个目录之下的usr目录,然后再进入local和bin。绝对路径总是通过是否以/开头来判断。相对路径另一种路径叫相对路径。在Bash中,cd以及其它命令总是解释那些相对于当前目录的路径。相对路径绝不会以/开头。这样,如果我们在/usr中:$cd/usr那么,我们可以使用相对路径来转到/usr/local/bin目录:$cdlocal/bin$pwd/usr/local/bin使用“..”相对路径还可以包含一个或多个..目录。..目录是指向父目录的专门目录。那么,继续前面的示例:$pwd/usr/local/bin$cd..$pwd/usr/local7您可以看到,现在我们的当前目录是/usr/local。我们能够“后退”到相对于我们所在的当前目录的一个目录。此外,我们还可以将\\\..\\\添加到一个现有的相对路径中,使我们可以进入与我们已在目录并排的目录,例如:$pwd/usr/local$cd../share$pwd/usr/share相对路径示例相对路径可以变得相当复杂。这里有几个示例,所有的都没有显示出结果的目标路径。请试着推断一下,输入这些命令后,您最终将会转到什么地方:$cd/bin$cd../usr/share/zoneinfo$cd/usr/X11R6/bin$cd../lib/X11$cd/usr/bin$cd../bin/../bin现在,试验一次,看看您的推断是否正确。理解“.”在我们结束cd的介绍之前,我们还需要讨论一些更多的内容。首先,还有另一个叫.的专门的目录。它表示“当前目录”。然而该目录不为cd命令使用,它通常用来执行一些当前目录中的程序,如下所示:$./myprog在上面的示例中,驻留在当前工作目录中的myprog可执行文件将被执行。cd和主目录如果我们想要转到主目录,我们可以输入:$cd没有参数,cd将转到主目录,对于超级用户来说是/root,对于一般用户来说通常是8/home/username。但是,如果我们想要指定一个主目录中的文件,将会怎样呢?可能我们想要将一个文件参数传给myprog命令。如果该文件在主目录中,我们可以输入:$./myprog/home/drobbins/myfile.txt但是,使用像这样的绝对路径并不总是很方便。幸好,我们可以使用~(代字符)字符来完成同样的事:$./myprog~/myfile.txt其他用户的主目录Bash将把单独的~扩展为指向主目录,然而您还可以用它来指向其他用户的主目录。例如,如果我们想要引用fred的主目录中的名为fredsfile.txt的文件,可以输入:$./myprog~fred/fredsfile.txt介绍通配符在您日常的Linux使用中,有很多时候您可能需要一次对多个文件系统对象执行单一操作(比如rm)。在这些情况下,在命令行中输入许多文件通常让人感到厌烦,为了解决这个问题,您可以利用Linux内置的通配符支持。这种支持也叫做“globbing”(由于历史原因),允许您通过使用通配符模式一次指定多个文件。Bash和其它Linux命令将通过在磁盘上查找并找到任何与之匹配的文件来解释这种模式。因此,如果在当前工作目录中,您有从file1到file8的文

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功