Linux: 磁盘状态观察命令lsblk、blkid

相关文章

Linux:chgrp、chown、chmod权限属性更改指令

Linux:df、du容量查询指令


目录

1.lsblk 列出系统中所有的磁盘及分区情况

2.blkid 列出设备的UUID等参数


        有时我们在磁盘规划前会想要确定一下当前系统的文件系统或磁盘分区情况。 这时,就有几个命令可以供选择,通过本文,可以学习这些命令的使用。

1.lsblk 列出系统中所有的磁盘及分区情况

        lsblk是list block device的缩写,可以列出所有块设备(存储设备),下面来看以下它的使用。

        用法:lsblk [选项] [<设备> ...]

        选项:

-a, --all 打印所有设备
 -b, --bytes 以字节为单位而非易读的格式来打印 SIZE
-d, --nodeps 不打印从属设备(slave)或占位设备(holder),即不列出分区
-D, --discard 打印时丢弃能力
-e, --exclude <列表> 根据主设备号排除设备(默认:内存盘)
-I, --include <列表> 只显示有指定主设备号的设备
-f, --fs 同时输出文件系统信息
-h, --help 显示帮助信息(此信息)
-i, --ascii 只使用 ascii 字符,而不使用复杂的编码
-m, --perms 同时输出设备文件的权限信息
-l, --list 使用列表格式的输出
-n, --noheadings 不打印标题
-o, --output <列表> 输出列
-p, --paths 打印完整设备路径,而不只是设备文件名
 -P, --pairs  使用 key=“value” 输出格式
-r, --raw 使用原生输出格式
-s, --inverse 以反向的顺序打印依赖项目
-t, --topology 输出拓扑信息,包括磁盘阵列机制和预读写的数据量等
-S, --scsi 输出有关 SCSI 设备的信息
-V, --version 输出版本信息并退出

       

        输出列(用于 --output):

NAME 设备名
KNAME 内核设备名
MAJ:MIN 主/次设备号
FSTYPE 文件系统类型
MOUNTPOINT 挂载点
LABEL 文件系统标签
UUID 文件系统UUID
PARTLABEL 磁盘分区标签
PARTUUID 磁盘分区UUID
RA 预读取设备
RO 只读设备
RM 可移除设备
MODEL 设备标识符
SERIAL 磁盘序列号
SIZE 设备大小
STATE 设备状态
OWNER 所属用户名
GROUP 所属组名
MODE 设备节点权限
ALIGNMENT 对齐偏移
MIN-IO 最小I/O大小
OPT-IO 最优I/O大小
PHY-SEC 物理扇区大小
LOG-SEC 逻辑扇区大小
ROTA 可旋转磁盘
SCHED I/O调度器名
RQ-SIZE 请求队列大小
TYPE 设备类型
DISC-ALN discard对齐偏移
DISC-GRAN discard操作的最小单元
DISC-MAX 被丢弃的最大字节数(SSD)
DISC-ZERO 忽略零数据
WSAME 设备在单个write-same命令里能够写入的最大字节数
WWN 唯一存储标识符
RAND 增加随机性
PKNAME 内部父内核设备文件名
HCTL Host:Channel:Target:Lun for SCSI
TRAN 设备传输类型
REV 设备修订
VENDOR 设备供应商

        

        示例

        从以上输出我们可以看到,目前系统主要有一个sr0和sda设备,而sda设备下又有6 个分区,其中sda3分区又使用LVM分成了三个区,存在三个虚拟设备。

2.blkid 列出设备的UUID等参数

        使用lsblk -f也可以完成这个功能,但blkid更加方便,无需去查选项。UUID是已格式化的文件系统所拥有的全局唯一标识符,所以这个标识符可以用来代表这个分区或文件系统。注意,这个命令只有root有权限执行。

        用法:

        blkid -L label | -U uuid

        blkid [-dghlv] [-c file] [-o format] [-s tag] [-t NAME=value] [device ...]

        blkid -p [-O offset] [-o format] [-S size] [-s tag] [-n list] [-u list] device ...

        blkid -i [-o format] [-s tag] device ...

        选项:

-c <file> 从<file>读取,而不是从默认
的缓存文件读取(-c /dev/null表示没有缓存)
-d 不要编码非打印字符
-h 打印此页面并退出
-g 在blkid缓存上执行垃圾收集以移除
不再存在的设备。
-o <format> 输出格式;可以是其中之一:
value, device, export or full(默认::full)
-k 列出所有已知的文件系统和RAIDs并退出。
-s <tag> 显示指定的标签(默认显示所有标签)
-t <token> 找到有特定符号的设备
-l 只查找第一个使用-t指定符号的设备
-L <label> 将LABEL转换为设备名称
-U <uuid>

将UUID转换为设备名称

-V 打印版本并退出
<dev>

指定搜索设备(默认为所有设备)

-p 低层次超级区块探测(绕过缓存)
-i 收集有关I/O限制的信息
-S <size> 覆盖设备大小
-O <offset> 在给定偏移处进行探测
-u <list>  根据用途进行过滤(例如-u filesystem,raid)
-n <list> 

根据文件系统类型进行过滤(例如-n vfat,ext3)

        示例     
                
                   
                   
                  
                  
             
           
                   
               

                   

                
               
                   

      
           

猜你喜欢

转载自blog.csdn.net/weixin_45791458/article/details/129923894