实验5 文件系统管理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

广东技术师范学院实验报告
学院:计算机科学学

专业:物联网工程班级:
12物
联网
成绩:
姓名:邓文龙学号:08 组别:组员:
实验地点:工业中心204 实验日期:2014.03.26 指导教师签名:
实验5项目名称:文件系统管理
1、实验目的
理解Linux系统中的文件系统基本结构,掌握各种访问和管理文件以及文件系统的基本命令。

2、实验内容
2.1 文件系统管理的基本概念
文件系统(file system)是指操作系统中用于管理文件信息的软件机构。

借用维基百科里面关于文件系统的解释(/wiki/文件系统):计算机的文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易,文件系统使用文件和树形目录的抽象逻辑概念代替了硬盘和光盘等物理设备使用数据块的概念,用户使用文件系统来保存数据不必关心数据实际保存在硬盘(或者光盘)的地址为多少的数据块上,只需要记住这个文件的所属目录和文件名。

在写入新数据之前,用户不必关心硬盘上的那个块地址没有被使用,硬盘上的存储空间管理(分配和释放)功能由文件系统自动完成,用户只需要记住数据被写入到了哪个文件中。

文件系统既要建立在一定的物理存储设备上,但却是一个逻辑上的概念。

对用户来说,关于文件的各种操作及访问都需要通过文件系统进行,文件系统成为用户和存储设备之间的一个重要界面。

本实验主要讨论在Linux系统中文件以及文件系统管理的各种操作。

文件系统管理主要包括两大部分的内容,一部分是结合文件系统的基本特性,对文件系统作必要的设置,监控文件系统的基本使用状态,另一部分则是对文件的各类管理操作。

这些都是从软件层面上对文件系统进行管理。

部分最基本的shell命令已经之前的实验中有所介绍。

2.2文件系统
2.2.1文件系统的层次结构(补充教材6.4.1节)
文件系统表达了一种组织文件的方式。

一般地,UNIX文件系统采用的都是一种所谓树状的层次结构,称为“根文件系统”。

如下图所示,树根以“/”表示,
二级目录在各种UNIX操作系统基本上都差不多,重要的目录有etc(存放系统配置文件)、sbin和bin(存放可执行文件,也即二进制(binary)文件)、home (存放普通用户的个人主目录)、dev(存放设备文件)等等。

初学者应当注意将Windows与UNIX的文件系统结构相区别,Windows的文件系统以物理存储空间为文件的组织单元,文件目录实质是对物理空间的一种再划分。

然而UNIX系统中的目录并不严格对应于某个物理存储空间,目录代表了一类文件的集合,因此每个UNIX系统设置的目录都有其相对固定的含义和用途,目录中存放的也是一类有相似意义的文件。

UNIX的二级目录实际很少有做改动,其具体含义也是大家需要理解的,具体参见教材6-4-1。

新学者在使用UNIX文件系统时,要注意绝对路径与相对路径的区别。

绝对路径是指从根(/)出发直到目标文件的路径,如在任意位置下查看inittab文件的内容,可用命令:vi /etc/inittab。

相对路径是指从当前路径出发到目标文件的路径,如当前所在位置在/etc目录下,要查看inittab文件只需:vi inittab。

2.2.2虚拟文件系统(补充教材6.1.1-6.1.3节)
ext文件系统是Linux默认使用的文件系统类型,具体特点和性能可参考教材6-1-1。

这里补充谈一下Linux中的虚拟文件系统。

ext文件系统结构指的是Linux操作系统所使用的文件系统结构,也就是说,Linux系统本身的信息以ext格式存放。

然而除此之外,操作系统必须要支持各种类型的文件系统。

比如当使用到光盘时,操作系统需要支持光盘格式的文件系统iso9600。

因此操作系统设计了所谓的虚拟文件系统(VFS,virtual file system),如下图所示,它相当于一个在各种需要支持的文件系统与内核以及用户之间的接口,用户在实际使用各种文件系统时并不需要关心到文件系统的真实特性,而是以统一的接口加以数据的访问。

默认地在系统使用之初即安装有ext文件系统,但其他各种文件系统是在需要时挂载(mount)到系统上的。

挂载时需要指定访问该文件系统的入口。

一般地,我们可以将挂载的文件系统的入口制定到/mnt目录下,如图中NFS和GPFS 文件系统所示。

只有root用户以及系统组成员能挂载文件系统,不过普通用户可以查看文件系统挂载的基本情况。

利用mount命令,能查看如下信息:
●节点(如果挂载点是远程的)
●安装的对象
●安装点
●文件系统的类型
●安装的时间
任何安装选项(包括读写选项、日志存放处等)
许多文件系统需要在Linux系统启动之初挂载,以方便用户使用。

系统中配置文件/etc/fstab实现了该目的。

