列出 OpenBSD 中所有已连接的设备

列出 OpenBSD 中所有已连接的设备

如何列出 OpenBSD 上所有已连接(包括未安装)的设备?

我正在寻找类似于lsblkLinux 或camcontrol devlistFreeBSD 的东西:

# List devices on FreeBSD

$ camcontrol devlist
<VBOX HARDDISK 1.0>   at scbus0 target 0 lun 0 (ada0,pass0)
<VBOX CD-ROM 1.0>     at scbus1 target 0 lun 0 (pass1,cd0)

# List devices on Linux
$ lsblk

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
/dev/sda      8:0    0 465.8G  0 disk 
├─/dev/sda1   8:1    0  1007K  0 part 
├─/dev/sda2   8:2    0   256M  0 part /boot
├─/dev/sda3   8:3    0   9.8G  0 part [SWAP]
├─/dev/sda4   8:4    0  29.3G  0 part /
├─/dev/sda5   8:5    0  29.3G  0 part /var
├─/dev/sda6   8:6    0 297.6G  0 part /home
└─/dev/sda9   8:9    0  16.3G  0 part 
/dev/sr0     11:0    1  1024M  0 rom  

这些命令似乎都不存在或在 OpenBSD 的(默认)存储库中不可用。
甚至pciinfokldstat、 或geom都不可用。

答案1

系统控制命令可以列出连接到系统的设备。 系统控制获取或设置内核状态。

要列出您拥有的磁盘数量:

sysctl hw.diskcount

列出磁盘名称:

sysctl hw.disknames

或者sysctl -a | grep -i disk

答案2

dmesg | egrep '^(cd|wd|sd|fd). at '

答案3

lsblk是一个不错的工具,但在 OpenBSD 上不可用。还有其他方法可以实现类似的效果:

1. 显示系统上可用磁盘的名称:

sysctl hw.disknames

这会在一行上生成一个磁盘列表,以逗号分隔:

hw.磁盘名=sd0:1e212bdb8b279f47,SD1:33634e7b41dbbafb,SD3:569e3efaf6b08310

磁盘标识符在上面以粗体突出显示(用于下一步)。

2. 使用该disklabel实用程序显示有关每个磁盘的更多信息(需要以 root 身份运行):

doas disklabel -h <disk identifier>

这为您提供了有关磁盘的更多信息-h 人类可读的格式- 即兆字节、千兆字节等。

3. 查看有关已安装文件系统的信息(包括大小和可用空间)

(我知道这可能不能严格回答问题,但为了完整性我将其包括在内)

如果您已经安装了文件系统,您的磁盘将包含在显示的信息中: df -h

4. 如果仍不确定,请查看系统消息:

dmesg当检测到硬件时从内核输出消息。grep如果您仍然找不到磁盘,请使用以下命令:

dmesg | grep -i 'scsi'

答案4

您可能想要安装 smartmontools。 smartctl -i 可以为您提供有关 sysctl hw.disknames 报告的磁盘的详细信息,例如

{root@marvin:~ (local) 515} sysctl hw.disknames
hw.disknames=sd0:cb4856da548e0d52,sd1:cc3b031d5ae03c66,sd2:
{root@marvin:~ (local) 516} smartctl -i /dev/sd0c
smartctl 7.3 2022-02-28 r5338 [OpenBSD 7.3 amd64] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Marvell based SanDisk SSDs
Device Model:     SanDisk SSD PLUS 480GB
Serial Number:    221005453309
LU WWN Device Id: 5 001b44 4a54ccec2
Firmware Version: UG4004RL
User Capacity:    480,103,981,056 bytes [480 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
TRIM Command:     Available, deterministic
Device is:        In smartctl database 7.3/5319
ATA Version is:   ACS-3, ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Fri Oct 20 08:27:47 2023 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

接下来 fdisk 可以显示 MBR 或 GPT 磁盘布局:

{root@marvin:~ (local) 517} fdisk sd0    
Disk: sd0       geometry: 58369/255/63 [937703088 Sectors]
Offset: 0       Signature: 0xAA55
            Starting         Ending         LBA Info:
 #: id      C   H   S -      C   H   S [       start:        size ]
-------------------------------------------------------------------------------
 0: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
 1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
 2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
*3: A6      0   1   2 -  58368 254  63 [          64:   937697921 ] OpenBSD

最后但并非最不重要的一点是,您可以使用 disklabel 查看 OpenBSD 分区:

{root@marvin:~ (local) 518} disklabel sd0
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: USB 3.0 TOSATA  
duid: cb4856da548e0d52
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 255
sectors/cylinder: 16065
cylinders: 58369
total sectors: 937703088
boundstart: 64
boundend: 937697985

16 partitions:
#                size           offset  fstype [fsize bsize   cpg]
  a:        100646912            16384  4.2BSD   2048 16384 12960 # /
  b:         33554432        100663296    swap                    # none
  c:        937703088                0  unused                    
  e:        671088640        134217728  4.2BSD   4096 32768 26062 # /export

相关内容