Linux操作系统第6章文件系统管理.pptx
《Linux操作系统第6章文件系统管理.pptx》由会员分享,可在线阅读,更多相关《Linux操作系统第6章文件系统管理.pptx(99页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、LinuxLinux操作系统操作系统 第第6章章 文件系统管理文件系统管理 6.1 文件系统基础文件系统基础 6.2 创建文件系统创建文件系统 6.3 文件系统的安装和卸载文件系统的安装和卸载 6.4 文件系统的维护文件系统的维护 习题习题 LinuxLinux操作系统操作系统 6.1文件系统基础 6.1.1 磁盘的分区磁盘的分区Linux系统使用各种存储介质来保存永久的数据,例如:硬盘、软盘、光盘、磁带等。其中硬盘是不可缺少的介质,硬盘有容量大、速度快、价格低的特点。我们常常对硬盘进行分区,使得每个分区在逻辑上是独立的。这样我们就可以在每个分区安装一个操作系统,而多个操作系统就可以共处在同一
2、个硬盘上。软盘的容量小,不进行分区;光盘则作为一个大盘更易于使用,也不进行分区。LinuxLinux操作系统操作系统 硬盘分区的信息保存在硬盘的第一个扇区(即第一面第一磁道第一扇区),这个扇区称为MBR(主引导记录),主引导记录包含有一段小程序。计算机启动时BIOS会执行这一段小程序,小程序又会读入分区表,检查哪个分区是活动分区(也叫启动分区),并读入活动分区的第一扇区(称为分区的启动扇区)。启动扇区也包含另一个程序,这个程序实际上是操作系统的一部分。它将负责操作系统的启动。LinuxLinux操作系统操作系统 一个硬盘的分区最多只能有四个基本分区。有些时候这个数量太少了,于是人们就发明了扩展
3、分区。扩展分区是在基本分区的基础上把分区再细分成多个子分区,每个子分区都是逻辑分区。一般情况下,只能允许存在一个扩展分区,即磁盘可以有三个基本分区和一个扩展分区。硬盘的分区结构如图6-1所示,硬盘的分区信息可以使用命令“fdisk-l”获得。LinuxLinux操作系统操作系统 图6-1硬盘分区结构LinuxLinux操作系统操作系统 【实例6.1】rootredflag/root#fdisk-l/dev/hdaDisk/dev/hda:255heads,63sectors,2482cylindersUnits=cylindersof16065*512bytesLinuxLinux操作系统操作
4、系统 DeviceBootStartEndBlocksIdSystem/dev/hda1*1 383307641683Linux/dev/hda2384447 51408082Linuxswap/dev/hda3448454 56227+83Linux/dev/hda4455467 104422+82LinuxswapLinuxLinux操作系统操作系统 以上输出中带“*”号的是启动分区。我们随后将详细介绍fdisk命令的使用。Linux对硬盘分区的命名和DOS对硬盘分区的命名有很大的不同。在DOS下软盘为“A:”、“B:”,而硬盘为“C:”、“D:”,等等。Linux则使用/dev/hda0
5、等来命名它们。以/dev/hd开头的表示IDE接口的硬盘,以/dev/sd开头的表示SCSI接口的硬盘,随后的abcd等代表第几个硬盘,而数字1、2、3、4代表硬盘的第几个分区。例如,/dev/hda1表示第一个IDE硬盘的第一个分区。表6-1列举了常用的分区命名方法。LinuxLinux操作系统操作系统 表6-1分区的命名设备分区的命名软盘/dev/fd0第一个IDE硬盘(整个硬盘)/dev/hda第一个IDE硬盘第一个分区/dev/hda1第一个IDE硬盘第二个分区/dev/hda2第二个IDE硬盘(整个硬盘)/dev/hdb第二个IDE硬盘第一个分区/dev/hdb1LinuxLinux
6、操作系统操作系统 第二个IDE硬盘第二个分区/dev/hdb2第一个SCSI硬盘(整个硬盘)/dev/sda第一个SCSI硬盘第一个分区/dev/sda1第一个SCSI硬盘第二个分区/dev/sda2第二个SCSI硬盘(整个硬盘)/dev/sdb第二个SCSI硬盘第一个分区/dev/sdb1第二个SCSI硬盘第二个分区/dev/sdb2LinuxLinux操作系统操作系统 6.1.2 什么是文件系统什么是文件系统文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构,即在磁盘上组织文件的方法。分区或磁盘在作为文件系统使用前需要初始化,并将记录数据结构写到磁盘上,这个过程叫建立文件系统。我
7、们在DOS下常常进行的格式化磁盘进程也是一个建立文件系统的过程。不同的操作系统所支持的文件系统是不同的,一个文件系统在一个操作系统下可以正常地被使用,转移到另一操作系统时往往会出问题。LinuxLinux操作系统操作系统 Linux支持多种类型的文件系统。而红旗Linux3.0版又增加了几种新类型的文件系统。下面是几个重要的文件系统:minix:最早的Minix系统的文件系统。ext2:Linux系统的文件系统,目前是使用最广泛的文件系统。swap:用于交换分区和交换文件的文件系统。sysv:Unix里广泛使用的SystemV。iso9660:标准的CD-ROM的文件系统。LinuxLinux
8、操作系统操作系统 vfat:扩展的DOS文件系统,支持长文件名,被Windows98采用。msdos:与MS-DOS/FAT16兼容的文件系统。hpfs:OS/2文件系统。nfs:网络文件系统,允许多台计算机间共享的文件系统。ntfs:用于WindowsNT和Windows2000的文件系统。reiserfs:安全性和效能比ext2都好的文件系统。ext3:ext2的后续者,红旗Linux3.0版(Linux内核2.4.17)已经把它加入。smb:支持SMB协议的高性能文件系统。LinuxLinux操作系统操作系统 一般情况下没有理由用不同类型的文件系统来组成Linux系统,除非原有的文件系统
9、已经存在。由于历史的原因,当前ext2的使用最为广泛,而reiserfs是红旗Linux3.0安装时默认的文件系统类型,ext3是当前最新的文件系统类型。ext2比起以往的文件系统在文件性能方面有很大的提高,但也存在不少的问题,例如,文件系统在异常关机等情况下容易遭到破坏,使用“fsck”命令检查文件系统要检查整个文件系统,对于较大的文件系统,常常需花费几个小时的检查时间。LinuxLinux操作系统操作系统 为了解决这个问题,出现日志型文件系统,如reiserfs和ext3。日志型文件系统比传统的文件系统安全,因为它用独立的日志文件跟踪磁盘内容的变化。就像关系型数据库(RDBMS),日志文件
10、系统可以用事务处理的方式提交或撤消文件系统的变化。日志机制保证了在每个实际数据修改之前,相应的日志已经写入硬盘。正因为如此,在系统突然崩溃时,在下次启动几秒钟后就能恢复成一个完整的系统,系统也就能很快地使用了。LinuxLinux操作系统操作系统 reiserfs除了具有日志型文件系统的特性,还具有适合处理大量小文件(如5000个50字节的文件)和特大文件(例如2GB以上)的特点。ext3则是ext2的后续者,它也是日志型文件系统,更为难得的是,它的磁盘格式和ext2的相同,ext2和ext3的转换相当的容易,对于ext2的升级十分有利。没有一种文件系统适合所有的应用,因此我们要选择适合自己的
11、文件系统。对于新安装的系统,我们建议采用reiserfs或ext3。LinuxLinux操作系统操作系统 Linux采用虚拟文件系统(VFS)技术,因此Linux可以支持多种文件。每一文件系统都提供一个公共的接口给VFS,不同文件系统的所有细节由软件进行转换。而从Linux内核和Linux运行的程序来看,不同的文件系统之间没有差别。例如,用户可以把自己原有的Windows分区挂接到Linux中的一个目录下,也可以同时把NFS(网络文件系统)挂接在另一目录,它们可以和平地融合为一体。LinuxLinux操作系统操作系统 文件系统是所有数据的基础,所有文件和目录都驻留在文件系统上。在Linux系统
12、中,所有的文件系统都被连接到一个总的目录上,这个目录就叫根目录,是由系统自动建立的。根目录下有许多分支,分支又有子分支,从而整个目录呈树状结构,如图6-2所示。LinuxLinux操作系统操作系统 图图6-2 树状的目录结构树状的目录结构LinuxLinux操作系统操作系统 文件系统连接目录树上的一点,这个点就叫安装点。图6-2中的每个虚框就是一个文件系统,所有不在虚框的部分也是一个文件系统,一共有四个文件系统。就这样,不同的文件系统形成了一个无缝的整体。LinuxLinux操作系统操作系统 6.1.3 文件文件文件是有名字的一组相关信息的集合,它有多种的分类方法,如根据文件的用途我们把文件分
13、为以下四种。(1)普通文件。文件可以是千差万别的,如普通的Word文件、图像文件、声音文件、网页HTML文件,也可以是脚本文件、程序员编写的可执行文件。我们可进一步把文件分类为文本文件和二进制文件。LinuxLinux操作系统操作系统 文本文件即ASCII码文件,可以使用cat、more等命令查看,Linux系统的多种配置文件、源程序、HTML文件都属于此类。二进制文件,一般不能被直接查看,而必须使用相应的软件才行,如图像文件、声音文件、可执行文件都属于此类。(2)目录文件。Linux中把目录也看成文件,这是和DOS/Windows不太相同的地方。目录可以包含下一级目录和普通文件。(3)链接文
14、件。我们在第2章已经介绍了链接,有软链接和硬链接之分。链接的一个好处是不占用过多的磁盘空间。LinuxLinux操作系统操作系统 (4)设备文件。Linux中把系统中的设备也当成文件,用户可以像访问普通文件一样来访问系统中的设备,并且所有设备文件都放在/dev目录下。设备文件可以分为块设备和字符设备两类。例如,打印机是字符设备,磁盘是块设备。把设备当成文件的好处是使得Linux系统能够保证设备的独立性。计算机外设不断更新,但是操作系统不可能为了刚出现的设备文件而经常修改。当需要增加新的设备时,只需要在内核添加必要的设备驱动程序就可以了。这样一来,使用不同外设时内核就可以用完全一样的方式来进行处
15、理。LinuxLinux操作系统操作系统 设备文件中有一特殊的文件是/dev/null,称为空设备。它是一个类似“黑洞”的设备,所有放入该设备的东西将不复存在,例如:rootredflag/root#mvtest.zip/dev/null该命令执行的结果是test.zip文件永远被删除了。LinuxLinux操作系统操作系统 还有一种很特殊的文件是管道文件,它主要用于在进程间传递信息,是一个先进先出(FIFO)的缓冲区,管道文件类似我们日常生活中的管道,一端进入的是某个进程的输出,另一端输出的是另一个进程的输入。例如:rootredflag/root#cat/etc/passwd|more该命
16、令使用了管道“|”,命令cat/etc/passwd的输出是管道的输入,经过管道后,成为了命令more的输入。LinuxLinux操作系统操作系统 使用命令“lsl”可以显示文件的类别,每个输出行中的第一个字符表示的就是文件的类别,例如,“b”代表块设备,“p”代表管道文件,“c”代表字符设备,“d”代表目录文件。LinuxLinux操作系统操作系统 6.1.4Linux系统的目录结构Linux系统中,目录是一个层次(或树状结构),根是所有目录的起始点,根目录下主要有以下子目录。/bin:包含二进制文件,即可执行程序,这些程序是系统必需的文件。/sbin:也用于存储二进制文件,但不同的是它们不
17、给普通用户使用,只有超级用户root可以使用。LinuxLinux操作系统操作系统 /etc:用于存放Linux系统的配置文件,该目录的文件相当重要,例如:passwd、host、fstab、inittab等等,我们将在不同的章节使用到这个目录下的文件。/boot:Linux系统引导时加载器使用的文件,系统中非常重要的内核vmlinux就是放在该目录下。/dev:存放设备文件,用户可以通过这些文件访问外部设备。/lib:存放根文件系统中的程序运行所需要的库文件。LinuxLinux操作系统操作系统 /temp:存放各种临时文件。/mnt:管理员临时安装文件系统的安装点,下面有几个意义明确的子目
18、录,如软盘、光驱等。如下:drwxrwxr-x2rootroot4810月91998cdromdrwxrwxr-x2rootroot482月61996floppyLinuxLinux操作系统操作系统 /root:超级用户的个人主目录。/usr:该目录占用的空间一般比较大,用于安装各种应用程序。/proc:是一个虚拟的目录,存放当前内存的映像,该文件系统由内核自动产生。/var:存放一些会随时改变的文件。例如,spool目录、其他的暂存文件。/opt:是放置额外安装的应用程序包的地方。LinuxLinux操作系统操作系统 6.2创建文件系统要在硬盘创建文件系统,首先要进行硬盘分区。硬盘分区有很多
19、的工具,如:Fdisk、Cfdisk等,用得最多的还是Fdisk。LinuxLinux操作系统操作系统 6.2.1 Fdisk的使用的使用1.fdisk-l显示所有分区的信息【实例6.2】Disk/dev/hda:255heads,63sectors,2482cylindersUnits=cylindersof16065*512bytesLinuxLinux操作系统操作系统 DeviceBoot Start EndBlocksIdSystem/dev/hda1*1 383307641683Linux/dev/hda238444751408082Linuxswap/dev/hda34484863
20、13267+83LinuxLinuxLinux操作系统操作系统 以上显示了惟一的一个磁盘/dev/hda的参数和分区情况,磁盘有255个磁头,2482个柱面,每柱面63个扇区,第四行起是分区的情况,依次是分区名、是否是启动分区、起始柱面、终止柱面、分区的总块数、分区ID(分区类型的数字值)、分区的类型。如/dev/hda1分区是启动分区(带“*”号),起始柱面是1,终止柱面是383,分区大小是3076416块(每块的大小是1024字节,即总共300MB左右的空间)。每柱面的扇区数等于磁头数乘以每柱面扇区数,每两个扇区为一块,因此分区的块数等于分区占用的总柱面数乘以磁头数,再乘以每柱面扇区数后除
21、以二。例如:/dev/hda2的总块数=6425563/2=514080LinuxLinux操作系统操作系统 2.fdisk驱动器名创建磁盘分区【实例6.3】rootredflag/root#fdisk/dev/hdaThenumberofcylindersforthisdiskissetto2482.Thereisnothingwrongwiththat,butthisislargerthan1024,andcouldincertainsetupscauseproblemswith:1)softwarethatrunsatboottime(e.g.,oldversionsofLILO)2)b
22、ootingandpartitioningsoftwarefromotherOSs(e.g.,DOSFDISK,OS/2FDISK)Command(mforhelp):mLinuxLinux操作系统操作系统 使用“m”可以获得如下帮助:Commandactiona toggleabootableflagb editbsddisklabelc togglethedoscompatibilityflagd deleteapartitionl listknownpartitiontypesmprintthismenun addanewpartitiono createanewemptyDOSpart
23、itiontablep printthepartitiontableLinuxLinux操作系统操作系统 q quitwithoutsavingchangess createanewemptySundisklabelt changeapartitionssystemidu changedisplay/entryunitsv verifythepartitiontablewwritetabletodiskandexitx extrafunctionality(expertsonly)LinuxLinux操作系统操作系统 其中常用的命令有:a:切换分区的启动标志。d:删除分区。l:显示已知的分区类
24、型。m:显示命令的帮助。n:添加新的分区。p:显示当前硬盘的分区情况。q:退出并且不保存分区的结果。t:改变分区的类型。w:保存分区的结果并退出。LinuxLinux操作系统操作系统 Command(mforhelp):l0Empty1bHiddenWin95FA63GNUHURDorSysb7BSDIfs1FAT121cHiddenWin95FA64NovellNetwareb8BSDIswap2XENIXroot1eHiddenWin95FA65NovellNetwarec1DRDOS/sec(FAT-3XENIXusr24NECDOS70DiskSecureMultc4DRDOS/sec
25、(FAT-4FAT1632M39Plan975PC/IXc6DRDOS/sec(FAT-5Extended3cPartitionMagic80OldMinixc7Syrinx6FAT1640Venix8028681Minix/oldLindaNon-FSdataLinuxLinux操作系统操作系统 7HPFS/NTFS41PPCPRePBoot82LinuxswapdbCP/M/CTOS/.8AIX42SFS83LinuxdeDellUtility9AIXbootable4dQNX4.x84OS/2hiddenC:e1DOSaccessaOS/2BootManag4eQNX4.x2ndpart
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 操作系统 文件系统 管理
限制150内