列出用于编写脚本的 ZFS 池的 vdev 设备名称的命令?

Ken*_*itt 2 linux zfs

我正在编写一个脚本,该脚本需要任意池的所有 vdev 中磁盘的设备名称。(我的池中 vdev 中的所有设备都是磁盘。)

zpool list -v mypoolname 似乎主要是我想要的:

$ zpool list -v mypoolname
NAME   SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
mypoolname   100G   90G  10.0G    90%  1.00x  ONLINE  -
  mirror   100G   90G  10.0G         -
    devicename1      -      -      -         -
    devicename2      -      -      -         -
Run Code Online (Sandbox Code Playgroud)

但是,确定输出的哪一行是磁盘的唯一明显方法是检查该行开头是否有四个空格。

有没有更好的,脚本安全的命令我可以运行?

小智 7

zpool list -v -H -P
Run Code Online (Sandbox Code Playgroud)
-v verbose
-P show full paths, not just the last component
-H script mode - no headings, fields separated by tab character
Run Code Online (Sandbox Code Playgroud)

这会让你更亲近。