Список всех подключенных устройств в OpenBSD

Список всех подключенных устройств в OpenBSD

Как составить список всех подключенных (включая несмонтированные) устройств в OpenBSD?

Я ищу что-то похожее lsblkдля Linux или 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.
Даже pciinfo, kldstat, или geomне доступны.

решение1

Thesysctlкоманда может вывести список устройств, подключенных к системе. 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

Это создает список дисков в одной строке, разделенных запятыми:

hw.disknames=сд0:1e212bdb8b279f47,сд1:33634e7b41dbbafb,сд3: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

И последнее, но не менее важное: вы можете просмотреть разделы OpenBSD с помощью disklabel:

{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

Связанный контент