您的位置:首页 > 其它

[RHEL5系统管理攻略]--第3章 ext与swap文件系统(1)

2010-01-05 19:36 211 查看
[align=left]对于[/b]IT[/b]的学习来说,把握[/b]“[/b]心法与招式[/b]”[/b]的平衡,是至关重要的!要想成为高手![/b]“[/b]心法与招式[/b]”[/b]必须兼修![/b][/b][/align]
所谓心法,就是理论基础知识,是底层的原理性知识,是那些跟特定的厂家无关的跨平台共性知识; [/b]
所谓招式,就是应用层面的技能,配置、操作和调试的步骤,跟具体的软件或者硬件紧密关联的特殊知识。[/b]
ext[/b]与[/b]swap[/b]文件系统是[/b]Red Hat Enterprise Linux[/b]系统中是最重要的文件系统,本章将深入介绍这[/b]3[/b]个文件系统的功能,以及如何管理这[/b]3[/b]个文件系统。[/b][/b]
3.1 [/b]ext2文件系统
[align=left]ext2文件系统是全名为第二代延伸式文件系统(2nd extended filesytem),是针对Linux特性特别开发的,所以几乎是为Linux量身打造的文件系统。因此,ext2最后成为各种Linux产品内置的文件系统。当然Red Hat Enterprise Linux也提供ext2文件系统。本节将介绍ext2文件系统的特色与功能。[/align]
[align=left] ext2文件系统究竟提供了什么魅力,深得所有Linux厂商的推崇?ext2提供的功能整理为以下几点:[/align]
[align=left]⑴ 支持255个字符的文件名称。[/align]
[align=left]⑵ 支持各种类型的文件。[/align]
[align=left]⑶ 单一文件系统最大为8TB 。[/align]
[align=left]⑷ 单一文件最大为8TB 。[/align]
[align=left]⑸ 提供文件的特殊属性。[/align]
[align=left]⑹ 可以为ext2文件系统设置卷标名称。[/align]
[align=left]⑺ 可以调校ext2文件系统。[/align]
[align=left]⑻ 通过cache/buffer提高ext2文件系统的效率。[/align]
[align=left]下面将详细介绍上述各项特色与功能,并且介绍如何在Red Hat Enterprise Linux系统中操作ext2的特殊功能。[/align]
[align=left]3.1.1 ext2文件系统名称与支持的文件类型[/align]
[align=left]支持255个字符的文件名称。[/align]
在以前最多只能存储255个字元或者127个中文的文件名:不过,现在的RHEL的ext2文件系统已经支持万国码(Unicode),因此,最多可以存储255个英文或者中文的文件名称。而文件名称中可以使用除了“/”外的任何字符。但是,强烈建议避免使用以下的特殊符号作为文件名称。
⑴ 特殊符号:eg: “,” 、“;” 、“-” “~” 、“空白”等。
⑵ 无法显示的字符:eg: ASCⅡ的007字符。
⑶ 此外,ext2文件系统也建立、存储下列几种类型的文件。
⑷ 常规文件(Regular File):包含文字文件、二进制文件(Binary File)、执行文件、链接库……
⑸ 目录(Directory)。
⑹ 连接文件(Link File): 包含硬性连接文件(Hard-Link File)、软性连接文件(Soft-Link File)。
⑺ 设备文件(Device File): eg: 区块设备(Block Device)、字符设备(Character File)。
⑻ 跨进程通信文件(Inter-Process Communcation File,IPC File): 例如:Socket文件、FIFO文件。
[align=left]3.1.2 制作ext2文件系统[/align]
[align=left] 制作ext2文件系统,则可用mkfs或者mkfs.ext2命令:[/align]
[align=left] mkfs [-t ext2] [options…] device [size][/align]
[align=left] mkfs.ext2 [options…] device [size][/align]
[align=left]⑴ device : 文件系统的设备文件名称。[/align]
[align=left]⑵ size : 新建的文件系统大小。若未指定,则为默认值。[/align]
[align=left]⑶ options: 参数。常用参数如下表所示。[/align]
[align=center]mkfs与mkfs.ext2常用参数表[/align]

