Como instalar OpenBSD 6.0 paso a paso

Este post describe paso a paso una instalacion de OpenBSD 6.0.

Al arrancar el ISO en CD nos mostrara este prompt:

  
Si no deseamos pasar argumentos de arranque, solo presionamos
Nos mostrara este programa del proceso de instalacion, en el cual pulsamos la tecla I, luego Enter

 

  Elegimos el teclado en ingles americano, noten que podemos en cualquier momento presionar el signo de interrogacion (?) para mostrar mas detalles de las opciones de  ayuda.

Escribimos el nombre de host para el sistema.

Seleccionamos la interface de red a configurar:

Ahora, configuramos la red en modo dhcp para ipv4; que tambien  puede ser estatica.

Digitamos none y presionamos enter para el ipv6.

Habilitamos el ssh por defecto.

En este caso, elegimos no iniciar el Xorg automaticamente

Elegimos nombre de usuario no privilegiado.

Opcionalmente Configuramos el Nombre completo para el usuario

Se introduce el password para el usuario

Elegimos el disco duro donde se alojara la instalacion

En este caso se elige el disco completo. Tambien existe la opcion de OpenBSD Area.

Elegimos custom Layout

En la imagen aparece solamente la particion c: que representa el disco completo.

Elegimos el offset inicial, que es 64, esta sera la diferencia entre particion en cada size especificado.

Elegimos los sets a instalar (puede instalarse sin los del entorno grafico)

Elegimos continuar sin la verificacion MD5:

En este caso, nos aparece el mensaje de correccion de la hora, respondemos yes para autoajustarla.

Finalmente nos aparece el mensaje de que la instalacion fue todo un exito

Despues de esto, iniciamos la nueva instalacion.

Agregar particion de disco (slice) al label en NetBSD

En el momento de instalacion de NetBSD, existe la fase de particionamiento de disco, claro, diferente a lo habitual en Linux, que no posee estas caracteristicas en discos duros (el mas cercano es LVM).

En el ecosistema BSD se especifican:

Particiones del BIOS MBR (hasta 4 primarias) = Slices
Etiquetas de discos BSD (dentro del slice seleccionado) = Particiones

Como vemos, las particiones en BSD son esas divisiones logicas dentro de una particion del BIOS en MBR, que se pueden etiquetar hasta por 16 letras (desde la ‘a’, hasta la ‘p’)

En FreeBSD y OpenBSD, la letra ‘c’ representa el disco completo, a diferencia que en NetBSD, la letra c especifica el slice completo del sistema, y la letra d especifica el disco completo.

Si en alguna ocasion Instalamos NetBSD sin especificar los otros slices, solo sera visto el del  sistema operativo instalado, como deseamos acceso a otro slice (por ejemplo,  FAT32 o VFAT) ubicado en otra seccion del disco, no es posible visualizarla.

Nos auxiliamos del comando disklabel , el cual se utiliza para agregar, borrar o editar los labels al sistema.

Existe el modo interactivo, el modo por comando (en directo) y el modo editor (vim)
En este ejemplo utilizaremos el modo interactivo (que se invoca con la opcion -i )

Nos mostrara el prompt ‘ partition> en donde podemos pulsar la tecla  ? para visualizar las demas opciones. Desplegamos las particiones actuales con P


Nos muestra que la ultima de las letras es la e: , por lo que podemos seleccionar cualquiera desde la f hasta la p . En este caso elegimos la letra f y presionamos enter.

En el nuevo prompt nos pide insertar uno de los sistemas de archivos soportados (desplegamos presionando la tecla ‘?’ )

En otra ventana despues de  escalar como root, ejecutamos el comando fdisk wd0 , que pudiera ser otro disco (como wd1, wd2, sd0, etc). El disco seleccionado es donde se encuentra la particion del BIOS (Slice), que esta en FAT32.

Donde despliega  ‘Primary DOS with 32 bit FAT’ que es la numero dos (2), tomamos los siguientes valores para poder especificar el offset y el tamano total del slice que esta en  parentesis, en megabytes.

 start: 394652853
 size: 6143886, equivalente a 3000MB


Insertamos ‘MSDOS’ y al presionar enter, ingresamos el primer valor

 start offset: 394652853

 size:  3000MB 

Luego nos muestra el nuevo label (o particion) con los valores ya especificados, notese que aun no se encuentran escritos en el disco,

 Lo mostramos junto a los labels actuales.

Aplicamos el cambio presionando la W y respondiendo yes (y), a partir de este momento, ya se encuentra escrito los cambios en el disco.

Para confirmar que los cambios son correctos, ejecutamos el comando mount.

Aqui podemos ver la nueva particion del BIOS (slice) listada en los labels de NetBSD

Si por alguna razon deseamos eliminarla, se ejecuta el modo edicion (por vi) y lo borramos con dd y  grabar en el editor (con ESC :wq). Esto no borra definitivamnete la particion BIOS (slice) formateada FAT32, solo elimina la etiqueta y no sera visible desde el sistema operativo.

Por qué debemos evitar systemd (opinion)

Entre los últimos lanzamientos, la mayoría de las distribuciones Linux han decidido reemplazar el sistema de inicio por systemd, en donde se promete mejor funcionalidad con el manejo de los procesos. No obstante, esto no es más que una imposición de manera drástica, porque varias dependencias de los entornos gráficos más conocidos (Plasma y Gnome) están actualmente ‘hardcoded’, y no se pueden instalar independientemente de systemd.

