Linux shell编程学习笔记41:lsblk命令

边缘计算的挑战和机遇

边缘计算面临着数据安全与隐私保护、网络稳定性等挑战,但同时也带来了更强的实时性和本地处理能力,为企业降低了成本和压力,提高了数据处理效率。因此,边缘计算既带来了挑战也带来了机遇,需要我们不断地研究

0 前言

前几节学习我们均涉及到磁盘和文件存储,今天我们研究与块设备有关的命令。

1 lsblk命令的功能和格式

我们可以使用命令 lsblk --help命令 查看它的用法:

purpleEndurer @ bash $ lsblk --help

Usage:
 lsblk [options] [<device> ...]

Options:
 -a,--all            print all devices
 -b,--bytes          print SIZE in bytes rather than in human readable format
 -d,--nodeps         don't print slaves or holders
 -D,--discard        print discard capabilities
 -e,--exclude <list> exclude devices by major number (default: RAM disks)
 -I,--include <list> show only devices with specified major numbers
 -f,--fs             output info about filesystems
 -h,--help           usage information (this)
 -i,--ascii          use ascii characters only
 -m,--perms          output info about permissions
 -l,--list           use list format output
 -n,--noheadings     don't print headings
 -o,--output <list>  output columns
 -p,--paths          print complate device path
 -P,--pairs          use key="value" output format
 -r,--raw            use raw output format
 -s,--inverse        inverse dependencies
 -t,--topology       output info about topology
 -S,--scsi           output info about SCSI devices

 -h,--help     display this help and exit
 -V,--version  output version information and exit

Available columns (for --output):
        NAME  device name
       KNAME  internal kernel device name
     MAJ:MIN  major:minor device number
      FSTYPE  filesystem type
  MOUNTPOINT  where the device is mounted
       LABEL  filesystem LABEL
        UUID  filesystem UUID
   PARTLABEL  partition LABEL
    PARTUUID  partition UUID
          RA  read-ahead of the device
          RO  read-only device
          RM  removable device
       MODEL  device identifier
      SERIAL  disk serial number
        SIZE  size of the device
       STATE  state of the device
       OWNER  user name
       GROUP  group name
        MODE  device node permissions
   ALIGNMENT  alignment offset
      MIN-IO  minimum I/O size
      OPT-IO  optimal I/O size
     PHY-SEC  physical sector size
     LOG-SEC  logical sector size
        ROTA  rotational device
       SCHED  I/O scheduler name
     RQ-SIZE  request queue size
        TYPE  device type
    DISC-ALN  discard alignment offset
   DISC-GRAN  discard granularity
    DISC-MAX  discard max bytes
   DISC-ZERO  discard zeroes data
       WSAME  write same max bytes
         WWN  unique storage identifier
        RAND  adds randomness
      PKNAME  internal parent kernel device name
        HCTL  Host:Channel:Target:Lun for SCSI
        TRAN  device transport type
         REV  device revision
      VENDOR  device vendor

For more details see lsblk(8).
purpleEndurer @ bash $ 

1.1 lsblk命令的功能

lsblk命令的功能是查看系统中硬盘,闪存盘,CD-ROM等块设备的信息,包括这些设备之间的依赖关系。

lsblk命令来源于list block devices的缩写。

1.2 lsblk命令的格式

 lsblk [选项] [<设备> ...]

1.2.1 选项及功能

选项 功能
-a 或 --all 显示所有设备信息
-b 或 --bytes 显示以字节为单位的设备大小
-d 或 --nodeps 不显示分区的详细信息
-D 或 --discard 打印丢弃功能
-e 或 -exclude 排除指定设备 (默认: 内存盘:RAM disks)
-f 或 --fs 显示文件系统信息
-h 或 --help 显示使用帮助信息
-i 或 --ascii 仅使用字符
-I 或 --include 仅显示具有指定主编号的设备
-l 或 --list 使用列表格式显示
-m 或 --perms 显示权属信息
-n 或 --noheadings 不显示标题
-o 或 --output 输出指定列信息
-p 或 --paths 输出设备的完整路径
-P 或 --pairs 使用key=value格式显示信息
-r 或 --raw 使用原始格式显示信息
-s 或 --inverse 反向依赖关系
-S 或 --scsi 输出SCSI设备信息
-t 或 --topology 显示拓扑结构信息
-V或--v或--version 显示版本信息

 1.2.2 可选信息列表

