执行时lsblk -lno TYPE $DEVICE
,我见过类似的类型磁盘,加密,部分,linux_raid_成员,环形,可能还有其他。我正在编写需要解释此值的 Bash 脚本。我已检查页面man
,lsblk
但找不到其中可能的类型列表。所有可能的值是什么?
答案1
看着lsblk 实现, 有可能:
- 第 406-407 行(设备为分区)-‘part’
- 第 409-433 行(设备是设备映射器 - dm)- 'lvm'、'crypt'、'dmraid'、'mpath'、'path'、'dm'(列在第 413 行)
- 第 433-435 行(设备为循环设备)-‘循环’
- 第 436-442 行(设备是多个设备 - md(raid))- 'md'、'linear'、'raid0'、'raid1'、'raid4'、'raid5'、'raid10'、'multipath'(有关 md 级别的其他信息来自https://linux.die.net/man/4/md)
- 442-451 行(否则 - scsi 设备)- '磁盘'、'磁带'、'打印机'、'处理器'、'蠕虫'、'rom'、'扫描仪'、'mo-disk'、'changer'、'comm'、'raid'、'enclosure'、'rbc'、'osd'、'no-lun'(来自https://github.com/karelzak/util-linux/blob/master/lib/blkdev.c#L325-L362)
因此所有可能的选项是 :part
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,和lvm
crypt
dmraid
mpath
path
dm
loop
md
linear
raid0
raid1
raid4
raid5
raid10
multipath
disk
tape
printer
processor
worm
rom
scanner
mo-disk
changer
comm
raid
enclosure
rbc
osd
no-lun
您提到您曾见过crypto
– 那可能是crypt
但也不是crypto
。
您还提到linux_raid_member
- 这是一种文件系统类型(lsblk 的不同列),从这里的示例中可以看出:http://www.fibrevillage.com/storage/53-lsblk-command-examples