Linux文件系统管理

一、什么是文件系统

    我理解的文件系统就是管理磁盘分区上数据的索引信息,其实文件系统就是一种应用程序,只不过是用来维护和管理分区上的数据而已,就跟操作系统是用来管理底层硬件一样。不同的分区可以有不同的文件系统。


二、文件系统类型

    在linux系统上主要有如下类型的文件系统:

    1、ext系列的ext[2-4],其中ext2文件系统没有日志功能,ext[3-4]文件系统支持日志功能

    2、XFS文件系统,一种性能强大的日志文件系统,CentOS 7和RHEL 7在安装系统时默认使用XFS文件系统

    3、btrfs文件系统,通常读作Butter FS、Better FS或B-tree FS,一种支持写入时复制(COW:COPY ON WRITE)的文件系统,采用GPL授权,

    4、ReiserFS文件系统,也是一个日志型文件系统,对大文件和小文件有很高的处理效率。

    5、JFS(Journaling File System),由IBM创建的一种日志型文件系统。

    6、Swap,交换分区,跟Windows的虚拟内存相似,当内存不足时,可以将一部分硬盘空间虚拟成内存使用,解决内存容量不足的问题,但是速度比较慢

三、VFS虚拟文件系统

 为了支持不同的文件系统共存,和一些跨文件系统的操作,如将一个存在于EXT4格式的文件系统分区里的文件拷贝至XFS分区,这样的操作就涉及到两个不同的文件系统,

        blob.png

 而虚拟文件系统就是为协调不同文件系统进行工作的,它是内核中的一个软件层,为用户提供了一个统一的接口。深入了解请查看IBM文档库中的从文件I/O看LINUX的虚拟文件系统,连接:https://www.ibm.com/developerworks/cn/linux/l-cn-vfs/

          blob.png  


四、创建文件系统

 A、这里我使用一块空的磁盘做演示:

    1、使用fdisk命令对这块空的磁盘进行分区

    blob.png

    2、一些常用的命令

   blob.png

    3、现在我需要添加一个新的分区

blob.png

    4、查看新建的分区

    blob.png

    5、查看文件系统的ID   blob.png

    6、输入“w”保存退出

    blob.png

NOTE:新创建的分区,内核不能识别,需要使用命令通知内核重新读取硬盘分区

    7、# partx -a /dev/DEVICE或者# kpartx -a /dev/DEVICE,CentOS 5中使用# partprobe /dev/DEVICE

    blob.png

 B、创建文件系统

    1、这里我使用mkfs.FS_TYPE命令来创建一个EXT4的文件系统    blob.png

    blob.png

或者使用另一个命令

    2、# mke2fs [OPTION]… /dev/DEVICE:ext系列文件系统专用管理工具

        -t [ext2|ext3|ext4]

        -b [1024|2048|4096]:指定块大小

        -L 'LABEL':指定卷标

        -j:相当于-t ext3

        -i #:为数据空间中每多少个字节创建一个inode,此大小不应该小于block的大小

        -N #:微数据空间创建多少个inode

        -m #:为管理人员预留的空间占据的百分比

        -O FEATURE[,…]:启用指定特性

            -O ^FEATURE:关闭指定特性    blob.png


五、管理文件系统

    1、查看当前系统支持的文件系统:# cat /proc/filesystems

    blob.png

    2、查看当前系统装载在内核中的模块信息,文件系统其实就是装载在内核中的功能模块,# lsmod

    blob.png

    3、查看块设备文件的属性信息,# blkid [OPTION]… /dev/DEVICE

        -U UUID:根据指定的UUID来查找对应的设备

        -L LABEL:根据指定的LABEL来查找对应的设备  blob.png

    这是刚才我创建的分区的信息,因为在创建文件系统时没有指定LABEL所有这里没有显示,稍后我将为这个分区创建一个LABEL。

    4、重新设定EXT系列文件系统可调整参数,# tune2fs [OPTION]… /dev/DEVICE

        -l:查看指定文件系统超级块信息:super block

        -L:修改卷标

        -m #:修改预留给管理员的弓箭百分比

        -j:将ext2升级为ext3

        -O:文件系统属性启用或禁用

            has_journal:启用日志功能

            ^has_journal:关闭日志功能

        -o:调整文件系统的默认挂载选项

            acl:启用acl功能

            ^acl:关闭acl功能

        -U UUID:修改UUID号blob.png

六、文件系统检测

    1、fsck:File System Check

        # fsck.FS_TYPE

        # fsck -t FS_TYPE

            -a:自动修复错误

            -r:交互式修复错误

    NOTE:FS_TYPE一定要与分区上的文件系统类型相同

    blob.png

    2、e2fsck:ext系列文件系统专用的检测工具

        -y:自动回答为yes

        -f:强制修复

原创文章,作者:Net17_雷航,如若转载,请注明出处:http://www.178linux.com/12110

(0)
Net17_雷航Net17_雷航
上一篇 2016-03-03 09:47
下一篇 2016-03-04 16:06

相关推荐

  • 硬链接与软链接的区别

    硬链接与软连接                本文仅用于个人学习参考:         简单介绍了硬链接与软连接的区别。  &nb…

    Linux干货 2016-10-20
  • 马哥教育网络21期+第十三周练习博客

        马哥教育网络21期+第十三周练习博客 1、建立samba共享,共享目录为/data,要求:(描述完整的过程) 1)共享名为shared,工作组为magedu; 在服务器上安装samba ]# yum install samba 创建共享目录/data 启动samba的nmb和smb…

    Linux干货 2016-10-31
  • 关于man的几个重要命令

    接触Linux有很多年了,以前对于linux我觉得自己懂得的还算一般吧,可是听了马哥的关于linux的视频课程,发现自己就是一个还没入门的菜鸟,所以果断的狠心的报了马哥的网络班,拜在马哥旗下,以后就打着马哥的旗号到外面混,哈哈最初的这几天学习,因为工作和时间的等等等的关系,所以才到现在还在赶着写我的博客作业,现在就最有感触的几个命令串联一下。学习linux肯…

    Linux干货 2016-10-31
  • 第七周练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; 1.[root – gwx ~]#>fdisk /dev/sdb2.W…

    Linux干货 2016-12-11
  • Ansible Conditionals & Loops

     一、条件语句     条件判断语句,就是根据某些变量的值来控制Ansible的执行流程。控制某些主机执行某些操作与不执行某些操作。根据某些操作结果,判断是否执行其它操作等等。     Ansible的条件判断语句只有 when 语句,结合变量使用才能显示出它的价值。when的用…

    Linux干货 2015-11-21
  • sed

    简介     sed 是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主…

    Linux干货 2016-03-22

评论列表(1条)

  • stanley
    stanley 2016-03-04 17:24

    呵,赞,看的出有自己的思考在里面。知道写标签的同学都很细心,细节决定成败