可选信息列表名 含义
ALIGNMENT 对齐偏移
DISC-ALN 废弃对齐偏移
DISC-GRAN 废弃粒度
DISC-MAX 废弃最大字节
FSTYPE 文件系统类型
GROUP 组名称
KNAME 内部内核设备名称
LABEL 文件系统标签
LOG-SEC 逻辑扇区大小
MAJ:MIN 主要:次要设备编号
MIN-IO 最小 I/O 大小
MODE 设备节点权限
MODEL 设备标识符
MOUNTPOINT 设备挂载点
NAME 设备名称
OPT-IO 最佳 I/O 大小
OWNER 用户名
PARTLABEL 分区标签
PARTUUID 分区UUID
PHY-SEC 物理扇区大小
RA 预读设备
RM 可移动设备
RO 只读设备
ROTA 旋转装置
RQ-SIZE 请求队列大小
SCHED I/O 调度程序名称
SERIAL 磁盘序列号
SIZE 设备的容量大小
STATE 设备的状态
TYPE 设备类型
UUID 文件系统 UUID

2 lsblk命令使用实例

2.1 lsblk -a:显示系统中所有块设备信息

purpleEndurer @ bash $ lsblk -a
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
zram0  251:0    0        0 disk 
vda    253:0    0   40G  0 disk 
├─vda4 253:4    0   10G  0 part 
├─vda2 253:2    0  127M  0 part 
├─vda5 253:5    0 29.5G  0 part /dev/termination-log
├─vda3 253:3    0  384M  0 part 
└─vda1 253:1    0    1M  0 part 
purpleEndurer @ bash $ 

命令默认返回信息包括以下内容:

  • NAME:设备名
  • MAJ:MIN:主要/次要设备号
  • RM:是否可移动设备(0 否,1 是)
  • SIZE:设备的容量大小
  • RO:是否为只读设备(0 否,1 是)
  • TYPE:设备类型(disk 磁盘,part 分区,loop 块设备)
  • MOUNTPOINT:设备挂载点

2.2 lsblk -d 或 lsblk --nodeps:不显示分区的详细信息

purpleEndurer @ bash ~ $ lsblk -a
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
zram0  251:0    0        0 disk 
vda    253:0    0   40G  0 disk 
├─vda4 253:4    0   10G  0 part 
├─vda2 253:2    0  127M  0 part 
├─vda5 253:5    0 29.5G  0 part /dev/termination-log
├─vda3 253:3    0  384M  0 part 
└─vda1 253:1    0    1M  0 part 
purpleEndurer @ bash ~ $ lsblk -d
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda  253:0    0  40G  0 disk 
purpleEndurer @ bash ~ $ lsblk -a -d
NAME  MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
zram0 251:0    0       0 disk 
vda   253:0    0  40G  0 disk 
purpleEndurer @ bash ~ $ 

2.3 lsblk -s 或 lsblk --inverse:反向显示依赖关系

purpleEndurer @ bash ~ $ lsblk -s
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda4  253:4    0   10G  0 part 
└─vda 253:0    0   40G  0 disk 
vda2  253:2    0  127M  0 part 
└─vda 253:0    0   40G  0 disk 
vda5  253:5    0 29.5G  0 part /dev/termination-log
└─vda 253:0    0   40G  0 disk 
vda3  253:3    0  384M  0 part 
└─vda 253:0    0   40G  0 disk 
vda1  253:1    0    1M  0 part 
└─vda 253:0    0   40G  0 disk 
purpleEndurer @ bash ~ $ 