[align=center]参数[/b][/b][/align][align=center]说明[/b][/b][/align]
[align=left]-c[/b][/align][align=left]在制作文件系统前,先检查磁盘是否有坏轨([/b]Bad Block[/b])[/b][/b][/align]
[align=left]-l file[/b][/align][align=left]从[/b]file[/b]读入坏轨扇区数据[/b][/b][/align]
[align=left]-b size[/b][/align][align=left]指定[/b]ext2[/b]文件系统的区块大小[/b][/b][/align]
[align=left]-i size[/b][/align][align=left]指定每隔多少[/b]size[/b]字节建立一个索引节点[/b][/b][/align]
[align=left]-N count[/b][/align][align=left]指定建立几个索引节点[/b][/b][/align]
[align=left]-L lable[/b][/align][align=left]指定[/b]ext2[/b]文件系统的卷标名称[/b][/b][/align]
[align=left]-m reserved_percent[/b][/align][align=left]设置保留区块的百分比[/b][/b][/align]
[align=left] [/b]下面我们来看建立[/b]ext2[/b]文件系统:[/b][/align]


[/b]


[/b]
[align=left]① [/b]mkfs[/b]没有加任何参数,则采用默认值,即把[/b]/dev/hda8[/b]的所有磁盘空间制作成 为[/b]ext2[/b]文件系统。[/b][/b][/align]
[align=left] [/b]温馨提醒:在制作文件系统时,会清除掉磁盘空间上原来的所有文件数据,故在建立文件系统前,一定要仔细思量。[/b][/b][/align]
[align=left]3.1.3 ext2文件特殊属性[/align]
[align=left] [/b]在[/b]ext2[/b]文件系统建立一个文件时,[/b]ext2[/b]除了会记录文件的权限、拥有者、异动时时间等信息外,还会存储[/b]ext2[/b]文件系统的属性数据。通过[/b]ext2[/b]文件系统的属性,可以对[/b]ext2[/b]的文件提供更细致的管理,赋予[/b]ext2[/b]上的文件更多的功能。[/b][/b][/align]
[align=left] [/b]常用的[/b]ext2[/b]文件系统特殊属性如下表:[/b][/b][/align]
[align=center]ext2[/b]文件系统的文件特殊属性[/b][/b][/align]

[align=center]属性[/b][/b][/align][align=center]说明[/b][/b][/align]
[align=left]a[/b][/align][align=left]只能附加,意即不能删除,也不能覆盖[/b][/b][/align]
[align=left]c[/b][/align][align=left]允许由内核自动压缩[/b][/b][/align]
[align=left]d[/b][/align][align=left]通过[/b]dump[/b]工具进行备份时,要跳过这个文件[/b][/b][/align]
[align=left]i[/b][/align][align=left]恒久不变的,意即不能删除,不能覆盖,也不能附加[/b][/b][/align]
[align=left]j[/b][/align][align=left]挂载参数是[/b]data=ordered[/b]或[/b]data=writeback[/b]时,将所有数据写入日志区块[/b][/b][/align]
[align=left]s[/b][/align][align=left]安全地删除[/b][/b][/align]
[align=left]u[/b][/align][align=left]可以进行反删除[/b][/b][/align]
[align=left]A[/b][/align][align=left]读取该文件时,不需要更新读取时间戳记录,启用这个属性时,可以提高文件的读取效率[/b][/b][/align]
[align=left]D[/b][/align][align=left]当目录被异动时,立即写回磁盘[/b][/b][/align]
[align=left]S[/b][/align][align=left]文件一经修改,立即存回磁盘[/b][/b][/align]
[align=left] [/b][/align]
[align=left] 查看文件的特殊属性:[/b][/b][/align]
[align=left] lsattr files[/b]...[/b][/b][/align]
[align=left] 配置文件的特殊属性:[/b][/b][/align]
[align=left] chattr [/b]+-[/b] attributes[/b]... [/b]files[/b]...[/b][/b][/align]
[align=left]⑴ [/b]attributes [/b]:就是要设置的特殊属性代号(如:[/b] i [/b]、[/b]a [/b])。[/b][/b][/align]
[align=left]⑵ [/b]+[/b] attributes [/b]:[/b] [/b]表示启用这项属性(如:+[/b]i [/b])[/b][/b][/align]
[align=left]⑶ [/b]-[/b] attributes [/b]:[/b] [/b]表示停用它个属性[/b] ([/b]如:-[/b]i )[/b][/align]
[align=left]好啦,我们一起来看看如何设置[/b]ext2[/b]文件系统特殊属性:[/b][/b][/align]
[align=left]为了方便初学者,故从初步开始……[/b][/align]
[/b]

