linux第3章_文件系统_第1页
linux第3章_文件系统_第2页
linux第3章_文件系统_第3页
linux第3章_文件系统_第4页
linux第3章_文件系统_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章文件系统,本章内容,文件系统体系结构文件操作权限管理磁盘管理,1、Linux文件系统体系结构,文件系统体系结构说明,用户空间包含一些应用程序和GNUC库(glibc),它们为文件系统调用(打开、读取、写和关闭)提供用户接口。系统调用接口的作用就像是交换器,它将系统调用从用户空间发送到内核空间中的适当端点。VFS是底层文件系统的主要接口。这个组件导出一组接口,然后将它们抽象到各个文件系统,各个文件系统的行为可能差异很大。有两个针对文件系统对象的缓存(inode和dentry),它们缓存最近使用过的文件系统对象。每个文件系统实现(比如ext2、JFS等等)导出一组通用接口,供VFS使用。,文件系统体系结构说明(续),缓冲区缓存会缓存文件系统和相关块设备之间的请求。例如,对底层设备驱动程序的读写请求会通过缓冲区缓存来传递。这就允许在其中缓存请求,减少访问物理设备的次数,加快访问速度。以最近使用(LRU)列表的形式管理缓冲区缓存。注意,可以使用sync命令将缓冲区缓存中的请求发送到存储媒体(迫使所有未写的数据发送到设备驱动程序,进而发送到存储设备)。,关于设备文件,块设备就是以块(比如磁盘扇区)为单位收发数据的设备,它们支持缓冲和随机访问(不必顺序读取块,而是可以在任何时候访问任何块)等特性。块设备包括硬盘、CD-ROM和RAM盘。字符设备没有可以进行物理寻址的媒体,字符设备包括串行端口和磁带设备,只能逐字符地读取这些设备中的数据。,文件系统类型,文件系统是指文件在硬盘上的存储方法和排列顺序。Linux系统中,每个分区都是一个文件系统,都有自己的目录层次结构。虚拟文件系统使得Linux可以支持多个不同的文件系统。内核支持的文件系统类型包括:ext、ext2、ext3、JFS、Minix、ISO9660MSDOS、NTFS、NFS,ext2文件系统,ext是专门为Linux系统设计的文件系统,叫扩展文件系统。ext2被称为二级扩展文件系统,1993年发布。支持256字节的长文件名。缺陷:Linux先写入文件的内容,然后等到有空的时候才写入文件的meta-data(与文件有关的信息,如权限、所有者等)。如果在写入文件内容之后,写入文件meta-data之前系统断电,则可能造成文件系统处于不一致的状态。虽然ext2文件系统容量为6384G,但是2.4内核支持的分区最大为2048GB。,ext3文件系统,一种日志式文件系统。日志式文件系统的优越性在于由于文件系统都有快取层参与运作,如不使用时必须将文件系统卸载,以便将快取层的资料写回磁盘。因此,当系统要关机时,必须将所有文件系统全部卸载。否则,重开机后会造成文件系统资料不一致,这时必须做文件系统的重整工作,相当耗时。继承了ext2的优点。缺点:没有现代文件系统所具有的、能提高文件数据处理速度和解压的高性能。,MINIX1.0文件系统,MINIX文件系统与标准UNIX文件系统基本相同,由6部分组成。,超级块与inode,超级块结构表示一个文件系统。它包含管理文件系统所需的信息,包括文件系统名称(比如ext2)、文件系统的大小和状态、块设备的引用和元数据信息(比如空闲列表等等)。超级块通常存储在存储媒体上,但是如果超级块不存在,也可以实时创建它。可以在./linux/include/linux/fs.h中找到超级块结构。inode表示文件系统中的一个对象,它具有惟一标识符。各个文件系统提供将文件名映射为惟一inode标识符和inode引用的方法。,2、文件操作,文件是Linux用来存储信息的基本结构,它是被命名的存储在某种介质上的一组信息的集合。Linux系统中有三种基本的文件类型。普通文件:又分为文本文件和二进制文件。目录文件:目录文件存储了一组相关文件的位置、大小等与文件有关的信息。设备文件:Linux系统把每一个I/O设备都看成一个文件,与普通文件一样处理,这样可以使文件与设备的操作尽可能统一。,12,目录,Linux系统以目录的方式来组织和管理系统中的所有文件。将所有文件的说明信息采用树型结构组织起来整个文件系统有一个“根”(root),然后在根上分“杈”(directory),任何一个分杈上都可以再分杈,杈上也可以长出“叶子”。“根”和“杈”称为“目录”或“文件夹”。而“叶子”则是一个个的文件。Linux系统通过目录将系统中所有的文件分级、分层组织在一起,形成了Linux文件系统的树型层次结构。以根目录“/”为起点,所有其他的目录都由根目录派生而来。特殊目录:“.”代表该目录自己,“.”代表该目录的父目录,对于根目录,“.”和“.”都代表其自己。,13,目录(续),工作目录:用户登录到Linux系统后,每时每刻都处在某个目录之中,此目录被称为“工作目录”或“当前目录”。用户主目录(HomeDirectory):是系统管理员在增加用户时为该用户建立起来的目录,每个用户都有自己的主目录。使用符号表示。,14,目录(续),路径是指从树型目录结构中的某个目录到某个文件的一条道路。此路径的主要构成是目录名称,中间用“/”分开。绝对路径是指从“根”开始的路径,也称为完全路径;相对路径是指从用户工作目录开始的路径。通配符通配符*通配符?字符组模式:通配符“”、“”、“-”用于构成字符组模式。转义字符,15,目录和文件的基本操作,文件查看和连接命令catcat选项分屏显示命令moremore选项按页显示命令lessless选项,16,复制、删除和移动命令,复制命令cpcp选项或者cp选项.删除命令rmrm选项.移动或重命名命令mvmv选项或者mv选项.,17,创建和删除目录命令,创建目录命令mkdirmkdir-p删除删除空目录命令rmdirrmdir-p,18,切换工作目录和显示目录命令,切换工作目录命令cdcd显示当前路径命令pwdpwd查看目录命令lsls选项.,19,查找与定位命令,查找文件或者目录命令findfindpathexpression文件定位命令locate/slocatelocate选项,20,改变文件或目录时间属性,改变文件或目录时间的命令touchtouch选项file2.,21,硬链接与软链接,链接lnln选项硬链接:一个文件是另一个文件的别名,是同一个文件实体。软链接:又称为符号链接,一个特殊的文件,它的内容不是真正的数据,而是指向另一个文件的路径名。硬链接必须在同一文件系统中;软连接可以跨不同的文件系统,并且可以对目录创建链接。不论是硬链接还是软链接,都不会复制原文件。,压缩解压缩命令,命令格式为:tar辅选项压缩和解压命令gzipgzip选项解压命令unzipunzip选项,23,24,3、权限管理,Linux/Unix的文件访问权限分为三级:文件所有者、群组、其他:拥有者(owner)权限:拥有文件的用户具有的访问权限。与拥有者同组用户的权限:文件拥有者所在组的其它用户对该文件的访问权限。其他用户(other)权限:与文件拥有者不在同一组的用户对该文件的访问权限。,25,更改文件所有者,chownchown选项user:group,26,更改文件访问权限,更改文件访问权限命令chmodchmod选项.mode:ugoa+-=rwxX.,,mode也可以用数字来表示权限:chmodabcfile,更改文件访问权限,chmod用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。chmod选项.mode:ugoa+-=rwxX.,,该命令有两种用法。字母和操作符表达式的文字设定法包含数字的数字设定法,文字设定法,操作对象who可是下述字母中的任一个或者它们的组合:u表示“用户(user)”,即文件或目录的所有者。g表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。o表示“其他(others)用户”。a表示“所有(all)用户”。它是系统默认值。操作符号可以是:+添加某个权限。-取消某个权限。=赋予给定权限并取消其他所有权限(如果有的话)。,文字设定法(续),设置mode所表示的权限可用下述字母的任意组合:r可读。w可写。x可执行。X只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x属性。s在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“us”设置文件的用户ID位,“gs”设置组ID位。t保存程序的文本到交换设备上。,文字设定法(续),在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmodg+r,o+rexample使同组和其他用户对文件example有读权限。,数字设定法,chmodabcfilea,b,c各为一个数字,分别表示User、Group、及Other的权限。权限是关于可读(r)、可写(w)、可执行(x)三个属性设置值的和,其中r=4,w=2,x=1。例如:若要rwx属性,则4+2+1=7;若要rw-属性,则4+2=6;若要r-x属性,则4+1=7,数字设定法(续),chmod644mm.txt即设定文件mm.txt的属性为:-rw-r-rchmod750wch.txt即设定wchtxt这个文件的属性为:-rwxr-x-,4、硬盘管理,创建文件系统挂载和卸载文件系统自动挂载文件系统,34,Linux存储设备,计算机系统中,所有的存储设备都是以目录树的形式对文件进行管理的。在Linux系统中,所有的文件都是在以“/”目录为根的一棵“大”目录树中进行管理。如果要使用USB存储设备、光盘或软盘等存储设备,必须将这些设备中的“小”目录树像嫁接一样挂载(mount)到Linux系统的“大”目录树中。,35,创建文件系统,mkfs选项-t设备名称区块数说明:把指定的设备格式为指定的文件系统。例如格式化硬盘时:mkfstext3/dev/hda4格式化软盘时,需要指定设备名和区块数,每个区块大约1000个字节,一张1.44MB的软盘对应1440个区块。格式化指令为:mkfstext3/dev/fd01440,挂载文件系统,挂载对象的文件系统类型vfatext2ext3iso9660挂载对象的设备名称在Linux系统中,设备名称通常都在/dev目录下,设备名称的命名是有规则的;/dev/hda1/dev/sda2/dev/fd0/dev/cdrom设备挂载到哪一目录,即挂载点Linux系统中有一个/mnt目录,专门用作挂载点(mountPoint)目录在挂载设备时首先查看挂载点目录是否存在,如不存在必须首先创建该目录,否则mount命令无法正常执行。,36,37,挂载命令mount,mount选项选项:-t挂载的文件系统mounttext2/dev/fd0/mnt/floppy-o参数=值,对于挂载的不同类型的设备可以使用一组不同的参数。mount-oiocharset=cp936/dev/sda1/mnt/usb,挂载设备的过程,查看设备:使用命令“fdiskl”可以查看系统的存储设备挂载设备:首先使用mkdir命令建立挂载点目录,然后再使用mount命令挂载相关设备访问设备:按照文件方式访问设备内容,38,卸载文件系统,卸载设备:用户在使用完挂载设备后,不能直接将挂载设备从系统拔出,否则会出现问题,严重的会导致系统崩溃。用户必须先执行卸载命令然后再该设备拔出。umount挂载点或设备名,自动挂载文件系统,使用配置文件/etc/fstab来自动挂载存储设备。文件/etc/fstab存放的是系统中的文件系统信息。每个文件系统在文件中都对应一个独立的行。fsck、mount、umount的等命令都利用这个文件。fstab每一行为一个分区记录,包含六个域:例如:/dev/hda1/mnt/cvfatiocharset=cp93600,40,41,mount命令,利用fstab文件,mount还有另外两种使用格式:mounta该命令将文件/etc/fstab中提到的所有文件系统,凡没使用noauto选项的,一律按照指定的方式自动挂载。该命令一般在系统的启动脚本中执行。mount或者mount当挂载fstab中提到的文件系统时,可以只指定挂载设备或者只指定挂载点即可完成挂载。,交换空间,Linux系统中交换空间在物理内存被用完时使用。位于硬盘驱动器上。用户在安装系统后添加,可以添加交换分区或者交换文件。添加交换空间有两种方法。方法一:创建交换分区mkswap

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论