RHCE033--文件系统
时间:2010-10-01 来源:twenty_four
- 用户可以用lsattr来检查文件的属性
- 系统用户可以用chattr来改变文件的属性
- [root@51cto ~]# lsattr 51cto //检查文件的属性
- [root@51cto ~]# cat 51cto
- [root@51cto ~]# lsattr 51cto
- [root@51cto ~]# mkfs -t ext2 /dev/sdb5 //把/dev/sdb5格式化,采用ext2的文件系统
- 将原ext2文件系统升级成为ext3文件系统: (注意ext3无法变回ext2)
一、文件结构
为了能在设备上储存与读取文件,我们需要在分区上创立文件系统
文件系统记录目录与文件我们称之为文件结构
linux采用的是树型结构,最上层是根目录,其他的所有目录都是从根目录出发而生成的,
每一个文件系统在Linux里都被解释成由一个根目录为起点的目录树结构。
Linux将各个文件系统挂载(mount)在系统目录树中使用。
二、文件系统
对应不同的操作系统与设备,计算机里有许许多多种文件系统
不同的文件系统存放、搜索文件的方式都有不同
Linux支持多种文件系统的读写
Linux自身最主要使用的是ext2/ext3文件系统
linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。linux会将这些分属不同
分区的、单独的文件系统按一定的方式形成一个系统的总的目录层次结构。一个操作系统的运行
离不开对文件的操作,因此必然要拥有并维护自己的文件系统。 Linux可以对多种文件系统做
读写操作,Windows的FAT16、FAT32、NTFS文件系统在Linux都可以做相应的操作。
三、ext2/ext3文件系统
ext2/ext3文件系统支持rwx权限及文件属性(attributes)。
ext2/ext3文件系统采用block+inode的方式存放文件
ext2/ext3文件系统上有一块空间被称为超级块(superblock)用于存放文件系统的元数据,
诸如卷标名、block数、inode数等等
inode存放文件的元数据,包含文件权限、属性、更改时间等等数据。
四、文件属性
在ext2/3文件系统中,对每一个文件,还提供额外的属性支持
[root@51cto ~]# touch 51cto
[root@51cto ~]# lsattr 51cto
------------- 51cto //没有任何属性
+号添加、-号去除
附加权限包括:
A:当文件被改变时,文件的更改时间不变
a:只能向此文件追加内容,不可更改原内容。
d:此文件在dump时被跳过
i:文件不可变。不能被删除、重命名、改变内容。
j:在ext3文件系统中,此文件一定会被写入日志。
S:当文件被更动,此更动会同步写入文件系统。
[root@51cto ~]# chattr +A 51cto //改变文件的属性
-------A----- 51cto
[root@51cto ~]# vim 51cto
[root@51cto ~]# cat 51cto
welcome to 51cto
[root@51cto ~]# chattr +a 51cto //改变文件的属性
[root@51cto ~]# lsattr 51cto //检查文件的属性
-----a------- 51cto
[root@51cto ~]# vim 51cto
随便输入一些内容,wq!强行保存退出,结果:
"51cto"
"51cto" E212: 无法打开并写入文件
请按 ENTER 或其它命令继续
最终只能q!退出
welcome to 51cto
[root@51cto ~]# echo "welcome to beijing" >>51cto //追加内容
[root@51cto ~]# cat 51cto
welcome to 51cto
welcome to beijing
[root@51cto ~]# echo "welcome to beijing" >51cto
-bash: 51cto: 不允许的操作 //覆盖文件内容受到拒绝
-----a------- 51cto
[root@51cto ~]# chattr +i 51cto //改变文件的属性
[root@51cto ~]# lsattr 51cto //检查文件的属性
----ia------- 51cto
[root@51cto ~]# rm 51cto
rm:是否删除有写保护的 一般文件 “51cto”? y
rm: 无法删除 “51cto”: 不允许的操作 //删除被拒绝
五、ext3文件系统
ext3文件系统即一个添加了日志功能的ext2,可与ext2文件系统无缝兼容
ext2文件系统可以通过增加日志的方式简单地升级成为ext3文件系统
使用一个日志的文件系统减少了系统崩溃后恢复文件系统所花费的时间。
因为没有必要运行fdisk来检查文件系统。
在安装时创建分区,ext3文件系统会被默认选定,且是大力推荐的。
ext3文件系统支持三种日志模式
规则(默认,仅记录元数据)
日志化(将数据象元数据一样记录入日志)
写回(只在fsck时发生)
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
120832 inodes, 481948 blocks
24097 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
59 block groups
8192 blocks per group, 8192 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@51cto ~]# tune2fs -j /dev/sdb5
tune2fs 1.39 (29-May-2006)
Creating journal inode: done
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
可以通过内存映象文件/proc/mounts 查看文件系统:
[root@51cto ~]# cat /proc/mounts
……
/dev/sdb1 /51cto ext3 ro,noexec,data=ordered 0 0
……
/dev/sdb5 /24 ext3 rw,data=ordered 0 0 //这里我刚才创建了挂载点/24
六、其他常见的文件系统
minix:古老的文件系统
msdos/fat:microsoft早年的文件系统
vfat:win95与win98采用的文件系统
ntfs:win2000使用的文件系统
iso9660:光盘使用的文件系统
ReiserFS/JFS:仍然在完善的带日志文件系统
备注:对于自动挂载的部分放在进阶二说明。
相关阅读 更多 +