El controlador de pseudodispositivo bio (4) y la utilidad bioctl (8) implementan una interfaz genérica de administración de volumen RAID en OpenBSD y NetBSD . [1] [2] La idea detrás de este software es similar a ifconfig , donde una única utilidad del sistema operativo se puede usar para controlar cualquier controlador RAID usando una interfaz genérica , en lugar de tener que depender de muchas utilidades de administración de RAID personalizadas y propietarias. específico para cada fabricante de RAID de hardware dado. [3] [4] [5] [6] [7]Las características incluyen la supervisión del estado de salud de las matrices, el control de la identificación mediante el parpadeo de los LED y la gestión de alarmas sonoras, y la especificación de discos de repuesto en caliente . Además, la softraid
configuración en OpenBSD también se delega a bioctl; mientras que la creación inicial de volúmenes y la configuración del hardware RAID se deja en la BIOS de la tarjeta como no esencial después de que el sistema operativo ya se haya iniciado. [4] La interfaz entre el kernel y el área de usuario se realiza a través de la ioctl
llamada al sistema a través del pseudodispositivo ./dev/bio
Autor (es) original (es) | Marco Peereboom (2005) |
---|---|
Desarrollador (es) | El proyecto OpenBSD |
Versión inicial | 23 de agosto de 2005 |
Repositorio | / sbin / bioctl |
Escrito en | C |
Sistema operativo | OpenBSD desde 3.8 (2005); NetBSD desde 4.0 (2007) |
Tipo | Gestión de RAID y supervisión del sistema |
Licencia | Licencia BSD |
Sitio web | bioctl (8) |
Descripción general
Se considera que el subsistema bio / bioctl es una parte importante en la defensa de OpenBSD por la documentación de hardware abierto, y el título de la versión 3.8 y la canción principal se dedicaron al tema: Hackers of the Lost RAID . [5] [8] [9] El desarrollo tuvo lugar durante una época de controversia en la que Adaptec se negó a publicar la documentación de hardware adecuada que era necesaria para que el controlador aac (4) funcionara de manera confiable, lo que siguió con OpenBSD deshabilitando el soporte para el conductor. [9]
En el comentario de la versión 3.8, [9] los desarrolladores expresan la ironía del supuesto propósito de los controladores RAID de hardware de proporcionar confiabilidad, a través de la redundancia y reparación, mientras que en realidad muchos proveedores esperan que los administradores de sistemas instalen y dependan de enormes blobs binarios para para evaluar el estado del volumen y dar servicio a sus matrices de discos . Específicamente, OpenBSD está haciendo una referencia al modus operandi de FreeBSD , donde la documentación del controlador aac (4) para Adaptec sugiere específicamente habilitar la capa de compatibilidad de Linux para usar las utilidades de administración (donde la documentación ni siquiera explica dónde exactamente estas deben obtenerse utilidades de, o qué versiones serían compatibles, evidentemente porque las herramientas propietarias pueden haber caducado). [10] [11] [12]
Asimismo, los desarrolladores de OpenBSD eligieron intencionalmente concentrarse en admitir solo las características más básicas de cada controlador, que son uniformes en todas las marcas y variaciones; específicamente, el hecho de que la configuración inicial de cada controlador debe realizarse a través del BIOS de la tarjeta nunca se mantuvo en secreto de ningún anuncio de bio / bioctl. [4] [5] Esto puede contrastarse con el enfoque adoptado por FreeBSD, por ejemplo, donde existen utilidades individuales para varios controladores RAID independientes, y la interfaz de cada utilidad es independiente entre sí; específicamente, a partir de marzo de 2019[árbitro], FreeBSD incluye utilidades dispositivo específicas separadas llamadas mfiutil
, mptutil
, mpsutil
/ mprutil
y sesutil
, [13] [14] [15] [16] , cada uno de los cuales proporciona muchas opciones con al menos diferencias sutiles en la interfaz para la configuración y la gestión de los controladores, contribuye para codificar la hinchazón , sin mencionar los controladores adicionales para los que no existe tal herramienta como software de código abierto . [17] En OpenBSD 6.4 (2018), una docena de controladores se registran en el marco biológico. [1]
Los drive
sensores
La monitorización del estado de cada unidad lógica también se duplica en los marcos de monitorización de hardware y sus correspondientes utilidades en ambos sistemas donde está disponible bioctl - hw.sensors con sensoresd en OpenBSD [4] y sysmon envsys con envstat y powerd en NetBSD . [18] Por ejemplo, en OpenBSD desde la versión 4.2, el estado de los sensores de la unidad podría monitorearse automáticamente simplemente iniciando los sensoresd sin que se requiera ninguna configuración específica. [19] Se están convirtiendo más controladores para usar los marcos de bio y sensores con cada versión. [20]
SES / SAF-TE
En OpenBSD, tanto SCSI Enclosure Services (SES) [21] como SAF-TE [22] también son compatibles desde OpenBSD 3.8 (2005), ambos con LED parpadeando a través de bio y bioctl (implementando el BIOCBLINK
ioctl ), sistema de ayuda los administradores identifican los dispositivos dentro de los gabinetes a reparar. Además, tanto los controladores SES como SAF-TE en OpenBSD cuentan con soporte para una combinación de sensores de temperatura y ventilador, PSU , indicadores de alarma y bloqueo de puertas; todos estos datos de sensores auxiliares se exportan al marco hw.sensors en OpenBSD, [4] y se pueden monitorear a través de herramientas familiares como sysctl , SNMP y sensoresd .
A partir de 2019[actualizar], en NetBSD , un controlador SES / SAF-TE más antiguo de la NASA de 2000 todavía está en su lugar, que no está integrado con bio o envsys , pero tiene sus propios archivos de dispositivo con una interfaz ioctl única , con su propio usuario personalizado SCSI específico. estampación; [23] [24] esta implementación más antigua también estuvo disponible en OpenBSD entre 2000 y 2005, y fue eliminada en 2005 (junto con sus herramientas de usuario) justo antes de que se introdujeran los nuevos controladores alternativos más esbeltos basados en bio- y hw.sensors; SES y SAF-TE ahora se mantienen como dos controladores separados en OpenBSD, pero ya no requieren ninguna utilidad de usuario personalizada separada, lo que reduce el exceso de código y la cantidad de líneas de código fuente .
Referencias
- ↑ a b Niklas Hallqvist (2002); Marco Peereboom (2006). "bio (4) - pseudodispositivo de túnel ioctl de E / S de bloque" . Referencia cruzada BSD . OpenBSD . Lay resumen .
- ^ Marco Peereboom (2005). "bioctl (8) - interfaz de gestión RAID" . Referencia cruzada BSD . OpenBSD . Lay resumen .
- ^ Federico Biancuzzi (19 de mayo de 2005). "OpenBSD 3.7: El asistente del sistema operativo" . ONLamp . O'Reilly Media . Archivado desde el original el 21 de mayo de 2005 . Consultado el 20 de marzo de 2019 .
- ^ a b c d e Theo de Raadt (9 de septiembre de 2005). "El soporte de administración de RAID viene en OpenBSD 3.8" . misc @ (lista de correo). OpenBSD .
- ^ a b c Federico Biancuzzi (20 de octubre de 2005). "OpenBSD 3.8: Hackers del RAID perdido" . ONLamp . O'Reilly Media . Archivado desde el original el 27 de diciembre de 2005 . Consultado el 20 de marzo de 2019 .
- ^ Federico Biancuzzi (26 de octubre de 2006). "OpenBSD 4.0: aventuras de Pufferix" . ONLamp . O'Reilly Media . Archivado desde el original el 10 de marzo de 2007 . Consultado el 19 de marzo de 2019 .
- ^ David Gwynne; Marco Peereboom (3 de diciembre de 2006). bio y sensores en OpenBSD (PDF) . OpenCON 2006, 2-3 de diciembre de 2006 . Courtyard Venice Airport, Venecia / Tessera, Italia . Consultado el 4 de marzo de 2019 .
- ^ OpenBSD 3.8 . OpenBSD . 2005-11-01. ISBN 0-9731791-6-3. Consultado el 23 de marzo de 2019 .
Hackers del RAID perdido
- ^ a b c "3.8:" Hackers del RAID perdido " " . Canciones de lanzamiento de OpenBSD . OpenBSD . 2005-11-01 . Consultado el 23 de marzo de 2019 .
- ^ Scott Long; Adaptec, Inc. (2000). "aac (4) - Controlador de la controladora Adaptec AdvancedRAID" . Referencia cruzada BSD . FreeBSD . Lay resumen .
Si el kernel está compilado con la opción COMPAT_LINUX, o los módulos aac_linux.ko y linux.ko están cargados,…
- ^ "Eliminar aaccli caducado" . FreshBSD . FreeBSD . 2010-08-03. Archivado desde el original el 3 de agosto de 2010.
- ^ Jonathan Gray (2 de diciembre de 2006). "Página 26: Solo abierto al público: FreeBSD" . Arquitectura e implementación de controladores en OpenBSD . OpenCON 2006, 2-3 de diciembre de 2006 . Courtyard Venice Airport, Venecia / Tessera, Italia . Consultado el 27 de marzo de 2019 .
controladores diseñados para herramientas de administración RAID de Linux solo binarias
- ^ "mfiutil - Utilidad para la gestión de controladores LSI MegaRAID SAS" . Referencia cruzada BSD . FreeBSD . 2009. Resumen de laicos .
- ^ "mptutil - Utilidad para administrar controladores LSI Fusion-MPT" . Referencia cruzada BSD . FreeBSD . 2009. Resumen de laicos .
- ^ "mpsutil, mprutil - Utilidad para administrar controladores LSI Fusion-MPT 2/3" . Referencia cruzada BSD . FreeBSD . 2015. Resumen Lay .
- ^ "sesutil - Utilidad para administrar el dispositivo de servicios de caja SCSI (SES)" . Referencia cruzada BSD . FreeBSD . 2015. Resumen Lay .
- ^ Theo de Raadt (3 de diciembre de 2016). "Página 10: El hardware: controladores de accionamiento" . Abra la documentación para hardware . OpenCON 2006, 2-3 de diciembre de 2006 . Courtyard Venice Airport, Venecia / Tessera, Italia . Consultado el 27 de marzo de 2019 .
La gestión de RAID está casi completamente indocumentada
- ^ Constantine A. Murenin (21 de mayo de 2010). "1.1. Motivación; 4. Controladores de sensor; 7.1. NetBSD envsys / sysmon". Sensores de hardware OpenBSD - Monitoreo ambiental y control de ventiladores ( tesis MMath ). Universidad de Waterloo : UWSpace. hdl : 10012/5234 . ID de documento: ab71498b6b1a60 ff817 b29d56997a418.
- ^ Federico Biancuzzi (1 de noviembre de 2007). "Maratón de Puffy: Novedades de OpenBSD 4.2" . ONLamp . O'Reilly Media . Archivado desde el original el 13 de octubre de 2011 . Consultado el 3 de marzo de 2019 . Lay resumen .
- ^ Federico Biancuzzi (15 de junio de 2009). "PuffyTron recomienda OpenBSD 4.5" . O'Reilly Media . Archivado desde el original el 19 de junio de 2009 . Consultado el 19 de marzo de 2019 .
- ^ David Gwynne (2005). "/sys/scsi/ses.c - Servicios de caja SCSI" . Referencia cruzada BSD . OpenBSD . Lay resumen .
- ^ David Gwynne (2005). "/sys/scsi/safte.c - Gabinete tolerante a fallas con acceso SCSI" . Referencia cruzada BSD . OpenBSD . Lay resumen .
- ^ Matthew Jacob; Administración Nacional de Aeronáutica y del Espacio (2000). "dev / scsipi / ses.c - Controlador de servicios ambientales SCSI" . Referencia cruzada BSD . NetBSD . Lay resumen .
- ^ Mateo Jacob (2000). "sesd: sesd, getencstat, setencstat, setobjstat - monitorear dispositivos de servicios ambientales SCSI" . Referencia cruzada BSD . NetBSD . Lay resumen .