[/b]
[align=left]① [/b]查看[/b]/mnt/[/b]目录下是否有[/b]tmp[/b]目录,显然没有。[/b][/b][/align]
[align=left]② [/b]创建[/b]tmp[/b]目录,在[/b]/mnt/[/b]下。[/b][/b][/align]
[align=left]③ [/b]再次查看[/b]/mnt/[/b]目录下是否有[/b]tmp[/b]目录,显然有。[/b][/b][/align]
[align=left]④ [/b]查看[/b]/mnt/tmp[/b]目录下是否有文件,显然没有。[/b][/b][/align]
[align=left]⑤ [/b]建立一个文件[/b]file1.[/b][/align]
[align=left]⑥ [/b]再次查看[/b]/mnt/tmp/[/b]目录下是否有文件[/b]file1[/b],显然有。[/b][/b][/align]
[align=left]⑦ [/b]查看[/b]/mnt/tmp/file1[/b]中是否有内容,明显没有。[/b][/b][/align]
[align=left]⑧ [/b]把[/b]/dev/hda8[/b]分区的文件系统挂载到[/b]/mnt/tmp/[/b][/align]
⑨ [/b]/dev/hda8[/b]被制作成为[/b]ext2[/b]文件系统,已挂载到[/b]/mnt/tmp/[/b]目录。[/b]

[/b]
[align=left]① [/b]先查看[/b]/mnt/tmp/file1[/b]文件的特殊属性,根据[/b]lsattr[/b]显示结果可知,[/b]file1[/b]目前没有设置任何的特殊属性。[/b][/b][/align]
[align=left]② [/b]因没有任何特殊属性,故可直接覆盖[/b]/mnt/tmp/file1[/b]文件的内容。[/b][/b][/align]
[align=left]③ [/b]查看[/b]/mnt/tmp/file1[/b]文件的内容仅有“[/b]Linux[/b]”了。[/b][/b][/align]
[align=left]④ [/b]用[/b]chattr[/b]命令开启[/b]/mnt/tmp/file1[/b]文件的永恒不变特殊属性(即:+[/b]i[/b]参数![/b] [/b])。[/b][/b][/align]
[align=left]⑤ [/b]再次用[/b]lsattr[/b]查看[/b]/mnt/tmp/file1[/b]的特殊属性,当前的确开启了[/b]i[/b]的特殊属性。[/b][/b][/align]
[align=left]⑥ [/b]开启了[/b]/mnt/tmp/file1[/b]的[/b]i[/b]特殊属性,故[/b]RHEL[/b]会显示“[/b]permission denied([/b]拒绝不符权限的操作[/b])[/b]”的错误信息。即无法覆盖[/b]/mnt/tmp/file1[/b]文件的内容。[/b][/b][/align]
[align=left]⑦ [/b]用[/b]cat[/b]命令查看只有“[/b]Linux[/b]”。[/b][/b][/align]
[align=left]3.1.4多重读取控制清单[/align]
[align=left] [/b]以往,每一个文件只能设置一条权限,而[/b]UNIX[/b]系统的权限只有[/b]3[/b]组:拥有者、拥有群组和其他人,意即只能针对文件的拥有者、拥有群组或者其他人设置权限,这就限制[/b]RHEL[/b]的功能。[/b][/b][/align]
[align=left] eg [/b]:[/b]Boss[/b]希望只有[/b]koma[/b]与[/b]paul[/b]两个人可以读取、写入[/b]/data/file1[/b],而[/b]users[/b]群组的成员只能读取,其他人无法读取。作为系统管理员的你,此时,只能告诉你的老板:对不起,[/b]RHEL[/b]无法满足你的要求。(你想想,你的老板此时如何想???哈……哈……)[/b][/b][/align]
[align=left] [/b]没事!下面接着看看,为了解决上述问题,[/b]RHEL[/b]在[/b]ext2[/b]中操作[/b]POSIX[/b]的多重读取控制清单([/b]MACL[/b])能力,这样就能为[/b]ext2[/b]文件系统中的每一个文件设置一条以上的权限数据,以加强[/b]RHEL[/b]权限主功能。[/b][/align]
[align=left][/b][/b] [/align][/b][/b]本文出自 “beyondhedefang” 博客,转载请与作者联系!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: