Linux XFS文件系统描述观察及磁盘命令详解

XFS文件系统的描述数据观察

EXT 家族的 dumpe2fs 去观,而XFS 家族用 xfs_info 去观察

[[email protected] ~]# xfs_info挂载点|装置文件名

[[email protected] ~]# df - - T /boot

Filesystem      Type     1K-blocks     Used     Available     Use%     Mounted on

/dev/vda2        xfs     1038336       133704   904632        13%      /boot

没错!可以看得出来是 xfs 文件系统的!来观察一下内容吧!

[[email protected] ~]# xfs_info /dev/vda2

1    meta-data=/dev/vda2     isize=256    agcount=4, agsize=65536 blks

2                    =              sectsz=512   attr=2, projid32bit=1

3                    =              crc=0        finobt=0

4            data =              bsize=4096   blocks=262144, imaxpct=25

5                    =              sunit=0      swidth=0 blks

6        naming= version 2    bsize=4096   ascii-ci=0 ftype=0

7          log    = internal     bsize=4096   blocks=2560, version=2

8                   =              sectsz=512   sunit=0 blks, lazy-count=1

9     realtime =none          extsz=4096   blocks=0, rtextents=0

  • 第1 行里面的isize 指的是inode 的容量,每个有256bytes 这么大。至于agcount 则是前面谈到的储存区群组(allocation group) 的个数,共有4 个, agsize 则是指每个储存区群组具有65536 个block 。配合第4 行的block 设定为4K,因此整个档案系统的容量应该就是4*65536*4K 这么大!
  • 第2 行里面sectsz 指的是逻辑磁区(sector) 的容量设定为512bytes 这么大的意思。
  • 第4 行里面的bsize 指的是block 的容量,每个block 为4K 的意思,共有262144 个block 在这个档案系统内。
  • 第5 行里面的sunit 与swidth 与磁碟阵列的stripe 相关性较高。这部份我们底下格式化的时候会举一个例子来说明。
  • 第7 行里面的internal 指的是这个登录区的位置在档案系统内,而不是外部设备的意思。且占用了4K * 2560 个block,总共约10M 的容量。
  • 第9 行里面的realtime 区域,里面的extent 容量为4K。不过目前没有使用。

磁盘与目录的容量

? df:列出文件系统的整体磁盘使用量;

[[email protected] ~]# df [- - ahikHTm] [ 目 录 或文件名] ]

选项与参数:

-a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;

-k:以 KBytes 的容量显示各文件系统;

-m:以 MBytes 的容量显示各文件系统;

-h:以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;

-H:以 M=1000K 取代 M=1024K 的进位方式;

-T:连同该 partition 的 filesystem 名称 (例如 xfs) 也列出;

-i:不用磁盘容量,而以 inode 的数量来显示

 

du:评估文件系统的磁盘使用量(常用在推估目录所占容量)

[[email protected] ~]# du [- - ahskm] 文件或目录名称

选项与参数:

-a:列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。

-h:以人们较易读的容量格式 (G/M) 显示;

-s:列出总量而已,而不列出每个各别的目录占用容量;

-S:不包括子目录下的总计,与 -s 有点差别。

-k:以 KBytes 列出容量显示;

-m:以 MBytes 列出容量显示;

 

parted列出磁盘的分区表类型与分区信息

[[email protected] ~]# parted /dev/vda print

Model: Virtio Block Device (virtblk)         # 磁盘的模块名称(厂商)

Disk /dev/vda: 42.9GB                        # 磁盘的总容量

Sector size (logical/physical): 512B/512B    # 磁盘的每个逻辑/物理扇区容量

Partition Tablegpt                         # 分区表的格式 (MBR/GPT)小为 4K 最大为 1G

 

blkid列出装置的 UUID 等参数

 

lsblk列出系统上的所有磁盘列表

[[email protected] ~]# lsblk [- - dfimpt] [device]

选项与参数:

-d:仅列出磁盘本身,并不会列出该磁盘的分区数据

-f:同时列出该磁盘内的文件系统名称

-i:使用 ASCII 的线段输出,不要使用复杂的编码 (再某些环境下很有用)

-m:同时输出该装置在 /dev底下的权限数据 (rwx的数据)