Se ha perdido la filosofía inicial de UNiX.
En esta última generación del software libre y el open source. Es más evidente el concepto de ‘GNU no es UNiX’.
Pocos concientizan la filosofía inicial de UNIX, además que systemd no proviene ni posee la estandarización POSIX, la cual indica las normas que debe cumplir un sistema operativo UNiX-like para que sea reconocido como el mismo. Linux, por esto, no asemeja ser clon de UNiX.
El querer reemplazar un nuevo estándar de un sistema de inicio que no tiene más de una década, no se compara con la estabilidad de init y SystemV, que esta presente desde los orígenes de la filosofía UNiX (hace ya 46 años).

Esquema muy  Centralizado
Por lo visto y experimentado, el nuevo modelo inicio de SystemD se adhiere la idea de “un solo linux” y la simplicidad.
Como es posible que actualizar Linux de una version anterior a una reciente desaparezca init por systemd como controlador del PID 1? Incluso, se reemplazan los scripts de inicio de los servicios por otros meramente no compatibles y controlados todos mediante este nuevo proceso inicial.

Que hacer al respecto?
Particularmente Recomiendo evitar utilizar cualquier distribucion Linux que lo posea, o mas bien empezar a utilizar FreeBSD 
Si usted como usuario le es complejo, pues recomiendo PC-BSD
Existe la alternativa de utilizar cualquier otro flavor BSD (NetBSD y OpenBSD), aunque para comenzar, con FreeBSD es suficiente.

Enlace

Proyectos que se originaron de OpenBSD, con numeros de bug irrisorios

Con el paso del tiempo y la evolución de OpenBSD, sus principales desarrolladores (liderado por Theo de Raadt)  han incursionado en proyectos que a consecuencia aportan mucho a la comunidad del software libre, incluso usuarios de windows.

Entre los principales destacados son:

OpenSSH, OpenBGPD, OpenNTPD, OpenSMTPD, OpenIKED, mandoc, LibreSSL.

Citando cada uno de estos proyectos:

  • OpenSSH is the premier connectivity tool for remote login with the SSH protocol. 
  • OpenBGPD is a FREE implementation of the Border Gateway Protocol, Version 4. It allows ordinary machines to be used as routers exchanging routes with other systems speaking the BGP protocol.  
  • OpenNTPD is a FREE, easy to use implementation of the Network Time Protocol. It provides the ability to sync the local clock to remote NTP servers and can act as NTP server itself, redistributing the local clock. 
  • OpenSMTPD is a FREE implementation of the server-side SMTP protocol as defined by RFC 5321, with some additional standard extensions. It allows ordinary machines to exchange emails with other systems speaking the SMTP protocol.
  • OpenIKED is a FREE implementation of the Internet Key Exchange (IKEv2) protocol which performs mutual authentication and which establishes and maintains IPsec VPN security policies and associations (SAs) between peers. The IKEv2 protocol is defined in RFC 5996, which combines and updates the previous standards: ISAKMP/Oakley (RFC 2408), IKE (RFC 2409), and the Internet DOI (RFC 2407). OpenIKED only supports the IKEv2 protocol; support for ISAKMP/Oakley and IKEv1 is provided by OpenBSD’s isakmpd(8)or other implementations on non-OpenBSD platforms.  
  • mandoc is a suite of tools compiling mdoc, the roff macro language of choice for BSD manual pages, and man, the predominant historical language for UNIX manuals. It is small, ISO C, ISC-licensed, and quite fast. The main component of the toolset is the mandoc utility program, based on the libmandoc validating compiler, to format output for UNIX terminals (with support for wide-character locales), XHTML, HTML, PostScript, and PDF.

    mandoc has predominantly been developed on OpenBSD and is both an OpenBSD and a BSD.lv project. We strive to support all interested free operating systems, in particular FreeBSD, NetBSD, DragonFly, illumos, Minix 3, and GNU/Linux, as well as all systems running the pkgsrc portable package build system. To support mandoc development, consider donating to the OpenBSD foundation.   

  • LibreSSL is a version of the TLS/crypto stack forked from OpenSSL in 2014, with goals of modernizing the codebase, improving security, and applying best practice development processes.
    Primary development occurs inside the OpenBSD source tree with the usual care the project is known for.
    On a regular basis the code is re-packaged for portable use by other operating systems (Linux, FreeBSD, Windows, etc).

    Muchos usuarios Linux desconocen el fondo de como se han originado estos flamantes proyectos para la ciencia en computacion

Es posible el Internet sin Linux? Si, gracias a BSD

En los medios tecnologicos circulan noticias afirmando sobre que seria el internet sin Linux. Estos medios no se percatan que de no ser asi, este fuera mucho mas robusto, debido a BSD.
BSD esta vigente desde 1977 y el Internet se empezo a llamar como tal desde 1983 (tomando mas en cuenta el precursor llamado ARPANET desde la decada de 1950, para fines militares). Casi todas las implementaciones de TCP derivan de la 4.4 BSD-Lite.

Segun data Wikipedia:

Es especialmente importante la implementación de TCP de 4.4BSD-Lite, que salió en junio de 1994, y es la que se toma como referencia por haber sido la base de muchos sistemas actuales. Hoy en día, se sigue usando para enseñar cómo funciona un sistema TCP. 1
Muchas implementaciones actuales se han basado en alguna de estas tres en algún momento. Sin embargo, si hoy se creara una nueva, probablemente se basaría en una de las modernas (como la de FreeBSD, OpenBSD, NetBSD o BSD/OS) antes que en la original de 4.4BSD-Lite.

La reutilización del código de BSD fue posible debido a su licencia (licencia BSD), que permite que sea usado en otros sistemas, tanto software libre como propietario. Por ejemplo, Microsoft Windows usa código derivado de BSD en su implementación de TCP, e incluye herramientas de red para consola originales de BSD (detalles). También Darwin BSD, el sistema base de Mac OS X, parcialmente deriva de FreeBSD 5. Otros UNIX comerciales, como Solaris, también incluyen código BSD.