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

本文分析了边缘计算在技术层面的挑战和实际应用中的机遇,重点关注数据安全、网络稳定性和lsblk命令在管理块设备中的作用。
摘要由CSDN通过智能技术生成

边缘计算的挑战和机遇

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

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请求队列大小
SCHEDI/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为小写)会是是无效参数。

  • 43
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 46
    评论
Linux Shell命令学习是指学习和掌握Linux操作系统中的命令行界面的使用。在Linux中,Shell是一种解释性的编程语言,通过Shell命令可以完成各种系统管理和文件操作的任务。以下是一些学习Linux Shell命令的方法和步骤: 1. 熟悉基本命令:首先要学习一些常用的基本命令,如ls、cd、mkdir、rm等。这些命令用于查看文件和目录、切换目录、创建和删除目录等基本操作。 2. 学习命令的选项和参数:每个命令都有不同的选项和参数,可以通过man命令或whatis命令来查看命令的帮助文档。帮助文档中会详细介绍命令的使用方法和各个选项的含义。 3. 实践操作:通过实际操作来加深对命令的理解和记忆。可以在虚拟机或云平台上搭建一个Linux环境,然后通过终端来操作。 4. 学习管道和重定向:Shell命令可以通过管道和重定向来将多个命令连接起来,实现更复杂的操作。学习如何使用管道和重定向可以提高操作效率。 5. 学习Shell脚本编程Shell脚本是一种将多个命令组合在一起执行的脚本语言。学习Shell脚本编程可以帮助你自动化一些重复性的任务,提高工作效率。 总之,学习Linux Shell命令需要不断实践和探索,建议通过阅读相关文档和资料,多动手实践来提高自己的技能水平。希望以上信息对你有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Linux shell 命令学习 大全](https://blog.csdn.net/qq_44787993/article/details/106491183)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 46
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

紫郢剑侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值