系统启动时将读取该文件,自动挂载指定的文件系统,具体可参阅教材6-1-3。

mount命令使用时需要给出存储设备名称,具体可参考2-2-4,下节实验再详细讨论有关问题。

2.2.3 inode与寻址结构
理解Linux文件系统的另一个重要概念是inode。

文件系统需要利用一个数据结构来记录文件以及目录(本质上也是文件)的基本信息(例如后面介绍到的文件的权限属性),这个数据结构在UNIX系统中称为inode。

通过inode节点,文件系统可以对某个文件进行寻址,找到它在存储设备上的具体位置,因此inode 即为文件的索引。

欲进一步详细了解inode的工作原理等方面的内容,可参考如下网页:
.tw/linux_basic/0230filesystem.php
作为系统管理者要知道inode是用户使用文件系统的重要软件资源。

每个文件需要有inode记录其基本信息。

UNIX系统中inode在建立文件系统时已经初始化且数量是固定的,换言之管理员要对inode的使用作出合理的管理。

关于某个文件的inode的查看,可使用ls命令结合“–i”选项进行。

2.2.4 相关管理命令
具体参考教材6.2.2,此处从略。

2.3 文件
2.3.1 文件的权限(补充教材6.5.1)
文件的权限是指特定某种用户对文件的读(r)、写(w)、执行(x)三种的操作权限。

关于文件权限的用户分为三种:文件所有者(owener)、同组用户(group)、其他用户(other)。

利用ls命令可以查看每个文件的操作权限,每一行所列文件的权限含义如下:
具体的文件权限表示与设置的具体参见教材表6-3及6-5-3。

2.3.2 链接文件(补充教材6.4.2节)
UNIX系统中将文件分为四种:普通文件、目录文件、链接文件和设备文件。

设备文件将在后续的实验中做介绍,而这次实验介绍的是链接文件。

链接文件指向某个实际的目标文件,其用途类似于Windows中的“快捷方式”,也即当访问链接文件时,实际访问的将是链接文件所指向的目标文件。

链接文件分为硬链接文件和符号链接文件,硬链接文件与被链接的目标文件共用同一个索引节点(inode),所以即使目标文件移动到别的目录上,硬链接文件仍然有效。

符号链接文件则是记录了目标文件的存放路径,所以目标文件被移动后,符号链接就会失效。

以下是硬链接文件和符号链接文件区别的演示实例。

例子:硬链接文件和符号链接文件
#touch test
#cat test
test for link.
#ln -s testsln test
#ln testln test
#ls -li test*
66848050-rw-rw---- 2 gdinczb member 0 2009-09-20 20:04 test
66848050-rw-rw---- 2 gdinczb member 0 2009-09-20 20:04 testln
66848051 lrwxrwxrwx 1 gdinczb member 4 2009-09-20 20:50 testsln -> test
# cat testsln
test for link.
#rm test
#ls -li test*
66848050 -rw-rw---- 1 gdinczb member 15 2009-09-20 20:52 testln
66848051 lrwxrwxrwx 1 gdinczb member 4 2009-09-20 20:50 testsln -> test
#cat testln 硬链接实质是目标文件的一个副本
test for link.
#cat testsln 符号链接仅记录了目标文件的存放路径
cat: testsln: A file or directory in the path name does not exist.
作业
请回答以下问题,并将结果以截图形式附于问题之后
(1)查看当前系统中哪个文件系统已经使用的空间最多,这个文件系统挂载在那里?
/dev/sr0已使用的空间最多,
(2)演示挂装U盘(或光盘(.iso文件),注意使用虚拟机者应在虚拟光驱中设定iso文件路径,此外可用UltraISO等软件自行制作一个小iso文件),并将其卸载,挂载点要求设置在用户主目录下的一个目录中。

(3)新建文件test,设置文件权限为r--r-----。

(4)新建文件test2的属性,要求设置权限为-rw-------。

(5)查看/etc/inittab文件的权限属性,并指出该文件的所有者以及文件所属组群。

该文件的拥有者是root用户,所属的组群为root组
(6)查找/etc目录下所有大于5KB的目录。

(7)查找root用户所有以t开头的文件,并将查找结果其保存在/root/result文件中。

(8)在/root下新建文件f1和f2,设置f1的内容是/root目录下所有文件的详细信息,f2的内容是所有的文件系统信息,最后将两个文件合并生成文件f3。

(9)在/root下建立/etc/fstab的符号链接文件,建立/etc/inittab的硬链接文件。

(10)新建文件test,分别为其建立硬链接文件和符号链接文件。

指出硬链接文件的索引号与符号链接文件的索引号的差异。

(11)在2.3.2的例子中,如果重新建立文件test。

那么访问硬链接文件testln是否将会访问到test文件的内容,访问符号链接文件呢?请用命令操作证明你的判断。

相关文档
最新文档