linux 下的逻辑卷(LVM)
Linux 系统中的每一个分区都是一个文件系统。
本文引用地址://m.amcfsurvey.com/article/201610/305553.htm文件系统就是指对存在物理空间上的文件的一种管理软件(个人认为)
Linux 2.4 内核以后,开始支持大量的文件系统;
日志文件系统; ext3 ReiserFS XFSJFS
Linux2.4内核以后支持的文件系统有; JFS , ReiserFs, ext, ext2, ext3, , ISO9660, XFS, Minx, MSDOS, UMSDOS, VFAT, NTFS, HPFS, NFS, SMB, SysV, PROC 等等
Ext2/ext3 采用block+ innode 方式来存放文件
Ext2/ext3 有一个空间被称为超级块
(superblock) 存放文件系统的原数据
包括;卷标名, block数, inode 数 等等
Inode是存放文件元数据,包括文件权限,属性,更改时间等数据
Inode 就是一个索引节点, 这个inode纪录文件的属性,位置等信息。
每个inode都有一个号码,称为索引节点号(inode号)
Linux 文件系统将索引节点号和文件名同时保存在目录中。所以目录只是将文件的名称和他的索引点号结合在一起的一张表,目中的每个文件名和索引点号称为一个连接。
一个文件只有一个对应的inode号,但是一个inode可以有多个文件名与其对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问他。
书上说ext2不是日志文件系统
从ext2 变成ext3不需要格式化,用tune2fs 就可以
从ext3 变成ext2 可以不用作任何的改动
Ext3 特性;
1. 高效性; 非法关机后恢复ext3文件系统只要10秒左右
2. 数据完整性;避免非法关机对数据完整性的破坏
3. 文件系统的速度; 对磁盘驱动器读写进行了优化
4. 数据的转化; ext2-ext3, ext3-ext2
5. 多种日志模式;对所有数据进行日志纪录模式,只对metadata进行日志纪录,而不对数据进行日志纪录
Data=journal 所有数据日志纪录模式
Data=writeback 对metadata日志纪录模式
提示metadata是定义文件系统中的数据,即数据中的数据
Root可以根据实际的工作情况来定义,在系统的工作速度和数据完整性来选择
将一个新的分区格式化成ext3文件系统
# mke2fs -j /dev/hda8
将ext2 转换成ext3文件系统
# tune2fs -j /dev/hda9
提示; 将ext2文件系统转换成ext3时,不需要将分区卸载。直接转换就可以。不要忘记把/etc/fstab 里的ext2改成ext3
用e2fsck 修复ext3文件系统
1. # umount /dev/hda8 先卸载该分区.
2.#e2fsck -fy /dev/hda8 修复该分区
Reiserfs文件系统
1997 年 hans reiser 把reserfs文件系统在网上公布
Reserfs 比ext2fs要快的的多
当前reserfs 只能在intel结构体系上使用
Reiserfs 文件系统一直被用于在高端的unix系统上
Reiserfs 特点;
1. 先进的日志机制
Reiserfs 日志机制在每个实际数据要修改之前把相应的日志写入到磁盘空间,这样提高数据的安全性
2. 高效的磁盘利用率
Reiserfs对一些小的文件不分配inode。而是将这些小文件打包,存放在同一个磁盘块中。而其他的文件系统是每个文件都要占用一个block块。这意味着如果有1000个小文件,那么就要占用1000个block。这样非常浪费磁盘空间。
3. 独特的搜索方式
Reserfs基于平衡树(balanced tree)搜索,这种方式的速度要比ext2快的多。平衡树是一种高效的算法。
4. 支持海量硬盘
Reserfs可以管理上百G的数据。Rerserfs最大支持文件系统的尺寸是16TB。这非常适合企业级应用。
5. 优异的性能
Reserfs 文件系统启动X -windows的速度比ext2快2倍
文件的附加属性
# chattr +〔AadijS〕 filename 设置文件的附加属性
# lsattr filename 查看文件的附加属性
A; 当文件被改变时,文件的更改时间不变
a; 只能向该文件追加内容,不可以更改原内容
i; 文件不可以删除, 重命名, 改变内容
j; 在ext3文件系统中,次文件一定被写入日志
S; 当文件被改动,此改动会同步写入文件系统
将原ext2转换升级成ext3文件系统
# tune2fs -j /dev/hda1 这是直接转换
# mke2fs -j /dev/hda2 这是格式化转换
常见的文件系统
Minix ; linux第一个支持的文件系统,比较古老,现在每人用了
ISO9660; 标准的cdrom 文件系统
NFS ; 是sun公司推出的网络文件系统,准许多台计算机共享一个文件系统
提示; redhat linux默认是不支持ntfs 文件系统的。我们可以自己编辑kernel来让系统支持ntfs,但是可能会对数据造成损坏
常用创建文件系统工具
Mkfs 可以用于创建各种文件系统,由-t参数来指定
Mke2fs 创建ext2/ext3文件系统
# Mk2fs -j /dev/hda2
文件系统的使用
设备;就是一个具体的文件系统,可以用设备名或卷标名来表示
挂载点:必须是一个目录。当一个目录下有文件时,则在该文件系统被挂载后,原文件暂时无法访问。直到当前挂载的文件被卸载以后,才能继续访问
Mount命令参数
挂载时使用mount命令
基本格式; mount 〔-参数〕 〔设备名〕 〔挂载点〕
Mount -t 指定文件系统的类型
Umount 卸载文件系统
Mount -o loop disk1.iso 挂载.iso 文件
Mount -o 选项指定挂载文件系统时的选项。有些时候也可以/etc/fstab来指定。常用的有
ro ; 以只读的方式挂载
rw ; 以读写的方式挂载
nouser ; 使一般的用户无法挂载设备
user ; 可以让一般的用户挂载设备
配置/etc/fstab
/etc/fstab 这个文件是文件系统的挂载信息
当mount一个文件系统时如果给出的参数不全,系统会从/etc/fstab文件中读取参数来补全
当系统启动时,系统会根据这个/etc/fstab这个文件中的配置信息来自动加载文件系统
这个文件同时,还可以被fsck, dump, quotaon, swapon等程序所使用
fstab 文件的格式
评论