-p:列出该装置的完整文件名!而不是仅列出最后的名字而已。

-t:列出该磁盘装置的详细数据,包括磁盘队列机制、预读写的数据量大小等

 

默认输出的信息详解:

NAME:就是装置的文件名啰!会省略 /dev 等前导目录!

MAJ:MIN:其实核心认识的装置都是透过这两个代码来熟悉的!分别是主要:次要装置代码!

RM:是否为可卸除装置 (removable device),如光盘、USB 磁盘等等

SIZE:当然就是容量啰!

? RO:是否为只读装置的意思

? TYPE:是磁盘 (disk)、分区槽 (partition还是只读存储器 (rom等输出

MOUTPOINT:就是前一章谈到的挂载点!

 

使用parted命令可以分辨分区表类型,『MBR 分区表使用 fdisk 分区, GPT 分区表使用 gdisk 分区!』

[[email protected] ~]# gdisk  装置名称  具体看下行

[[email protected] ~]# gdisk  /dev/vda      <==仔细看,不要加上数字喔!

Command (? for help): ?

前面省略。。。

d     te a partition                 # 删除一个分区

中间省略。。。

n     add a new partition            # 增加一个分区

省略一行

p     print the partition table         # 印出分区表 (常用)

q     quit without saving changes     # 不储存分区就直接离开 gdisk

省略部分。。。

w     write table to disk and exit     # 储存分区操作后离开 gdisk

不管你进行了什么动作,只要离开 gdisk 时按下『q』,那么所有的动作『都不会生效!』相反的, 按下『w』就是动作生效的意思。

使用的『装置文件名』请不要加上数字,因为 partition是针对『整个磁盘装置』而不是某个 partition 呢!

 

Linux XFS系统格式化命令

[[email protected] ~]# mkfs.xfs [- - b bsize] [- - d parms] [- - i parms] [ [- - l parms] [- - L label] [- - f] \ \

[ [- - r parms] 装置名称

选项与参数:

关于单位:底下只要谈到『数值』时,没有加单位则为 bytes 值,可以用 k,m,g,t,p (小写)等来解释

比较特殊的是 s 这个单位,它指的是 sector 的『个数』喔!

-b :后面接的是 block 容量,可由 512 到 64k,不过最大容量限制为 Linux 的 4k 喔!

-d :后面接的是重要的 data section 的相关参数值,主要的值有:

agcount=数值 :设定需要几个储存群组的意思(AG),通常与 CPU 有关

agsize=数值 :每个 AG 设定为多少容量的意思,通常 agcount/agsize 只选一个设定即可

file :指的是『格式化的装置是个文件而不是个装置』的意思!(例如虚拟磁盘)

size=数值 :data section 的容量,亦即你可以不将全部的装置容量用完的意思

su=数值 :当有 RAID 时,那个 stripe 数值的意思,与底下的 sw 搭配使用

sw=数值 :当有 RAID 时,用于储存数据的磁盘数量(须扣除备份碟与备用碟)

sunit=数值 :与 su 相当,不过单位使用的是『几个 sector(512bytes 大小)』的意思

swidth=数值 :就是 su*sw 的数值,但是以『几个 sector(512bytes 大小)』来设定

-f :如果装置内已经有文件系统,则需要使用这个 -f 来强制格式化才行!

-i :与 inode 有较相关的设定,主要的设定值有:

size=数值 :最小是 256bytes 最大是 2k,一般保留 256 就足够使用了!

internal=[0|1]:log 装置是否为内建?预设为 1 内建,如果要用外部装置,使用底下设定

logdev=device :log 装置为后面接的那个装置上头的意思,需设定 internal=0 才可!

size=数值 :指定这块登录区的容量,通常最小得要有 512 个 block,大约 2M 以上才行!

-L :后面接这个文件系统的标头名称 Label name 的意思!

-r :指定 realtime section 的相关设定值,常见的有:

extsize=数值 :就是那个重要的 extent 数值,一般不须设定,但有 RAID 时,

最好设定与 swidth 的数值相同较佳!最范例一:列出 /dev/vda 磁盘的相关数据

 

时间: 2024-10-08 10:28:25

Linux XFS文件系统描述观察及磁盘命令详解的相关文章

Linux下的crontab定时执行任务命令详解

Linux下的crontab定时执行任务命令详解 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为"crontab",是"cron table"的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service crond start    //启动服务 servi

Linux下的crontab定时执行任务命令详解 - 回家的流浪者 - 博客园

Linux下的crontab定时执行任务命令详解 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间. cron的配置文件称为“crontab”,是“cron table”的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service crond start    //启动服务 service crond stop 

Linux下的压缩zip,解压缩unzip命令详解及实例

Linux下的压缩zip,解压缩unzip命令 本人亲自测试总结: linux 安装unzip zip 安装命令:yum install -y unzip zip # unzip yasuo.zip 方法一: 安装命令:yum install -y unzip zip 1. 我想把一个文件abc.txt和一个目录dir1压缩成为yasuo.zip:# zip -r yasuo.zip abc.txt dir12.我下载了一个yasuo.zip文件,想解压缩: # unzip yasuo.zip

linux每日命令(30):Linux 用户及用户组相关文件、命令详解

阅读目录(Content) 一. 用户.用户组概念及其文件结构详解 二. 常用的用户.用户组shell命令 用户相关命令 useradd userdel usermod passwd 用户组相关命令 groupadd groupdel groupmod 三. 综合示例 1.建立两个用户组group1和group2,以及三个用户dennis.daniel.abigale,并且将前2个用户分配在group1用户组下,后一个分配在group2用户组下,并给dennis设置密码 2.改变abigale的

Linux下的at定时执行任务命令详解

之前说了使用crontab实现定时执行任务,假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了.一.at服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service atd start    //启动服务 service atd  stop     //关闭服务 service atd restart  //重启服务 service atd reload   //重新载入配置 service atd status   //查看服务状态

Linux下which、whereis、locate命令详解

which 命令 which 命令的作用是,在 PATH 变量指定的路径中搜索可执行文件的所在位置.它一般用来确认系统中是否安装了指定的软件. 命令格式: which 可执行文件名称 常用范例: 例一:确认是否安装了 gcc,可以使用如下命令: which gcc 例二:查看 cd 命令的位置路径,可以使用如下命令: which cd 命令可以是下面四种形式之一: 是一个可执行程序,就像我们所看到的位于目录/usr/bin 中的文件一样. 属于这一类的程序,可以编译成二进制文件,诸如用 C 和

Linux文件的默认权限与查找命令详解

今天被csdn坑了!昨晚写了一夜的博客,保存到线上草稿了!可是今天打开博客,草稿箱里也找不到,发布的文章中也找不到!作为一家专门研讨技术的网站,居然还会在技术上出现这种问题,这分明就是在打自己的脸啊! 抱怨的话不多说,现在只好重起炉灶.自认倒霉了.为就接着从文件权限管理开始说,等那天有精力了再把消失的那一段内容给补上. 文件/目录的默认权限和隐藏权限 在前面几篇博客中为也已经提过,文件/目录的基本权限有rwx,那么除了这三个基本权限,Linux使用的ext2/ext3文件系统还存在着文件/目录的

linux下的raid及mdadm的命令详解

RAID被称为廉价的冗余磁盘阵列,这是由于在早期的磁盘很小,性能差,易损坏.所以RAID主要的做法就是把多个便宜的小磁盘组合到一个磁盘组,使性能和磁盘容量都可以达到相当于昂贵的磁盘性能. 根据RAID的组合方式不同,RAID又有不同的RAID LEVEL(这个级别仅代表磁盘组合方式不同,没有上下之分), raid级别分类: *  RAID 0: 也被称为条带模式,一个文件的数据通过控制芯片发向底层芯片存储到磁盘块时,把数据的大小分成每个具有一定大小的单位存储到并行的每个磁盘对应的位置,形成一个类

【摘】linux之shutdown、halt和reboot命令详解

在重新启动Linux系统的同时把内存中的信息写入硬盘,应使用()命令实现 #shutdown -r now #halt #reboot #init3 正确答案:A   在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的. shutdown命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告信息.该命令还允许用户指定一个时间参数,可以是一个精确的时间,也可以是从现在开始的一