Linux基础之文件系统简介及其系统管理工具
常见的文件系统
Linux文件系统: ext2, ext3, ext4, xfs, btrfs, reiserfs, jfs, swap
swap: 交换分区
光盘:iso9660
Windows:fat32, ntfs
Unix: FFS, UFS, JFS2
网络文件系统:NFS, CIFS
集群文件系统:GFS2, OCFS2
分布式文件系统:ceph, moosefs, mogilefs, GlusterFS, Lustre
实验环境CentOS7.2
Linux根据其是否支持"journal"功能:
日志型文件系统: ext3, ext4, xfs, ...
非日志型文件系统: ext2, vfat
Linux的文件系统的组成部分:
内核中的模块:ext4, xfs, vfat
用户空间的管理工具:mkfs.ext4, mkfs.xfs, mkfs.vfat
在正式介绍文件系统的前先说一下创建文件系统之前的格式化问题。
格式化
低级格式化:硬件制造商、分区之前划分磁道,形成簇 磁盘出厂前由厂家完成
高级格式化:分区之后对分区进行,创建文件系统
每种操作系统所设置的文件属性/权限不相同,为了存放这些所需的数据
我们常说的重装系统及格式化都是属于高级格式化层面的。本文所说的文件系统均为高级格式化后的产物。
Linux文件系统管理工具
blkid:块设备属性信息查看
命令使用格式:blkid [OPTION]... [DEVICE]
-U UUID: 根据指定的UUID来查找对应的设备
-L LABEL:根据指定的LABEL来查找对应的设备
命令演示:
[root@localhost ~]# blkid /dev/sda1 /dev/sda1: UUID="6efb8a23-bae1-427c-ab10-3caca95250b1" TYPE="xfs" [root@localhost ~]# blkid -U 6efb8a23-bae1-427c-ab10-3caca95250b1 /dev/sda1
…………………………………………………………………………………………………………
mkfs:文件系统创建工具:
mkfs - build a Linux filesystem
命令使用格式:
1、 mkfs [options] [-t type] device [size]
[ -t type] :指定要创建的文件系统类型ext4|xfs|btrfs|vfat|...|]
[options]:-L 'LABEL': 设定卷标 在创建文件系统同时指定卷标。
-f 若文件系统已存在,强制覆盖
命令演示:
[root@localhost ~]# mkfs -L 'new1' -t ext4 /dev/sdb5
mke2fs 1.42.9 (28-Dec-2013) 文件系统标签=new1 OS type: Linux 块大小=1024 (log=0) 分块大小=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 25688 inodes, 102400 blocks 5120 blocks (5.00%) reserved for the super user 第一个数据块=1 Maximum filesystem blocks=33685504 13 block groups 8192 blocks per group, 8192 fragments per group 1976 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729 Allocating group tables: 完成 正在写入inode表: 完成 Creating journal (4096 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 [root@localhost ~]# blkid /dev/sdb5 /dev/sdb5: LABEL="new1" UUID="10880486-7ad9-43de-9607-f9bc1fda1edf" TYPE="ext4"
…………………………………………………………………………………………………………
2、 mkfs.FS_TYPE /dev/DEVICE
FS_TPYE:ext4、xfs、btrfs、vfat...
命令演示:
[root@localhost ~]# mkfs.xfs -L 'new2' /dev/sdb6 mkfs.xfs: /dev/sdb6 appears to contain an existing filesystem (ext3). mkfs.xfs: Use the -f option to force overwrite. [root@localhost ~]# mkfs.xfs -f -L 'new2' /dev/sdb6 meta-data=/dev/sdb6 isize=256 agcount=4, agsize=6400 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 finobt=0 data = bsize=4096 blocks=25600, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal log bsize=4096 blocks=853, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@localhost ~]# blkid /dev/sdb6 /dev/sdb6: LABEL="new2" UUID="ed636bf6-1cee-43d1-96e2-8baa8dc29087" TYPE="xfs"
若/dev/sdb# 指定的磁盘块已经存在文件系统,执行命令mkfs会失败,若加-f,则强制将原文件系统覆盖。慎用-f。
…………………………………………………………………………………………………………
mke2fs:ext系列文件系统专用管理工具
mke2fs - create an ext2/ext3/ext4 filesystem
-t {ext2|ext3|ext4}指明要创建的文件系统类型
-b {1024|2048|4096}指明文件系统的块大小
-L 'LABEL'指明卷标
-j: 创建有日志功能的文件系统ext3
mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
-i #: 为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大小;
-N #:为数据空间创建个多少个inode;
-m #: 为管理人员预留的空间占据的百分比;
-O [^]FEATHER:开启或关闭某种特性;
命令演示:mk2fs创建ext2格式的文件系统
[root@localhost ~]# mke2fs -t ext2 /dev/sd sda sda1 sda2 sdb sdb1 sdb2 sdb5 sdb6 sdb7 [root@localhost ~]# mke2fs -t ext2 /dev/sdb7 mke2fs 1.42.9 (28-Dec-2013) 文件系统标签= OS type: Linux 块大小=1024 (log=0) 分块大小=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 25688 inodes, 102400 blocks 5120 blocks (5.00%) reserved for the super user 第一个数据块=1 Maximum filesystem blocks=67371008 13 block groups 8192 blocks per group, 8192 fragments per group 1976 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729 Allocating group tables: 完成 正在写入inode表: 完成 Writing superblocks and filesystem accounting information: 完成 [root@localhost ~]# blkid /dev/sdb7 /dev/sdb7: UUID="4b9767fc-a8bf-4dda-9ce1-50eb5418da04" TYPE="ext2"
指定inode数及为管理人员预留空间的百分比
[root@localhost ~]# mke2fs -N 1024 -m 3 /dev/sdb7 mke2fs 1.42.9 (28-Dec-2013) 文件系统标签= OS type: Linux 块大小=1024 (log=0) 分块大小=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 1040 inodes, 102400 blocks 3072 blocks (3.00%) reserved for the super user 第一个数据块=1 Maximum filesystem blocks=67371008 13 block groups 8192 blocks per group, 8192 fragments per group 80 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729 Allocating group tables: 完成 正在写入inode表: 完成 Writing superblocks and filesystem accounting information: 完成
…………………………………………………………………………………………………………
e2label:管理ext系列文件系统的LABEL
查看:e2label device
设定:e2label device LABEL
命令演示:设定指定块设备的卷标
[root@localhost ~]# e2label /dev/sdb7 new3 [root@localhost ~]# e2label /dev/sdb7 new3
…………………………………………………………………………………………………………
tune2fs:重新设定ext系列文件系统可调整参数的值(不进行格式化)
-l:查看指定文件系统超级块信息;super block
-L 'LABEL':修改卷标
-m #:修预留给管理员的空间百分比
-j: 将ext2升级为ext3
-O: 文件系统属性启用或禁用
-o: 调整文件系统的默认挂载选项
-U UUID: 修改UUID号;
命令演示:修改卷标
[root@localhost ~]# tune2fs -L 'another label' /dev/sdb7 tune2fs 1.42.9 (28-Dec-2013) [root@localhost ~]# blkid /dev/sdb7 /dev/sdb7: LABEL="another label" UUID="a57b2116-d72b-48d2-a648-bb6d2d5487ac" TYPE="ext2"
升级ext2到ext3
[root@localhost ~]# tune2fs -j /dev/sdb7 tune2fs 1.42.9 (28-Dec-2013) Creating journal inode: 完成 [root@localhost ~]# blkid /dev/sdb7 /dev/sdb7: LABEL="another label" UUID="a57b2116-d72b-48d2-a648-bb6d2d5487ac" SEC_TYPE="ext2" TYPE="ext3"
…………………………………………………………………………………………………………
dumpe2fs:
-h:查看超级块信息等同于tune2fs -l
命令演示:
[root@localhost ~]# dumpe2fs -h /dev/sdb7 dumpe2fs 1.42.9 (28-Dec-2013) Filesystem volume name: another label Last mounted on: <not available> Filesystem UUID: a57b2116-d72b-48d2-a648-bb6d2d5487ac Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype sparse_super Filesystem flags: signed_directory_hash Default mount options: user_xattr Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 1040 Block count: 102400 Reserved block count: 3072 Free blocks: 96568 Free inodes: 1029 First block: 1 Block size: 1024 Fragment size: 1024 Reserved GDT blocks: 256 Blocks per group: 8192 Fragments per group: 8192 Inodes per group: 80 Inode blocks per group: 10 Filesystem created: Sun Aug 21 20:11:13 2016 Last mount time: n/a Last write time: Sun Aug 21 20:52:01 2016 Mount count: 0 Maximum mount count: -1 Last checked: Sun Aug 21 20:11:13 2016 Check interval: 0 (<none>) Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 128 Journal inode: 8 Default directory hash: half_md4 Directory Hash Seed: 3e1f3581-59c7-41b3-bd4f-d262e3ce026e Journal backup: inode blocks Journal features: (none) 日志大小: 4113k Journal length: 4096 Journal sequence: 0x00000001 Journal start: 0
…………………………………………………………………………………………………………
fsck:check and repair a Linux file system检查修复Linux文件系统
因进程意外中止或系统崩溃等 原因导致定稿操作非正常终止时,可能会造成文件损坏;此时,应该检测并修复文件系统; 建议,离线进行;
-t fstype:指明文件系统类型;比如:fsck -t ext4 = fsck.ext4
-a:无须交互而自动修复所有错误;
-r:交互式修复;
Note: FS_TYPE一定要与分区上已经文件类型相同;
…………………………………………………………………………………………………………
e2fsck:ext系列文件专用的检测修复工具
-y:自动回答为yes;
-f:强制修复;
总结
文件系统管理工具
通用:mkfs、blkid、fsck
ext系列文件系统专用工具:mke2fs、dumpe2fs、tune2fs、e2label、e2fsck
简要比较两种类型的命令
[root@localhost ~]# dumpe2fs /dev/sda1 dumpe2fs 1.42.9 (28-Dec-2013) dumpe2fs: Bad magic number in super-block 当尝试打开 /dev/sda1 时 找不到有效的文件系统超级块. [root@localhost ~]# blkid /dev/sda1 /dev/sda1: UUID="6efb8a23-bae1-427c-ab10-3caca95250b1" TYPE="xfs"

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
HAProxy+Varnish+LNMP实现高可用负载均衡动静分离集群部署
HAProxy高可用负载均衡集群部署 基本信息: 系统平台:VMware WorkStation 系统版本: CentOS Linux release 7.2.1511 (Core) 内核版本: 3.10.0-327.el7.x86_64 集群架构: 前端:HAProxy 1、虚拟FQDN:www.simpletime.net 2、VIP:192.168.39.1;DIP:172.16.39.50 3、调度服务器:Varnish1、Varnish2 4、调度算法:URL_Hash_Consistent 5、集群统计页:172.16.39.50:9091/simpletime?admin 缓存服务器:Varnish 1、VarnishServer1:172.16.39.14:9527 2、VarnishServer2:172.16.39.15:9527 3、开启健康状态探测,提供高可用 4、负载均衡后端Web服务器组 5、动静分离后端服务器,并动静都提供负载均衡效果 后端服务器: StaticServer...
- 下一篇
运维监控平台之ganglia
1、ganglia简介 Ganglia 是一款为 HPC(高性能计算)集群而设计的可扩展的分布式监控系统,它可以 监视和显示集群中的节点的各种状态信息,它由运行在各个节点上的 gmond 守护进程来采 集 CPU 、内存、硬盘利用率、 I/O 负载、网络流量情况等方面的数据,然后汇总到 gmetad 守护进程下,使用 rrdtool 存储数据,最后将历史数据以曲线方式通过 PHP 页面呈现。 Ganglia 的特点如下: 良好的扩展性,分层架构设计能够适应大规模服务器集群的需要 负载开销低,支持高并发 广泛支持各种操作系统( UNIX 等)和 cpu 架构,支持虚拟 2、ganglia组成 Ganglia 监控系统有三部分组成,分别是 gmond、 gmetad、 webfrontend,作用如下。 gmond: 即为 ganglia monitoring daemon,是一个守护进程,运行在每一个需要监测 的节点上,用于收集本节点的信息并发送到其他节点,同时也接收其他节点发过了 的数据,默认的监听端口为 8649。 gmetad: 即为 ganglia meta daemo...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7设置SWAP分区,小内存服务器的救世主
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS关闭SELinux安全模块
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题