2.4 lsblk -l或 lsblk --list:使用列表格式显示

purpleEndurer @ bash ~ $ lsblk -l
NAME MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda  253:0    0   40G  0 disk 
vda4 253:4    0   10G  0 part 
vda2 253:2    0  127M  0 part 
vda5 253:5    0 29.5G  0 part /dev/termination-log
vda3 253:3    0  384M  0 part 
vda1 253:1    0    1M  0 part 
purpleEndurer @ bash ~ $ 

2.5 lsblk -o 信息列表 或 lsblk --output 信息列表:显示指定列信息

例:以列表形式显示系统中所有块设备的 命名、容量大小、UUID 和序列号信息: 

purpleEndurer @ bash ~ $ lsblk -o name,size,uuid,serial -a -l
NAME   SIZE UUID SERIAL
zram0            
vda     40G      
vda4    10G      
vda2   127M      
vda5  29.5G      
vda3   384M      
vda1     1M      
purpleEndurer @ bash ~ $ 

2.6 lsblk -P 或 lsblk --pairs:使用key=value格式显示信息

purpleEndurer @ bash ~ $ lsblk -P
NAME="vda" MAJ:MIN="253:0" RM="0" SIZE="40G" RO="0" TYPE="disk" MOUNTPOINT=""
NAME="vda4" MAJ:MIN="253:4" RM="0" SIZE="10G" RO="0" TYPE="part" MOUNTPOINT=""
NAME="vda2" MAJ:MIN="253:2" RM="0" SIZE="127M" RO="0" TYPE="part" MOUNTPOINT=""
NAME="vda5" MAJ:MIN="253:5" RM="0" SIZE="29.5G" RO="0" TYPE="part" MOUNTPOINT="/dev/termination-log"
NAME="vda3" MAJ:MIN="253:3" RM="0" SIZE="384M" RO="0" TYPE="part" MOUNTPOINT=""
NAME="vda1" MAJ:MIN="253:1" RM="0" SIZE="1M" RO="0" TYPE="part" MOUNTPOINT=""
purpleEndurer @ bash ~ $ 

2.7 lsblk -m 或 lsblk --perms: 显示块设备的权属信息 

purpleEndurer @ bash ~ $ lsblk -m
NAME    SIZE OWNER GROUP MODE
vda      40G             
├─vda4   10G             
├─vda2  127M             
├─vda5 29.5G             
├─vda3  384M             
└─vda1    1M             
purpleEndurer @ bash ~ $ 

返回的信息包括:设备名、容量、所有者、所属组 和 模式。

2.8 lsblk -V 或 lsblk --v 或 lsblk --version: 查看版本

purpleEndurer @ bash $ lsblk --version
lsblk from util-linux 2.23.2
purpleEndurer @ bash $ lsblk --v
lsblk from util-linux 2.23.2

注意:-v(v为小写)会是是无效参数。

