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 の (デフォルトの) リポジトリには存在しないか、使用できないようです。、、
も使用できません。 pciinfokldstatgeom

答え1

sysctlコマンドはシステムに接続されているデバイスを一覧表示できます。 sysctlカーネルの状態を取得または設定します。

所有しているディスクの数を一覧表示するには:

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

これにより、ディスクのリストがコンマで区切られて 1 行に生成されます。

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

関連情報