首页 Linu文件及系统管理

Linu文件及系统管理

举报
开通vip

Linu文件及系统管理WrittenbyPeterat2021inJanuaryLinu文件及系统管理下载第4章Linux文件及系统管理文件和目录文件和目录是操作系统中十分重要的概念,文件和目录实现了操作系统对系统和用户的数据的管理,了解文件和目录的有关概念是理解操作系统的一个重要部分。文件和目录概述1.文件绝大多数操作系统(从DOS到Windows,从UNIX到Linux)中都有文件的概念。简单的讲文件就是一组相关纪录的集合。Linux中文件是无结构的字符流,即文件中的任两个字节是完全独立的。具体的信息要放到相应的环境中才能理解。文件...

Linu文件及系统管理
WrittenbyPeterat2021inJanuaryLinu文件及系统管理下载第4章Linux文件及系统管理文件和目录文件和目录是操作系统中十分重要的概念,文件和目录实现了操作系统对系统和用户的数据的管理,了解文件和目录的有关概念是理解操作系统的一个重要部分。文件和目录概述1.文件绝大多数操作系统(从DOS到Windows,从UNIX到Linux)中都有文件的概念。简单的讲文件就是一组相关纪录的集合。Linux中文件是无结构的字符流,即文件中的任两个字节是完全独立的。具体的信息要放到相应的环境中才能理解。文件通过文件名来标识引用,即文件是通过文件名来进行管理的。系统中每一个文件都有一个文件名。2.目录文件多了就会发生混乱,因此目录就出现了。目录就是存放一组文件的“夹子”,Windows中的“文件夹”就是这个概念。所以目录就是一组相关文件的集合,我们通常都通过目录来管理文件。目录和文件一样也有自己的名字。而一个目录下面除了可以放文件之外,还可以存放目录,称为这个目录的子目录。这个子目录之下还可以有它自己的子目录,依此类推从而形成一个树状目录结构。其中最上层的目录我们称为根目录,而系统内的所有目录都是根目录的子目录。图4-1是一个树状目录结构的范例。3.路径相信使用过其他操作系统的用户对这个概念不会陌生。打个比方,某个文件就好像是在一个写字楼中的一间办公室内的一把椅子,当然还有其他很多椅子也在这个办公室里。现在要把它找出来坐在上面办公,那么只知道这个椅子是什么样的还不行,还需要知道如何到达哪里。文件名就是这椅子,而路径就是用来说明如何找到该椅子的。Linux文件系统是由目录和目录下的文件一起构成的,是一个树型的结构。在这个系统最顶层的是根目录“/”。下面是各级其他目录。Linux路径是由从根目录到文件所经过的所有目录加上文件名连在一起构成的,中间以“/”分隔。同样的和DOS相同,在每个目录上面都有名为“.”和“..”的两个文件,前者代表的是当前目录,后者代表的是当前目录的父目录(上一级目录)。如果要存取不在工作目录中的文件,则除了文件名之外,也要指定目录的位置,而这就是路径。而路径由文件所在的目录加上文件名组成,中间再用“/”隔开。系统中每一个文件都有一个路径名,要想引用这个文件就要通过路径来引用。如图4-1所示,假设在图中的目录linus下有一个文件名为:linus-file,那么访问它的路径为:/home/linus/linus-file。路径又分成以下两种:下载第4章Linux文件及系统管理用用69绝对路径:路径名称以“/”开头,其中文件或目录的位置从根目录算起。相对路径:路径名称不以“/”开头,其中文件或目录的位置从工作目录算起,工作目录可以理解为当前所在的目录。 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 文件系统布局(树型目录)标准文件系统布局(树型目录)图4-14.文件目录命名规则和DOS相比,L文件命名相当宽松。L文件名可以由字母、数字和一些标点符号组成。文件名中不能包含有空格和下列的字符:!@#$%^&*()"\/|;<>但文件及目录名字的长度可以超过DOS的的规定,只是通常要在256字之内。为了兼容UNIX文件系统,建议大家使用14个以下的字符作为文件名(一般的UNIX系统都只允许14个以下的字符作为文件名)。另外我们大家经常使用的Windows95/98系统中是可以在文件名中使用空格的,Linux中实际上也有办法可以解决这个问题,那就是将文件名使用“”括起来,这样在双引号里面就可以随意使用任何字符了。也就是说没有任何限制了。但除非是真有必要,一般建议最好不要这么做。因为大多数程序不一定可以访问具有这种文件名的文件;而且使得文件系统的可移植性也变差。5.处理文件的命令见表4-1。表4-1文件操作常用命令命令作用ls列出目录的内容ls-l列出目录的详细内容cd切换工作目录为Mkdir建立名叫的目录Rmdir删除名叫的目录cat的内容More的内容,并且每印满一页后则暂停rm删除cp拷贝一份成ev改名为Echo显示在屏幕上70使用Linux网站建设技术指南下载文件类型Linux文件系统中包括以下类型的文件:文本文件:同其他操作系统的文本文件相同,是由一些字符在计算机内的ASCII码组成的。通常这类文件在各个操作系统中是兼容的。二进制文件:文件中保存的是数据的二进制表示,一般情况下用普通的文本阅览器所见到的是一堆乱码,需要专用的软件才能查看文件内容。例如:可执行文件、图像文件、声音文件等都是这类文件。目录文件:Linux中对目录的管理也是通过文件进行的。顾名思义,目录文件就是一类特殊的文件,其中保存的信息不是普通的数据等,而是文件名和文件有关的文件信息,例如文件名、文件创建日期、文件类型、读取权限等。目录文件中还可以包含下一级的目录。连接文件:普通的连接实际上不是文件,它们仅是指向同一索引节点的目录条目,是一个索引节点表。该表记录了一个文件有多少连接,这种连接不能跨越设备,因为不同设备上的i节点号不同,而另一种连接类型—符号链接—则没有这种限制。这将在后面详细介绍。设备文件:设备文件是Linux系统中较特殊的文件。Linux中引入设备文件的目的是实现设备独立性。用户访问外部设备时就是通过设备文件进行的。操作系统对外设的支持程度直接影响到操作系统被使用的广泛程度,一个由于本身而限制了访问硬件的操作系统不能说是一个成功的操作系统。面对越来越多,越来越高级的外设,Linux将外设看作一个文件来管理,这样就避免了由于外设的增加而带来的问题。当需要增加新设备时,只要在操作系统内核中增加相应的设备文件即可。因此,设备文件在外设与操作系统之间提供了一个接口,用户使用外设就像使用普通文件一样。设备文件存放在/dev目录下,它使用设备的主设备号和次设备号来区分指定的外设:主设备号说明设备类型,次设备号说明具体指哪一个设备。例如:/dev/fd0指系统中的一个软盘驱动器,主设备号fd是软盘驱动器(floppydisk)的缩写;次设备号0是软盘驱动器编号,意思是指系统中的一软盘驱动器,也就是我们通常所说的“A:”盘。管道文件:也是Linux中较特殊的文件类型,这类文件多用于进程间的通信方面。进程可通过管道文件实现互相的信息传输,一个进程将数据写在管道的一端,另一个进程从管道的另一端将数据读出,这样就能实现进程的相互协作。管道文件又可分为无名管道和有名管道两种。文件权限由于Linux是一个多用户的操作系统,这就要考虑安全性的问题。文件权限是操作系统安全性的一个重要因素。文件权限的概念与UNIX一样,Linux系统也是多用户系统。这样就产生了一个用户的文件会不会暴露在另一个用户面前的问题。为了保护用户的私人文件不被其他用户所侵犯,就出现了文件权限的概念。这种文件权限的概念允许文件和目录归一个特定的用户所拥有。用户权限除了下载第4章Linux文件及系统管理用用71对他所拥有的文件或目录进行存取或其他操作,也包括限制其他用户在这些文件上的存取和操作。例如,用户A在自己的主目录中建立了某些文件,那么用户A就成为这些文件的所有者,就有权对这些文件进行存取,也有权限制其他用户对这些文件的存取访问。Linux允许用户之间以及用户组之间共享文件。如果用户A愿意,他可以切断一切到他所拥有的文件的通路,即使得任何人都不能存取这些文件。当然在大多数情况下是只给其他用户分配只读权限(以只读方式访问自己的文件),而不给他们对文件的修改和删除的权限。为了方便管理,每个文件都被一个特定用户所拥有的同时,还被系统指定的用户组所拥有。一个用户至少在一个用户组中,有时系统管理员还可以将一个用户编进多个用户组中。用户组通常是根据使用计算机的用户的种类来划分的。例如,在学校中根据用户的身份可以分为student、staff和guest等组。系统使用这些组来控制对资源的访问。文件权限的构成文件的权限有三种:读、写和执行。读权限允许用户阅读文件的内容,对目录来说,允许用户列出目录中的内容。写权限允许用户写和修改文件,对目录来说,写权限允许用户在这个目录中建立新文件或删除文件。执行权限允许用户运行文件,对目录来说,执行权限允许用户进入和退出该目录。下面举例说明上面所说的文件权限。使用ls-1命令来显示文件列表,如图4-2所示。图4-2从图中所列出的文件的长格式信息中可以看出,文件信息共有9列。在第一列中由长度为十的字符组成一串字符的就是文件权限表示。每个文件的权限都是由一个十位的二进制数组成。这十位二进制数分为四部分:第一部分一位,代表文件的类型(表4-2列出了文件类型的种类和标志符号);第二部分是二到四位,代表文件所有者对文件的权限;第三部分是五到七位,代表该文件所有者所在组对该文件所拥有权限;第四部分是八到十位,代表其他用户对文件所拥有权限。第二列代表文件的链接数(我们将在下一节介绍文件的链接);第三列是文件的所有者;第四列是文件所属的用户组;最后一列是文件名。72使用Linux网站建设技术指南下载表4-2文件类型和标志符号文件类型标志符号普通文件-块设备文件b字符设备文件C连接文件L目录文件D表示文件权限的三个字符,依次代表读、写和执行权限。系统用“r”代表读权限、“w”代表写权限、“x”代表执行权限。当用户没有相应的权限时,该权限对应的位置用短线“-”表示。如图4-2中的第5行,文件名为,第一个短线代表该文件是普通文件;后面的三个字符“rw_”表示root用户对该文件有读、写权限,但没有执行权限。接下去的三个字符“r--”表示与用户root同属于root组的用户对该文件有读权限,但没有写权限和执行权限。也就是说,属于root组的其他用户只能读该文件。最后的三个字符“r--”表示组外的其他用户也只有该文件的读权限,即只能阅读该文件,但不能对该文件进行写或执行操作。文件权限的依赖性要特别注意的是,用户对文件所拥有的权限依赖于他对文件所属的目录所拥有的权限。虽然一个文件的权限为“-rwxrwxrwx”,但其他用户也只有在对该文件所属目录拥有读写和执行权限时,才能够对该文件进行读、写和执行。这就是说,如果用户A希望限制他人对其所拥有文件的访问,那么用户A只需将他的目录/home/A的权限设置成“-rwx------”。这样,其他任何用户都不能访问他的目录,包括其中的所有文件和子目录。这样用户A就不必一个一个地修改他的文件的权限了。如果用户为了访问某个文件,这个用户必须具有对该文件路径名中所有目录的执行权限以及对该文件自身的相应的访问权限。通常的用户都是非常开放的,文件的权限一般都设置成“-rw-r--r--”,这种权限的设置允许其他用户读文件,但不能写和执行。而目录的权限一般都设置成“-rwxr-xr-x”,这种权限的设置允许其他用户查看目录,但不能在其中建立或删除文件。改变权限在系统应用中有时需要让其他用户使用某个他本来不能使用的文件的时候,就需要改变文件的权限。在Linux中,使用chmod命令来进行有关权限的设置。但只有当文件的拥有者对某个文件有写的权限时,他才能够改变该文件的权限(超级用户对所有文件进行权限设置)。chmod的命令格式主要有两种,下面是直接设置文件权限的第一种格式:chmod[-R]modefilename1filename2...其中-R是指递归地改变所指定的目录参数及其子目录和它们所组成的文件的访问权限。mode是一个八进制的数,直接描述一个文件的权限。文件权限是一个十位的二进制数,Linux中规定:十位中每个位上如果出现了字母,则该位记为1,如果是“-”,则记为0,这样将十位都设置完后就将得到一个十位的二进制数。由于UNIX系统最开始是采用的八进制数系统,所以下载第4章Linux文件及系统管理用用73沿袭至今,Linux上仍然需要把这十位二进制数转化为八进制数(转化 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 在许多计算机入门的书中都有介绍,这里不再讲了),这样就得到一个四位的八进制数,也就是mode参数了。实际上对于普通文件第一位始终为0,输入mode参数的时候写三位就可以了。例如:将某文件权限设置为对文件所有者可读、可写、可执行,同组用户可读,其他用户可读。首先写出文件权限字段:-rwxr--r--,然后转化为二进制:00,接着转化为八进制:0744,最后用chmod命令进行设置即可。chmod的第二种命令格式相对来说比较直观,更容易掌握。命令格式如下:chmod{a、u、g、o}{+-}{rwx}filename1filename2...该命令首先要指明权限所要赋予的用户类,可以是a、u、g、o中的一个或多个,其中a代表所有的用户,u代表文件的所有者自身,g代表同组的用户,o代表组外的其他用户;接着,要指明是增加权限还是删除权限,用“+”选项表示增加权限,用“-”选项表示删除权限;最后,要指明所要增加或删除的权限,这些权限可以是r、w和x中的一个或多个。下面举个例子来进一步说明如何更改文件权限:假设在根目录下有一个名为的文件,先用ls-l命令来查看其权限为-rw-r--r--,将其转化为二进制表示“00”,相应八进制表示为644,然后依次用第一种命令方式改变其权限为-rw-r-xr-x,其八进制表示为655,所以用chmod655即可,第二种方式改变其权限为-rw-rwxr-x和-rw-rwxrwx,如图4-3所示。图4-3文件链接文件的链接可以使Linux系统中的一个文件有多个名字,即可以用多个不同的名字来访问同一个文件。这种方式是为了节省空间和方便多个用户共享而产生的。硬链接Linux系统是通过使用文件的i节点号来标识文件的,i节点号是文件系统中文件的惟一标74使用Linux网站建设技术指南下载识符。目录实际上是i节点号和其相应文件名的一个列表。目录中的每一个文件都是一个与特定的i节点的链接。硬链接就是为文件另取一个文件名并将它与原来的i节点链接。可以使用1n命令来为一个文件建立多个链接。例如,假设用户在当前的目录中有 。使用命令1s-l我们可以看到这个文件的i节点号。可见,文件在文件系统中的i节点号是524。用户可以用以下命令建立一个称做的到文件的链接:1nfabcfxyz。使用1s-i我们可以看到这两个文件有相同的i节点号,然后像上一节介绍的那样使用1s-1命令可以列出文件的链接数以及其他信息,如图4-4所示。图4-4执行这些操作以后,不论访问还是,实际上都是访问同一个文件。如果对做了修改,实际上也是对作修改。也就是说,和其实是同一个文件。上面这种链接过程的链接称为硬链接,因为它们直接链接到i节点上。注意,建立硬链接只能在同一个文件系统中进行,而符号链接(下面介绍)就没有这个限制。当用户使用rm命令删除文件时,实际上是删除了这个文件的一个链接。只有当文件没有其他链接时,才是真正地从文件系统中删除了。所以为了删除文件,用户必须首先删除该文件的所有链接。上面信息中的第二列代表了文件的链接数。从图中可以发现两个文件链接数都为2。目录实际上只是一个包含了从链接到i节点号的转换信息的文件。每个目录中至少有两个硬链接—指向目录自身的链接“.”和指向其父目录的链接“..”,根目录中的“..”链接也指向其自身。符号链接符号链接与硬链接不同,它是另一种类型的链接。符号链接允许用户为文件另取一个名字,但却不将其与i节点相链接。可以用1n-s命令建立一个文件的符号链接。使用命令1n-s就会建立一个指向文件的符号链接。如果这时我们使用ls-i命令,便会看到这两个文件实际上有不同的i节点号,一个是524,另一个是528。这时使用1s-l下载第4章Linux文件及系统管理用用75命令,我们就会看到文件是指向的一个符号链接,如图4-5所示。图4-5可以看到符号链接的权限位是rwxrwxrwx,其实它本没有实际意义。它们总是为rwxrwxrwx。符号链接的权限是由符号链接的目标(这里是的权限决定的。从功能上讲,硬链接和符号链接是相似的,但是它们也有一些区别。例如,用户可以对一个不存在的文件建立符号链接;但硬链接却不能。系统核心对符号链接和硬链接的操作是不同的,虽然这只是技术上的不同,但这一点有时却很重要。符号链接只是指明它们所指向的文件,这对用户是很有帮助的,而硬链接的问题是,没有一个简单的办法用来确定有哪些文件是链接到相同的i节点上。Linux系统中很多地方都用到了链接。对/1ib中的共享程序库映像来说,符号链接显得更为重要。文件系统和标准文件系统布局操作系统通过文件系统管理系统中的数据,Linux与UNIX的文件系统布局基本相同,都是由根目录和子目录构成的。文件系统文件系统是操作系统中非常重要的概念,文件系统管理机器上的文件目录,使之有效地被存取访问。文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构,即在磁盘上组织文件的方法。也可以指用于存储文件的磁盘或分区,或文件系统种类。简单地讲,文件系统是指按照一定规则组织的文件结构。Linux中文件系统是按照树型结构组织的,所有Linux的数据(包括程序、库、用户文件等等)都是由文件系统按照树型目录结构管理的。这些概念和DOS/Windows是一样的。Linux文件系统的树型结构如图4-1所示,其中每台机器都有根文件系统(一般在本地盘中,当然也可以在RAM盘或网络盘中)。它包含系统引导和使其他文件系统得以mount所必要的文件,根文件系统应该有单用户状态所必需的足够的内容。还应该包括修复损坏系统、恢复备份等的工具。除了根文件系统外,用户可以根据自己的需要创建一个或多个其他的文件系统。76使用Linux网站建设技术指南下载标准文件系统布局UNIX经过长期的发展,其文件系统的命名规则已经趋于规范化,大多数用户都遵循这样的规定。Linux则安全继承了UNIX的文件系统布局。以下的介绍基于Linux文件系统标准FSSTND版本。这一版本是非强制性的,就是说,如果你愿意,完全可以采用其他的文件系统布局。但由于这一版本已经得到了很多Linux程序的支持,遵循它将会使管理更加容易进行。并且这样一个标准具有易于写或移植Linux软件、管理Linux系统的优点,所以,如果没有什么特殊的理由,最好还是遵从FSSTND标准。FSSTND意图遵从UNIX传统和当前趋势,使熟悉其他UNIX系统的人对Linux系统更容易接受(反之亦然)。标准文件系统布局将整个目录树分为小的部分,每个部分可以在自己的磁盘或分区上,只要能为磁盘容量所容纳,并易于备份及其他系统管理即可。如图中被虚线所画出的范围所示,文件系统主要部分是根、/usr、/var和/home文件系统。每个部分各有其不同的目的。目录树已被 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 成能在Linux机器的网络中很好地工作,可以通过只读设备(如CD-ROM)或NFS网络共享文件系统的一些部分。下面对几个重要的目录做一下简要介绍:1.根文件系统根文件系统是每台计算机都必须具有的部分。它包含系统引导和使其他文件系统得以mount所必要的文件,根文件系统应该有单用户状态所必需的足够的内容。还应该包括修复损坏系统、恢复备份等的工具。根文件系统一般应该比较小,因为包括严格的文件和一个小的不经常改变的文件系统通常都不容易损坏。如果根文件系统发生损坏,则意味着除非用特定的方法(例如从软盘)引导系统,否则系统将无法引导,所以要格外小心。2./usr文件系统/usr文件系统包含所有命令、库、帮助(man)页和其他一般操作中所需的不改变的文件。/usr不应该包括对特定机器使用的特定的文件,也不应该有一般使用中要修改的文件。这样允许此文件系统中的文件通过网络共享,才可以使之更有效,因为这样节省了磁盘空间(/usr很容易是数百兆),且易于管理(当升级应用时,只有主/usr需要改变,而无须改变每台机器)。即使此文件系统在本地盘上,也可以将其设为只读属性,以减少系统崩溃时对文件系统的损坏。3./var文件系统/var文件系统包含会改变的文件,比如,spool目录(mail、news、打印机等用的),log(日志)文件、formattedmanualpages和暂存文件。传统上/var的所有东西曾在/usr下的某个地方,但这样/usr就不可能只读安装了。4./home文件系统/home文件系统包含用户本地目录,即系统上的所有实际数据。最好将/home目录安装到专门的目录树或文件系统(分区)中,因为这样易于备份,而不必备份其他文件系统(至少不必经常备份,因为它们很少改变)。一个大的/home可能要分为若干文件系统,需要在/home下加一级名字,如/home/students、/home/staff等。虽然上面将不同的部分称为文件系统,但并不需要将它们安装在不同的磁盘上,它们也不必是真的分离的文件系统。如果用户系统是小的单用户系统,并且用户希望使它简单化,那么它们可以很容易地放在一个文件系统中。根据磁盘容量和不同目的所需分配的空间,目录树也可以分到不同的文件系统中。重要的是使用标准的名字,即使/var和/usr在同一分区上,下载第4章Linux文件及系统管理用用77名字/usr/lib/和/var/adm/messages必须能工作,例如将/var下的文件移动到/usr/var,并将/var作为/usr/var的符号连接,这样使文件组织有序,并且更加容易查找。UNIX文件结构根据文件使用目的来分组文件,即所有的命令在一个地方,所有的数据在另一个地方,所有的文档又在一个地方,等等。另一个方法是根据属于的程序分组文件,即所有Emacs文件在一个目录中,所有txt文件在另一个中,等等。后一种方法的问题是文件难于共享(程序目录经常同时包含静态可共享的和动态不可共享的文件),有时难于查找(例如man页在极大数量的地方,使man程序查找它们极其困难)。基本目录介绍根文件系统通常情况下,根文件系统所占空间一般应该比较小,因为其中的绝大部分文件都不需要经常改动,而且包括严格的文件和一个小的不经常改变的文件系统不容易损坏。除了可能的一个叫/vmlinuz标准的系统引导映像之外,根目录一般不含任何文件。所有其他文件在根文件系统的子目录中。1./bin目录/bin目录包含了引导启动所需的命令或普通用户可能用的命令(可能在引导启动后)。这些命令都是二进制文件的可执行程序(bin是binary--二进制的简称),多是系统中重要的系统文件。例如,节中介绍的文件操作常用命令ls,cp,mkdir等都在其中。2./sbin目录/sbin目录类似/bin,也用于存储二进制文件。因为其中的大部分文件多是系统管理员使用的基本的系统程序,所以虽然普通用户必要且允许时可以使用,但一般不给普通用户使用。3./etc目录/etc目录存放着各种系统配置文件,其中包括了用户信息文件/etc/passwd,系统初始化文件/etc/rc等。Linux正是靠这些文件才得以正常地运行。4./root目录/root目录是超级用户的目录。5./lib目录/lib目录是根文件系统上的程序所需的共享库,存放了根文件系统程序运行所需的共享文件。这些文件包含了可被许多程序共享的代码,以避免每个程序都包含有相同的子程序的副本,故可以使得可执行文件变得更小,节省空间。6./lib/modules目录/lib/modules目录包含系统核心可加载各种模块,尤其是那些在恢复损坏的系统时重新引导系统所需的模块(例如网络和文件系统驱动)。7./dev目录/dev目录存放了设备文件,即设备驱动程序,用户通过这些文件访问外部设备。比如,用户可以通过访问/dev/mouse来访问鼠标的输入,就像访问其他文件一样。8./tmp目录/tmp目录存放程序在运行时产生的信息和数据。但在引导启动后,运行的程序最好使用78使用Linux网站建设技术指南下载/var/tmp来代替/tmp,因为前者可能拥有一个更大的磁盘空间。9./boot目录/boot目录存放引导加载器(bootstraploader)使用的文件,如LILO,核心映像也经常放在这里,而不是放在根目录中。但是如果有许多核心映像,这个目录就可能变得很大,这时使用单独的文件系统会更好一些。还有一点要注意的是,要确保核心映像必须在IDE硬盘的前1024柱面内。10./mnt目录/mnt目录是系统管理员临时安装(mount)文件系统的安装点。程序并不自动支持安装到/mnt。/mnt下面可以分为许多子目录,例如/mnt/dosa可能是使用MSDOS文件系统的软驱,而/mnt/exta可能是使用ext2文件系统的软驱,/mnt/cdrom光驱等等。11./proc,/usr,/var,/home目录其他文件系统的安装点。/etc文件系统/etc目录包含各种系统配置文件,下面说明其中的一些。其他的你应该知道它们属于哪个程序,并阅读该程序的man页。许多网络配置文件也在/etc中。1./etc/rc或/etc/或/etc/rc.d启动、或改变运行级时运行的脚本或脚本的目录。2./etc/passwd用户数据库,其中的域给出了用户名、真实姓名、用户起始目录、加密口令和用户的其他信息。3./etc/fdprm软盘参数表,用以说明不同的软盘格式。可用setfdprm进行设置。更多的信息见setfdprm的帮助页。4./etc/fstab指定启动时需要自动安装的文件系统列表。也包括用swapon-a启用的swap区的信息。5./etc/group类似/etc/passwd,但说明的不是用户信息而是组的信息。包括组的各种数据。6./etc/inittabinit的配置文件。7./etc/issue包括用户在登录提示符前的输出信息。通常包括系统的一段短说明或欢迎信息。具体内容由系统管理员确定。8./etc/magic“file”的配置文件。包含不同文件格式的说明,“file”基于它猜测文件类型。9./etc/motdmotd是MessageOfTheDay的缩写,用户成功登录后自动输出。内容由系统管理员确定。常用于通告信息,如 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 关机时间的警告等。10./etc/mtab当前安装的文件系统列表。由脚本(scritp)初始化,并由mount命令自动更新。当需要一下载第4章Linux文件及系统管理用用79个当前安装的文件系统的列表时使用(例如df命令)。11./etc/shadow在安装了影子(shadow)口令软件的系统上的影子口令文件。影子口令文件将/etc/passwd文件中的加密口令移动到/etc/shadow中,而后者只对超级用户(root)可读。这使破译口令更困难,以此增加系统的安全性。12./etc/login命令的配置文件。13./etc/printcap类似/etc/termcap,但针对打印机。语法不同。14./etc/profile、/etc/、/etc/登录或启动时Bour或neCshells执行的文件。这允许系统管理员为所有用户建立全局缺省环境。15./etc/securetty确认安全终端,即哪个终端允许超级用户(root)登录。一般只列出虚拟控制台,这样就不可能(至少很困难)通过调制解调器(modem)或网络闯入系统并得到超级用户特权。16./etc/shells列出可以使用的shell。chsh命令允许用户在本文件指定范围内改变登录的shell。提供一台机器FTP服务的服务进程ftpd检查用户shell是否列在/etc/shells文件中,如果不是,将不允许该用户登录。17./etc/termcap终端性能数据库。说明不同的终端用什么“转义序列”控制。写程序时不直接输出转义序列(这样只能工作于特定品牌的终端),而是从/etc/termcap中查找要做的工作的正确序列。这样,多数的程序可以在多数终端上运行。/dev文件系统/dev目录包括所有设备的设备文件。设备文件用特定的约定命名,这在设备列表中说明。设备文件在安装时由系统产生,以后可以用/dev/MAKEDEV描述。/dev/是系统管理员为本地设备文件(或连接)写的描述文稿(即如一些非标准设备驱动不是标准MAKEDEV的一部分)。下面简要介绍/dev下一些常用文件。1./dev/console系统控制台,也就是直接和系统连接的监视器。2./dev/hdIDE硬盘驱动程序接口。如:/dev/hda指的是第一个硬盘,had1则是指/dev/hda的第一个分区。如系统中有其他的硬盘,则依次为/dev/hdb、/dev/hdc、......;如有多个分区则依次为hda1、hda2......3./dev/sdSCSI磁盘驱动程序接口。如有系统有SCSI硬盘,就不会访问/dev/had,而会访问/dev/sda。4./dev/fd软驱设备驱动程序。如:/dev/fd0指系统的第一个软盘,也就是通常所说的A:盘,/dev/fd1指第二个软盘,......而/dev/fd1H1440则表示访问驱动器1中的高密盘。80使用Linux网站建设技术指南下载5./dev/stSCSI磁带驱动器驱动程序。6./dev/tty提供虚拟控制台支持。如:/dev/tty1指的是系统的第一个虚拟控制台,/dev/tty2则是系统的第二个虚拟控制台。7./dev/pty提供远程登陆伪终端支持。在进行Telnet登录时就要用到/dev/pty设备。8./dev/ttys计算机串行接口,对于DOS来说就是“COM1”口。9./dev/cua计算机串行接口,与调制解调器一起使用的设备。10./dev/null“黑洞”,所有写入该设备的信息都将消失。例如:当想要将屏幕上的输出信息隐藏起来时,只要将输出信息输入到/dev/null中即可。/usr文件系统/usr是个很重要的目录,通常这一文件系统很大,因为所有程序安装在这里。/usr里的所有文件一般来自Linux发行版(distribution);本地安装的程序和其他东西在/usr/local下,因为这样可以在升级新版系统或新发行版时无须重新安装全部程序。/usr目录下的许多内容是可选的,但这些功能会使用户使用系统更加有效。/usr可容纳许多大型的软件包和它们的配置文件。下面列出一些重要的目录(一些不太重要的目录被省略了)。1./usr/X11R6包含XWindow系统的所有可执行程序、配置文件和支持文件。为简化X的开发和安装,X的文件没有集成到系统中。XWindow系统是一个功能强大的图形环境,提供了大量的图形工具程序。用户如果对MicrosoftWindows或Machintosh比较熟悉的话,就不会对XWindow系统感到束手无策了。2./usr/X386类似/usr/X11R6,但是是专门给X11Release5的。3./usr/bin集中了几乎所有用户命令,是系统的软件库。另有些命令在/bin或/usr/local/bin中。4./usr/sbin包括了根文件系统不必要的系统管理命令,例如多数服务程序。5./usr/man、/usr/info、/usr/doc这些目录包含所有手册页、GNU信息文档和各种其他文档文件。每个联机手册的“节”都有两个子目录。例如:/usr/man/man1中包含联机手册第一节的源码(没有格式化的原始文件),/usr/man/cat1包含第一节已格式化的内容。L联机手册分为以下九节:内部命令、系统调用、库函数、设备、文件格式、游戏、宏软件包、系统管理和核心程序。6./usr/include包含了C语言的头文件,这些文件多以.h结尾,用来描述C语言程序中用到的数据结构、下载第4章Linux文件及系统管理用用81子过程和常量。为了保持一致性,这实际上应该放在/usr/lib下,但习惯上一直沿用了这个名字。7./usr/lib包含了程序或子系统的不变的数据文件,包括一些site-wide配置文件。名字lib来源于库(library);编程的原始库也存在/usr/lib里。当编译程序时,程序便会和其中的库进行连接。也有许多程序把配置文件存入其中。8./usr/local本地安装的软件和其他文件放在这里。这与/usr很相似。用户可能会在这发现一些比较大的软件包,如TEX、Emacs等。/var文件系统/var包含系统一般运行时要改变的数据。通常这些数据所在的目录的大小是要经常变化或扩充的。原来/var目录中有些内容是在/usr中的,但为了保持/usr目录的相对稳定,就把那些需要经常改变的目录放到/var中了。每个系统是特定的,即不通过网络与其他计算机共享。下面列出一些重要的目录(一些不太重要的目录省略了)。1./var/catman包括了格式化过的帮助(man)页。帮助页的源文件一般存在/usr/man/man中;有些man页可能有预格式化的版本,存在/usr/man/cat中。而其他的man页在第一次看时都需要格式化,格式化完的版本存在/var/man中,这样其他人再看相同的页时就无须等待格式化了。(/var/catman经常被清除,就像清除临时目录一样。)2./var/lib存放系统正常运行时要改变的文件。3./var/local存放/usr/local中安装的程序的可变数据(即系统管理员安装的程序)。注意,如果必要,即使本地安装的程序也会使用其他/var目录,例如/var/lock。4./var/lock锁定文件。许多程序遵循在/var/lock中产生一个锁定文件的约定,以用来支持他们正在使用某个特定的设备或文件。其他程序注意到这个锁定文件时,就不会再使用这个设备或文件。5./var/log各种程序的日志(Log)文件,尤其是login(/var/log/wtmplog纪录所有到系统的登录和注销)和syslog(/var/log/messages纪录存储所有核心和系统程序信息)。/var/log里的文件经常不确定地增长,应该定期清除。6./var/run保存在下一次系统引导前有效的关于系统的信息文件。例如,/var/run/utmp包含当前登录的用户的信息。7./var/spool放置“假脱机(spool)”程序的目录,如mail、news、打印队列和其他队列工作的目录。每个不同的spool在/var/spool下有自己的子目录,例如,用户的邮箱就存放在/var/spool/mail中。82使用Linux网站建设技术指南下载8./var/tmp比/tmp允许更大的或需要存在较长时间的临时文件。注意系统管理员可能不允许/var/tmp有很旧的文件。/proc文件系统/proc文件系统是一个伪的文件系统,就是说它是一个实际上不存在的目录,因而这是一个非常特殊的目录。它并不存在于某个磁盘上,而是由核心在内存中产生。这个目录用于提供关于系统的信息。下面说明一些最重要的文件和目录(/proc文件系统在procman页中有更详细的说明)。1./proc/X关于进程X的信息目录,这一X是这一进程的标识号。每个进程在/proc下有一个名为自己进程号的目录。2./proc/cpuinfo存放处理器(CPU)的信息,如CPU的类型、制造商、型号和性能等。3./proc/devices当前运行的核心配置的设备驱动的列表。4./proc/dma显示当前使用的DMA通道。5./proc/filesystems核心配置的文件系统信息。6./proc/interrupts显示被占用的中断信息和占用者的信息,以及被占用的数量。7./proc/ioports当前使用的I/O端口。8./proc/kcore系统物理内存映像。与物理内存大小完全一样,然而实际上没有占用这么多内存;它仅仅是在程序访问它时才被创建。(注意:除非你把它拷贝到什么地方,否则/proc下没有任何东西占用任何磁盘空间。)9./proc/kmsg核心输出的消息。也会被送到syslog。10./proc/ksyms核心符号表。11./proc/loadavg系统“平均负载”;3个没有意义的指示器指出系统当前的工作量。12./proc/meminfo各种存储器使用信息,包括物理内存和交换分区(swap)。13./proc/modules存放当前加载了哪些核心模块信息。下载第4章Linux文件及系统管理用用8314./proc/net网络 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 状态信息。15./proc/self存放到查看/proc的程序的进程目录的符号连接。当2个进程查看/proc时,这将会是不同的连接。这主要便于程序得到它自己的进程目录。16./proc/stat系统的不同状态,例如,系统启动后页面发生错误的次数。17./proc/uptime系统启动的时间长度。18./proc/version核心版本。启动和关机启动和关机概述开启计算机并导致其操作系统被加载的过程叫引导。启动过程中,计算机首先加载了一小段叫bootstraploader的程序,它依次加载和启动操作系统,bootstraploader通常存储在硬盘或软盘的固定的位置。这2步过程的理由是操作系统大而复杂,而计算机加载的第一段代码很小(几百字节),以免使固件不必要地复杂化。不同的计算机的bootstrap不同。对于PC,计算机(它的BIOS)读软盘或硬盘的第一个扇区(叫引导扇)。bootstraploader包含在这个扇区中。它加载位于磁盘(和其他)的其他地方的操作系统。Linux加载后,它创始化硬件和设备驱动,然后运行init。init启动其他进程以允许用户登录和做其他事情。这部分的细节在下面讨论。为了关闭一个Linux系统,首先所有进程被告知结束(这使它们关闭所有文件,完成必要的其他事情,使之整齐地结束),然后unmount文件系统和对换区,最后打印可以关掉电源的信息到控制台。如果没有遵循正确的过程,可怕的事情可能发生。最重要的,文件系统缓冲cache可能没有回写,这意味着其中的所有数据将丢失,磁盘上的文件系统不完整,并可能不可用。近观启动过程可以从软盘或硬盘引导Linux。当PC引导后,BIOS做一些测试保证一切正常,然后开始真正的引导。它选择一个磁盘(通常是第一个软驱,如果有软盘的话,否则就是第一个硬盘,顺序是可设置的)。然后读第一个扇区,这叫引导扇;对于硬盘,也叫主引导记录,因为硬盘可以包含多个分区,每个分区都有自己的引导扇。引导扇包含一个小程序(小到可以存入一个扇区),它的责任是从磁盘读入真正的操作系统并启动之。从软盘启动Linux时,引导扇包含的代码只读前数百个数据块(当然,依赖于核心的大小)到预定的内存位置。Linux引导软盘上,没有文件系统,核心存在连续的扇区中,因为这样简化了引导过程。当然,使用LILO(LInuxLOader)可以从文件系统引导。从硬盘引导,主引导记录的代码检查分区表(也在主引导记录扇区中),确认活动分区(标84使用Linux网站建设技术指南下载记为可引导的分区),从该分区读引导扇区,然后启动该引导扇区的代码。该分区的引导扇区的代码做的与软盘所做的相同:从该分区读入核心并启动。但细节不同,因为一般只给核心映像做一个单独的分区是没什么用的,所以分区引导扇中的代码不能只顺序地读磁盘,它必须找到文件系统把它们放在哪些扇区中。有几个方法解决这个问题,但最通常的方法是使用LILO。(关于如何做的细节与这里的讨论无关;更多的信息请看LILO文档,它很全面)。用LILO引导时,它读入并引导缺省核心。也可以设置LILO,使之能引导若干个核心之一,甚至其他操作系统,也可以在引导时让用户选择引导哪个核心或操作系统。LILO可以设置为如果有人在引导时按住alt、shift或ctrl键(LILO启动时),LILO将不立即引导缺省的而问用户引导哪个。LILO可以设置为带一个timeout选项并询问,当超时时,就引导缺省核心。从软盘和硬盘启动各有优势,但通常从硬盘启动更好,因为这避免了关于软盘的争论。然而,安装相同从硬盘启动可能有更多的麻烦,因此很多人先用软盘引导,然后当相同工作很好后,再安装LILO从硬盘引导。Linux核心被读入内存后,才真正启动了,概述如下:Linux核心是被压缩安装的,所以它首先得解压自己。核心映像开头包括一个解压的小程序。如果你有Linux可识别的super-VGA卡,且支持一些特殊的文本模式(如100列40行),Linux会问你要用哪个模式。编译核心时,可能预定了一个视频模式,就不会问了。这也可以用LILO或rdev完成。然后,核心检查还有什么其他硬件(硬盘,软盘,网卡...),并配置适当的设备驱动;同时,输出查找结果的信息。例如,我引导时,得到类似如下信息:LILOboot:Loadinglinux.Console:colourEGA+80x25,8virtualconsolesSerialdriverversionwithnoserialoptionsenabledtty00at0x03f8(irq=4)isa16450tty01at0x02f8(irq=3)isa16450lp_init:lp1exists(,0u)singpollingdriverMemory:7332k/8192kavailable(300kkernelcode,384kreserved,176kdata)Floppydrive(s):fd0is,fd1isLoopbackdeviceinitWarningWD8013boardnotfoundati/o=280.Mathcoprocessorusingirq13errorreporting.Partitioncheck:hda:hda1hda2hda3VFS:Mountedroot(extfilesystem).Linuxversion(root@haven)05/01/9314:12:20精确的文本在不同系统上不同,依赖硬件、Linux版本、及其配置。之后核心试图mount根文件系统。位置可在编译时设置,或在任何时候使用rdev或LILO。文件系统类型自动检测。如果根文件系统mount失败,例如因为你忘了在核心中包含相关的文件系统驱动,核心将失败,系统停止(此时没什么可做了)。根文件系统通常被只读mount(这可用与位置相同的方法)。这可使文件系统在mount上时检查;检查一个可读写的已mount的文件系统可不是个好主意。然后,核心在后台启动程序init(位于/sbin/init)(它的进程号是1)。init做许多启动工作。确切的事依赖于设置。它至少要启动一些必要的后台守候程序。init然后切换到多用户模式并启动getty,提供虚拟控制台和串下载第4章Linux文件及系统管理用用85行线。getty是一个让用户通过虚拟控制台和串行终端登录的程序。init还可能启动一些其他程序,这些基于设置。至此,引导完成,系统启动并正常运行。重新启动系统重启动就是完全关闭系统,关掉电源,然后再打开。简单方法是用shutdown重启动系统而不是仅停止系统。这要使用shutdown的-r选项,例如命令shutdown-rnow。许多Linux系统在按ctrl-alt-del键时运行shutdown-rnow。这是可设置的,比如在多用户系统中设置一定的延时也许更好。如果是谁都能接触到的系统,那么最好设置为按ctrl-alt-del什么也不干。紧急启动(软)盘并非总可以从硬盘引导。例如,LILO设错了,系统可能就无法引导。这时,需要另一个总能引导的方法。对于典型的PC,可能是软驱。许多Linuxdistributions允许在安装时产生一张紧急引导盘(emergencybootfloppy)。然而,有些这样的引导盘只包含核心。有时这些程序是不够的:例如,你可能需要回存备份,而备份/回存软件在Linux安装盘里没有。因此,可能需要自己产生root盘。GrahamChapman写的BootdiskHOWTO([Cha])包含关于此的指导。当然,你必须记得使紧急引导盘和root盘最新。root盘被mount上时,不能用软驱干其他任何事,因此如果你只有一个软驱可能不太方便。然而,如果你有足够的内存,可以设置引导盘将root盘加载到RAM盘上(为此,引导盘的核心需要特殊设置)。一旦root盘被加载到RAM盘中,软驱就可以用于mount其他盘了。有关关机的更多信息关闭Linux系统时,遵循正确的过程是很重要的。否则,文件系统可能成为废物,文件可能变成杂乱的。这是因为Linux使用磁盘缓存,并不立即将数据写到磁盘,而是间歇地回写。这极大地改善了性能,但同时也意味着如果你只是关闭电源,cache可能保留着大量数据,而磁盘上的数据可能不是一个全部的正在工作的文件系统(因为有些数据已经回写到硬盘,而有些没有)。另一个不能直接关闭电源的原因是:在多任务系统中,后台可能运行着很多东西,关闭电源可能损失惨重。使用正确的关机顺序,可以保证所有的后台进程得以保存它们的数据。正常关闭Linux系统的命令是shutdown。它通常使用2种方法之一。如果系统只有你一个用户,使用shutdown的通常方法是退出所有运行程序,从所有虚拟控制台注销,用root登录(如果你已经是root,当然不必再注销、登录,但应该换到根目录,以免unmount由于出现问题),然后运行命令shutdown-hnow(虽然单用户时一般不必要,但如果需要一个延时,用一个加号加一个表示分钟的数目代替now)。如果系统是多用户,使用命令shutdown-h+timemessage,time是到系统停止的分钟数,message是告知所有用户系统关机原因的短信息。#shutdown-h+10'Wewillinstallanewdisk.Systemshould#>bebackon-lineinthreehours.'上面的命令警告所有用户,系统将在10分钟后关闭,他们最好保存信息,否则将丢失。警告将显示在所有登录的终端上,包括所有的xterm上:Broadcastmessagefromroot(ttyp0)WedAug201:03:251995...Wewillinstallanewdisk.Systemshouldbebackon-lineinthreehours.86使用Linux网站建设技术指南下载ThesystemisgoingDOWNforsystemhaltin10minutes!!警告在系统关闭前将自动重复数遍,随着时间流逝,间隔越来越短。当延时之后关闭系统真正开始时,所有文件系统(除了根)被unmount,所有用户进程(如果有人还未注销)被终止,守候进程被关闭,所有东西都停下来。此后,init打印出一条信息告知你可以关掉电源了。此时,也只有在此时,你才可以关闭电源。有时(虽然在任何好的系统上极少),系统可能不能正常关闭。例如,核心紊乱、崩溃等不正常情况,可能无法键入任何命令,因此正常关机可能有些困难,这是只能直接关机。问题可能没那么严重,比如,有人误动了你的键盘,核心和update程序还在正常运行,等待一些时间可能是个好建议,这能使update有机会将缓冲cache中的数据回存硬盘,然后再直接关机。有人喜欢用sync三遍来关闭系统,等到磁盘I/O停止,然后再关闭电源。如果没有什么程序运行着,这和用shutdown等效。然而,它不unmount任何文件系统,可能导致ext2fs的“干净文件系统”标志出问题。这种3遍sync的方法是不推荐使用的。登录和注销通过终端登录图4-6显示了通过终端登录发生的事情。首先,init确认有一个getty程序提供给终端连接STARTinit:fork+exec("/sbin/getty")getty:Waitforusergetty:readusername.exec("/bin/login")login:readpasswordnologin:exitdotheymatchyeslogin:exec("bin/sh")sh:readan
本文档为【Linu文件及系统管理】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
晓钟
暂无简介~
格式:doc
大小:1MB
软件:Word
页数:0
分类:企业经营
上传时间:2021-10-20
浏览量:0