原文地址:https://blog.csdn.net/Purpleendurer/article/details/135732747

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、信号(signal)、消息队列、共享内存、信号量、套接字(socket)。管道用于具有亲缘关系的进程间通信,有名管道的每个管道具有名字,使没有亲缘关系的进程间也可以通信。信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别对整个系统的性能做统计,而进程级别则具体到进程,为每个进程维护统计信息。&#xD;&#xA;&#xD;&#xA;按实现原理分,可分为基于计数器和跟踪以及剖析。含义如下:&#xD;&#xA;&#xD;&#xA;计数器:内核维护的统计数据,通常为无符号整型,用于对发生的事件计数,比如,网络包接收计数器,磁
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书验证,详细追踪整个交互过程,可用于调用网络后端接口,诊断http和https网络服务故障。
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满、fd泄漏等问题。命令包括ping、fping、tcpdump、lsof、netstat、/proc/$pid/fd、du、grep、traceroute、dig。
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的进程数目,用uptime查看到负载很高,既有可能是CPU利用率高,也可能是大量在等待io的进程导致,用mpstat查看每个CPU的使用情况,查看CPU的使用率或者CPU花在等待io的时间,接着用pidstat定位具体的进程
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线程切换及中断切换,进程切换的开销较大,除了需要保存寄存器和程序计数器中的值还需保存全局变量、栈等到内存中,以便下次运行恢复,而同一进程中的线程切换开销会小很多,只需更新寄存器和线程独有的栈,共享资源如打开的文件、全局变量等无需切换,当硬件中
1.top命令 作用:该命令可以按CPU使用.内存使用和执行时间对任务进行排序,常用来监控系统中占用CPU或内存较高的程序及CPU和内存的负载。 默认视图: 当想看系统负载时,可观察汇总的%CPU中的us用户进程和sy系统进程是否占用CPU很高,相加接近100%就说明占用很高了,有些程序可能得不到及
文章浏览阅读1.8k次,点赞63次,收藏54次。Linux下的目录权限!!!粘滞位!!!超详解!!!
文章浏览阅读1.6k次,点赞44次,收藏38次。关于Qt的安装、Windows、Linux、MacBook_mack book 安装qt
本文介绍了使用shell脚本编写一个 Hello
文章浏览阅读1.5k次,点赞37次,收藏43次。【Linux】初识Linux——了解操作系统的发展历史以及初次体验Linux编程环境
文章浏览阅读3k次,点赞34次,收藏156次。Linux超详细笔记,个人学习时很认真的记录的,觉得好的麻烦点个赞。
文章浏览阅读6.8k次,点赞109次,收藏114次。【Linux】 OpenSSH_9.3p1 升级到 OpenSSH_9.5p1(亲测无问题,建议收藏)_openssh_9.5p1
文章浏览阅读3.5k次,点赞93次,收藏78次。初识Linux中的线程,理解线程的各种概念,理解进程地址空间中的页表转换,介绍pthread线程库并理解线程库!
文章浏览阅读863次。出现此问题为Linux文件权限问题,解决方案为回到引擎目录执行命令。输入用户密码后运行./UnrealEditor。_increasing per-process limit of core file size to infinity.
文章浏览阅读2.9k次。使用文本编辑器:打开CSV文件,并使用文本编辑器(如Notepad++、Sublime Text、Visual Studio Code等)来查看文件的字符编码格式。通常在编辑器的底部状态栏或设置中可以找到当前编码的显示。请注意,上述方法并非绝对准确,特别是当文件没有明确的编码标识时。因此,如果你发现CSV文件在不同的工具或方法中显示不同的编码格式,可能需要进行进一步的分析和判断,或者尝试使用不同的编码转换方法。该命令将输出文件的MIME类型和编码信息。使用命令行工具:在命令行中,你可以使用。_shell读取csv文件逐行处理
本文介绍了如何在Linux系统中升级gcc版本,以便更好地支持C++11及以上版本的新特性。通过升级gcc,可以提升编译器的功能和性能,获得更好的开发体验。详细的步骤和方法请参考原文链接。
文章浏览阅读4.4k次,点赞6次,收藏19次。Mosquitto是一个开源的MQTT消息代理服务器。MQTT是一个轻量级的、基于发布/订阅模式的消息传输协议。 mosquitto的安装使用比较简单,可以方便的来进行一些测试。_linux mosquitto
文章浏览阅读7.2k次,点赞2次,收藏12次。Linux中,用于根目录下有一个.ssh目录,保存了ssh相关的key和一些记录文件。_~/.ssh/
文章浏览阅读4.5k次,点赞5次,收藏18次。首先需要安装 snmp ,使用下面的命令进行安装安装完毕之后,使用下面的命令查看是否安装成功当命令行显示如图即为安装成功。_snmp工具