web-dev-qa-db-ja.com

OpenBSDで接続されているすべてのデバイスを一覧表示する

OpenBSDで接続されているすべてのデバイス(マウントされていないデバイスを含む)を一覧表示するにはどうすればよいですか?

Linuxの場合はlsblk、FreeBSDの場合はcamcontrol devlistのようなものを探しています。

# 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も使用できません。

6
Alexej Magura

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

持っているディスクの数をリストするには:

sysctl hw.diskcount

ディスク名を一覧表示するには:

sysctl hw.disknames

またはsysctl -a | grep -i disk

5
fcbsd
dmesg | egrep '^(cd|wd|sd|fd). at '
4
Jérôme Radix

OpenBSDには同様のツールはありません。ディスクは、dmesgまたは実行中のsysctl hw.disknamesで確認できます。また、disklabelおよびfdiskは、パーティションに関する情報を表示できます。

1
Rufo El Magufo

lsblkは素晴らしいツールですが、OpenBSDでは利用できません。同様を達成する他の方法があります:

1。システムで使用可能なディスクの名前を表示するには:

sysctl hw.disknames

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

hw.disknames = sd:1e212bdb8b279f47、sd1:33634e7b41dbbafb、sd:569e3efaf6b08310

ディスク識別子は上記の太字で強調表示されています(次のステップで使用するため)。

2。disklabelユーティリティを使用して、各ディスクの詳細を表示します(rootとして実行する必要があります):

doas disklabel -h <disk identifier>

これにより、ディスクの詳細情報が-h人間が読める形式で表示されます(メガバイト、ギガバイトなど)。

。すでにマウントされているファイルシステムに関する情報(サイズと空き領域を含む)を参照

(私はこれが質問に厳密に答えないかもしれないことを知っていますが、これを探している他の人々のためにそれを含めました。)

すでにファイルシステムをマウントしている場合、ディスクは次のように表示される情報に含まれます:df -h

4。それでもわからない場合は、システムメッセージを確認します:

dmesgは、ハードウェアが検出されると、カーネルからメッセージを出力します。それでもディスクが見つからない場合は、grepと一緒に使用します。

dmesg | grep -i 'scsi'

0
Mark