linux文件系统
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux文件系统相关的知识,希望对你有一定的参考价值。
文件系统
文件系统分类
根据其是否支持"journal"功能:日志型文件系统: ext3, ext4, xfs, ...
非日志型文件系统: ext2, vfat
文件系统的组成部分:
内核中的模块:ext4, xfs, vfat
用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat
Linux的虚拟文件系统:VFS
查前支持的文件系统:cat /proc/filesystems
创建文件系统
mkfs
命令用于在设备上(通常为硬盘)创建Linux文件系统。mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。
#文件系统创建命令#
mkfs (选项) (参数)
选项:
fs: 指定建立文件系统时的参数;
-t <文件系统类型>: 指定要建立何种文件系统;
-v: 显示版本信息与详细的使用方法;
-V: 显示简要的使用方法;
-c: 在制做档案系统前,检查该partition是否有坏轨
(1) # mkfs.FS_TYPE /dev/DEVICE
ext4
xfs
btrfs
vfat
(2) # mkfs -t FS_TYPE /dev/DEVICE
# mkfs -t FS_TYPE -L ‘LABEL‘ /dev/DEVICE
设定卷标
示例:
一、 创建一个 XFS 文件系统(如果 XFS 格式化程序发现分区上已有一个文件系统,那么它将会通知您。还要注意的一点是,XFS 格式重新指定了 UUID)
mkfs -t xfs -i size=512 /dev/sda5
二、创建一个ext4分区
mkfs -t ext4 -L IAN-USB32 /dev/sdc1
(使用 mkfs 的 -L 选项为分区贴上标签,然后使用 blkid 命令显示 GUID)
创建ext文件系统
mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
mke2fs
mke2fs:ext系列文件系统专用管理工具,被用于创建磁盘分区的“etc2/etc3”文件系统。
命令参数:
1、-t {ext2|ext3|ext4} 指定文件类型
【mke2fs -t ext4 /dev/sdb5】
2、-b {1024|2048|4096} 指定块大小
【mke2fs -t ext4 -b 8192 /dev/sdb6 】
【指定块大小为8192会提示,块值设置太大了,我们直接输入 ‘y’ 强制格式化,你还可以尝试指定更大的数字。】
3、-L ‘LABEL‘ 设定卷标
4、-j: 相当于 -t ext3
-i #: 为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大 小
-N #:指定分区中创建多少个inode
-I 一个inode记录占用的磁盘空间大小,128---4096
-m #: 默认5%,为管理人员预留空间占总空间的百分比
-O FEATURE[,...]:启用指定特性
-O ^FEATURE:关闭指定特性,
设备文件:指定要创建的文件系统的分区设备文件名;
块数:指定要创建的文件系统的磁盘块数量。
文件系统标签
指向设备的另一种方法与设备无关
blkid 块设备属性信息查看
blkid [OPTION]... [DEVICE]
-U UUID: 根据指定的UUID来查找对应的设备
-L LABEL:根据指定的LABEL来查找对应的设备
e2label:管理ext系列文件系统的LABEL
# e2label DEVICE [LABEL]
findfs
findfs :查找分区
findfs [options] LABEL=<label> 根据卷标查询文件系统
findfs [options] UUID=<uuid>根据UUID查询文件系统
tune2fs
tune2fs:重新设定ext系列文件系统可调整参数的值
-l: 查看指定文件系统超级块信息;super block( 超级块对于一个独立的文件系 统。保存文件系统的类型、大小、状态等)
-L ‘LABEL‘:修改卷标
-m #:修预留给管理员的空间百分比
-j: 将ext2升级为ext3
-O: 文件系统属性启用或禁用, –O ^has_journal
-o: 调整文件系统的默认挂载选项,–o ^acl
-U UUID: 修改UUID号
例子:-U 的参数如果为 clear 表示清除档案系统的 UUID
更改设备为指定的uuid
-U 的参数如果为 random 表示直接产生一个随意的新 UUID:
-U 的参数如果为 time 表示直接依当前时间产生一个新的 UUID:
设置强制检查前文件系统可以挂载的次数
tune2fs -c 30 /dev/hda1
关闭强制检查挂载次数限制
tune2fs -c -l /dev/hda1
10天后检查
tune2fs -i 10 /dev/hda1
1天后检查
tune2fs -i 1d /dev/hda1
3周后检查
tune2fs -i 3w /dev/hda1
半年后检查
tune2fs -i 6m /dev/hda1
禁用时间检查
tune2fs -i 0 /dev/hda1
调整/dev/hda1分区的保留空间为40000个磁盘块
tune2fs -r 40000 /dev/hda1
调整/dev/hda1分区的保留空间为10%
tune2fs -m 10 /dev/hda1
设置/dev/hda1挂载选项,启用Posix Access Control Lists和用户指定的扩展属性
tune2fs -o acl,user_xattr /dev/hda1
开机取消自检
tune2fs -l /dev/sdb1 | grep -E ‘Maximum mount count:|Check interval‘
tune2fs -i 0 -c 0 /dev/sdb1
dumpe2fs:查看文件系统信息:superblock信息及block group信息
-h: 不显示block group而只显示superblock 与tune2fs -l一致
dumpe2fs -h = tune2fs -l
文件系统检测和修复
条件:
1)常发生于死机或者非正常关机之后
2) 挂载为文件系统标记为“no clean”
注意:一定不要在挂载状态下修复
fsck: File System Check
fsck.FS_TYPE
fsck -t FS_TYPE
-p: 自动修复错误
-r: 交互式修复错误
FS_TYPE一定要与分区上已经文件类型相同
e2fsck:ext系列文件专用的检测修复工具
-y:自动回答为yes
-f:强制修复
以上是关于linux文件系统的主要内容,如果未能解决你的问题,请参考以下文章