03 enero 2024

Instalar y adaptar FreeBSD 14 con entorno gráfico Mate

Si no se ha utilizado nunca FreeBSD y se desea empezar lo más recomendable sería practicar primero con GhostBSD que es muy sencillo en todos los aspectos tanto de instalación como de uso, nos ha servido de guía y orientación para ver como dejan los ficheros de configuración del sistema unos profesionales de alto nivel (rc.conf, loader.conf, sysctl.conf, fstab, devfs.conf,  devfs.rules).

Dicho esto, ahora aprenderemos a instalar y a adaptar esta nueva versión 14 FreeeBSD  como máquina de escritorio completa con entorno gráfico Mate. Utilizamos el entorno gráfico Mate por su fiabilidad, por su flexibilidad en la configuración y adaptación.

En todo caso se recomienda mirar las siguientes webs para ver como se instala tanto el sistema como los entornos gráficos en FreeBSD:
 
Y también:
O bien:
 
No explicamos como se ha de instalar la base del sistema porque hay mucha información al respecto y es un proceso  muy rápido y sencillo. Partiremos del sistema base ya instalado pero sin entorno gráfico. Por si no se tiene ni idea del proceso, os recomendamos ver  ejemplos de instalación de la base del sistema muy precisos en las siguientes webs, quizás más aconsejable la 2a opción.
 
 
NOTA. Como siempre, agradecer y dar las gracias a las personas, que de forma desinteresada, ponen sus conocimientos en las redes  para que todos nosotros podamos utilizarlos.
 
Podéis bajar esta distribución de la web oficial:
Las primeras veces  que se instala el sistema base  es conveniente dejar que la partición del disco se haga tal como nos propone el instalador del sistema utilizando todo el disco, de esta forma nos podremos iniciar en el sistema de particiones y los tipos de formato específicos que utiliza sin problemas. 

Instalación de XORG

 
Partiendo del sistema operativo base ya instalado continuaremos con la instalación del entorno gráfico Mate. Solemos preferir máquinas Intel porque nunca crean problemas de reconocimiento de Hardware en la instalación. Los portátiles con Ryzen ja no son tan fiables en el reconocimiento de su hardware.

En un principio también es conveniente trabajar con la tarjeta gráfica de la placa base,  ya que los actuales procesadores Intel  dan un funcionamiento correcto, sin problemas de configuración de los Drivers gráficos libres y con muy buena aceleración gráfica. 
 
Después ya indicaremos como instalar las tarjetas gráficas Nvidia o ATI. Hecho que no siempre es inmediato y, según que tarjeta puede tener problemas, ya que depende del soporte. Siempre es el  punto más complicado de instalar, dependiendo de cada caso y modelo.

Instalamos la base del sistema gráfico xorg y drm-510-kmod además instalamos el editor de texto en terminal nano que nos permitirá editar y adaptar fácilmente los ficheros de configuración.

      # pkg install xorg nano drm-510-kmod gpu-firmware-kmod
 
 - xorg, soporte gráfico básico.
 - drm-510-kdmod gpu-firmware-kmod, soporte de módulos para gráficas integradas intel y radeon.
 - nano, editor gráfico de consola para escribir con comodidad los ficheros de configuración.
 
 
En el fichero /etc/rc.conf los activaremos:

      # nano   /etc/rc.conf
           hald_enable="YES"
           dbus_enable="YES"
# En caso de gráfica integrada  intel poner la siguiente línea y no la posterior.
           kld_list="i915kms"
# En caso de gráfica integrada AMD radeon poner cualquiera la siguiente línea.
          kld_list="/boot/modules/amdgpu.ko"
 
Reiniciar el sistema y después probar si funciona el entorno gráfico con la orden:

  
   #  startx
 
Para comprobar si funciona el entorno gráfico, que será lo normal, con la resolución de pantalla correcta, teclear startx y aparecerán tres ventanas shell de color verde con fondo blanco. Para volver al sistema y poder continuar con la instalación teclear "exit" en el terminal y el sistema saldrá del entorno gráfico inicial. 
 

Instalación del entorno gráfico MATE y herramientas iniciales
 
La idea ahora es instalar el entorno gráfico Mate con las herramientas mínimas necesarias, y luego ya poder continuar  bajo entorno gráfico  con la instalación y adaptación del resto de  programas. Éste planteamiento, además de facilitar mucho el trabajo,  permite continuar con la instalación  mientras se consultan webs
 
Para ello instalamos lo siguiente:
 
    # pkg install mate mate-desktop firefox sudo


- Mate mate-desktop, los dos programas para instalar el entorno gráfico Mate completo.
- firefox, navegador firefox. Si se desea se puede instalar la versión extendida (firefox-esr).
- Sudo, Para poder disponer el usuario root fácilmente en la consola.

Activamos sudo para el usuario escogido en la instalación en el fichero /usr/local/etc/sudoers:

  # nano /usr/local/etc/sudoers
     
      TU_USUARIO   ALL=(ALL:ALL) ALL

Salimos del usuario root y entramos a nuestro usuario de trabajo normal definido en la instalación. Creamos el archivo en /home/NUESTRO_USURIO/.xinitrc con el siguiente contenido:

  $ nano .xinitrc

 exec ck-launch-session dbus-launch mate-session        

 
Sin estas instrucciones anteriores  en el fichero .xinitrc en nuestro usuario el sistema no arranca ni se cierra correctamente con entorno Mate.

Ahora ya estamos en condiciones de entrar al entorno gráfico Mate y trabajar desde él.
  
Primero se entra como nuestro usuario y contraseña, y después teclear startx y ya se entra en el entorno Mate:

 $ startx

 
Ahora ya continuamos trabajando con entorno gráfico
 
Accederemos al entorno gráfico MATE habitual por defecto pero en ingles. Como tenemos el terminal con sudo, podremos continuar instalando los programas habituales y a la vez configurando el sistema de forma cómoda, segura y con la posibilidad de consultar las webs necesarias. Además podréis copiar y pegar la indicaciones que iremos dando aquí y acabaréis en muy poco tiempo. Y, finalmente, se activará el lenguaje que corresponda del sistema, este caso español.
 
Herramientas Útiles

Recordamos, una vez más, que aquí todo se hace desde terminal sin ninguna ayuda.
 
Vamos a instalar diversas herramientas de utilidad.
 
$ sudo su
contraseña:  la que corresponda
 
Continuamos con la instalación   de herramientas útiles de Mate:
 

pkg install mate-indicator-applet
pkg install checkmate
#  pkg install dmidecode smartmontools hwstat lscpu curl perl5 

Luego las fuentes básicas para que el sistema se vea todo correctamente; sobretodo no puede faltar urwfonts:

# pkg install urwfonts x11-fonts/webfonts comfortaa-ttf gnu-unifont gofont-ttf inconsolata-ttf liberation-fonts-ttf 
 
La  instalación de los programas anteriores nos aconseja poner:
 
# echo ' smartd_enable="YES" ' >> /etc/rc.conf
 
 Para hacerlo permanente, necesita las siguientes líneas en  /etc/fstab:

# nano /etc/fstab

    fdesc    /dev/fd        fdescfs        rw    0    0
    proc    /proc        procfs        rw    0    0


Instalación de java
 
Escribimos en el fichero /etc/sysctl.conf lo siguiente: 

    # nano /etc/sysctl.conf

         kern.ipc.shm_allow_removed=1
 
Instalamos los siguientes programas: 

    # pkg install icedtea-web openjdk8-jre
 

 
No hace falta recordar que flash ya no es necesario, aunque aún quedan webs antiguas que lo utilizan.

Instalación de Cups (controladores de impresoras)

 
   # pkg install cups foomatic-filters
 
Activamos en el fichero /etc/rc.conf cups:
 
   # nano /etc/rc.conf
       lpd_enable="NO"
       cupsd_enable="YES"

Agregamos los usuarios root y NUESTRO_USUARIO, al usuario cups:

   # pw usermod root -G cups
   # pw usermod NUESTRO_USUARIO -G cups

  Esto modifica el fichero /etc/group en el que se ha agregado lo siguiente:
 
     cups:*:193:root,NUESTRO_USUARIO 
 
Ahora agregaremos Hplip para gestionar la impresora, que en este caso es HP. Si se dispone de otro modelo deberá buscarse el software de gestión, utilizamos normalmente esta marca por el excelente soporte sobre Linux.
 
 # pkg install print/hplip
 
Si hplip  no aparece el acceso directo, se activa de la forma siguiente:

Ir a:


Sistema --> Preferencias --> Personal --> aplicaciones de inicio --> agregar se añade:

   Nombre: hplip
   ORDEN:   hp-systray -x


Ahora debe reiniciarse el sistema para que se pueda ejecutar la orden siguiente que nos permitirá configurar la impresora:

  
  # hp-setup

Y si os falla todo, que normalmente no pasa, siempre se puede instalar la impresora desde el navegador:

http://localhost:631
 
Hplip es una buena herramienta para impresoras  HP, ja que disponen de todos los Drivers con un excelente soporte. Otras marcas de impresoras también tienen soporte aunque aquí no se comenta.

Debe agregarse  en rc.conf

  BATCH="yes"
 
 

Herramientas de sistema

 
 # pkg install usbutils pciutils hw-probe py39-WebFlash gpart
 

De esta forma os funcionaran las ordenes siguientes en la consola.
 

- usbutils,  pciutils y hw-prove, son herramientas de sistema que permiten utilizar loa siguiente comandos desde terminal:
 
  # lsusb
  # lspci
  # pciconf -lv 
  # hw-probe -all -upload
  # pciconf -lv 
  # gpart show
 
Suporte para montar archivos, particiones, móviles y dispositivos USB
 
 
Para que funcionen correctamente las memorias USB y el resto de dispositivos, es necesario instalar programas para poder acceder a los diferentes formatos (fat, ntfs, ext, etc):

Para que monte los dispositivos externos de forma automática instalamos esta nueva herramienta de freebsd:

   # pkg install automount
 
   # service devd restart
 
Dispone de fuse que permite montar archivos ntfs, ext4, formato de móviles, instalando los programas siguientes:

  # pkg install fuse fuse-utils fusefs-ext2 e2fsprogs 
 
Copiamos el fichero  automount.conf.sample a automount.conf para hacerlo activo y así el usuario tendrá los permisos de montar ficheros.

  # cp /usr/local/etc/automount.conf.sample /usr/local/etc/automount.conf
 
  # nano /usr/local/etc/automount.conf
 
USERUMOUNT=YES
 
Si aún no lo habéis puesto antes, se escribe lo siguiente en el archivo /etc/fstab:

  # nano /etc/fstab
 
       proc /proc procfs rw 0 0
       fdesc /dev/fd fdescfs rw 0 0
 
Y en el fichero /etc/sysctl.conf lo siguiente:

  # nano /etc/sysctl.conf
 
       vfs.usermount=1
 
Con la instrucción anterior los usuarios podrán montar discos de forma permanente.

Desde terminal efectuamos la siguientes ordenes para agregar nuestro usuario a los grupos wheel y operator:

   # pw usermod NUESTRO_USUARIO -G wheel
   # pw usermod NUESTRO_USUARIO -G operator
 
Estas dos ordenes anteriores lo que hacen es modificar el fichero /etc/group añadiendo nuestro_usuario a los grupos whell y operator. esto también se puede hacer editando el fichero /etc/group y añadiendo nuestro usuario a whell y operator.


   # kldload fuse.ko  
 
Ahora Añadamos los permisos que debe tener el sistema con dos ficheros de texto  para poder controlar  los medios extraíbles
 
1.-  añadiremos al fichero /etc/devfs lo siguiente:
 
 # nano /etc/devfs.conf

perm devstat 0444
own  /dev/acd0 root:operator
perm /dev/acd0 0666
perm /dev/acd1 0666
own  /dev/cd0 root:operator #usuarios root y operator pueden montar cd0
perm /dev/cd0 0660
own  /dev/cd1 root:operator
perm /dev/cd1 0660
perm /dev/da0 0666
perm /dev/da1 0666
perm /dev/da2 0666
perm /dev/da3 0666
perm /dev/da4 0666
perm /dev/da5 0666
own  /dev/pass0 root:operator
perm /dev/pass0 0666
own  /dev/xpt0 root:operator
perm /dev/xpt0 0666
perm /dev/uscanner0 0666
perm /dev/video0 0666
perm /dev/tuner0 0666
perm /dev/dvb/adapter0/demux0 0666
perm /dev/dvb/adapter0/dvr 0666
perm /dev/dvb/adapter0/frontend0 0666

2.- Creamos el fichero /etc/devfs.rules, pues no existe, éste es un complemento al archivo de configuración del sistema /etc/defaults/devfs.rules. Lo haremos con el siguiente contenido:
 

  # nano /etc/devfs.rules

 [devfsrules_common=7] 
 
add path 'ad[0-9]\*'        mode 666
add path 'ada[0-9]\*'    mode 666  group operator
add path 'da[0-9]\*'        mode 666
add path 'acd[0-9]\*'    mode 666
add path 'cd[0-9]\*'        mode 666
add path 'mmcsd[0-9]\*'    mode 666
add path 'pass[0-9]\*'    mode 666
add path 'xpt[0-9]\*'    mode 666
add path 'ugen[0-9]\*'    mode 666
add path 'usbctl'        mode 666
add path 'usb/\*'        mode 666 group operator
add path 'lpt[0-9]\*'    mode 666
add path 'ulpt[0-9]\*'    mode 666
add path 'unlpt[0-9]\*'    mode 666
add path 'fd[0-9]\*'        mode 666
add path 'uscan[0-9]\*'    mode 666
add path 'video[0-9]\*'    mode 666
add path 'tuner[0-9]*'  mode 666
add path 'dvb/\*'        mode 666

En  [devfsrules_como=7], el 7 es la prioridad.
 
Añadimos al fichero /etc/rc.conf lo siguiente para activarlos:

   # nano /etc/rc.conf
     
    devfs_system_ruleset="devfsrules_common"
  
 
 

Instalación del resto de aplicaciones del sistema
 
Con la siguiente orden ya instalaremos en el sistema  todos los programas  más habituales para trabajar suficientemente bien como máquina de escritorio. Después, poco a poco, ya podréis instalar aquellos que sean de vuestra preferencia o necesidad.
 

  # pkg install vlc es-libreoffice es-hunspell rar unrar peazip-gtk2 gimp inkscape firefox-esr gstreamer1-plugins-all chromium brasero gnome-utils gnome-calculator obs-studio openshot zsync rsync qbittorrent audio/oss audacity peazip-gtk2 simple-scan pinta krita


Todos ellos son de los más importantes:
 
- Audacity, editar música.
- Inkscape, gráficos vectoriales, absolutamente profesional.
- LibreOffice, serie completa de ofimática en español (es-libreoffice) con diccionario en "es_ES" (es-hunspell).
- Gimp, mejor programa para tratar imágenes, acordaros de visitar plugins oficiales, absolutamente profesional.
- Openshot, para editar vídeos.
- Brasero, si se dispone de DVD, sino no hace falta.
- OBS-studio, para realizar videos didácticos con captura de pantalla tanto video como imagen, ideal para cursos.
- Atril, es un lector habitual de pdf que utiliza esta distribución.
- Gnome-calculator, sencilla y eficiente calculadora habitual de los entornos gráficos.
- Krita y pinta, para tratar imágenes de forma sencilla, rápida y no tan compleja como gimp. Pinta es muy sencillo y krita un poco más complicado y completo.
- VLC, imprescindible visor de imágenes y videos que instala los conectores que necesita.
- Peazip-gtk2, programa gráfico de compresión y descompresión de archivos.
- Simple-scan, herramienta para escanear.
- Shotwell, para gestionar nuestras imágenes.

Debe vigilarse con las lenguas, en principio:

- Recordar que se ha instalado firefox  y, tal como habréis comprobado, nos queda en Inglés, más adelante indicaremos como cambiarlo a español.


- Para tener Libreoffice en castellano hemos instalado el fichero es-libreoffice.

Para el resto de programas que se han instalado con la correcta configuración del sistema ya se abrirán en lengua española.


 
Herramientas diversas
 
  #  pkg install  xarchiver rar unrar  epdfview

- Epdfview, para ver archivos pdf
- Xarchiver, manejar archivos  comprimidos y también (rpm, iso, etc.) sin ejecutables.
 

Instalación de las fuentes no libres (Arial, verdana, etc.)
 
Cuando se tiene que trabajar con ficheros ofimáticos creados por máquinas Windows, os faltaran las fuentes con las que han sido creados los documentos. Si no las tenéis instaladas éstos perderán la configuración y formato, ya que las medidas de las letras no son exactamente iguales.
 
No solo eso, sino que aquellos documentos que se produzcan desde Libreoffice y que deban compartirse con otras personas, deben guardarse en formato docx o rtf y no en odt para que los que solo tienen Windows y office puedan abrir vuestro documento correctamente. Como supongo sabréis office no abre este formato, supongo que es intencionado.

Actualmente esta postura no se entiende pues todos lo programas tienen cosas buenas y no tan buenas. Una de las cualidades que caben destacar en LibreOffice es su capacidad de comunicación transversal con otros programas.
 
 
Aunque esta claro que la mejor solución es enviar siempre todos los documentos  en formato pdf para evitar cualquier manipulación. 
 
Para instalar estas fuentes:

# pkg install x11-fonts/webfonts

 
Lanzador gráfico del sistema (gtk)
 
Utilizaremos el gtk que recomienda freebsd para lanzar graficamente el sistema para el usuario y contraseña.

 
# pkg install lightdm leghtdm-gtk-greeter
 
 
Agregamos el lanzador gtk en rc.conf para que funcione.
 
 
# nano/etc/rc.conf
 
 lightdm_enable="YES"
 
 
Si reiniciamos el sistema y accederemos a través de entorno grágico a nuestro usuario, aunque podemos esperar a acabar con la adaptación.
 
Poner el sistema FreeBSD en español (castellano)
 
Está claro que el método que os expliamos servirá para cualquier versión de castellano o cualquier otra lengua, solo tenéis que canviar es-ES, sustituyendo ES por la siglas que correspondan.

Primero comprobaremos que nuestra lengua este definida con  locale:
 
 #  locale -a | grep UTF-8
 
Veremos que la opción es_ES.UTF-8 sí esta entre las que podemos tener.

Recordamos que tenemos  el sistema en Inglés para ponerlo todo en español de España (es-ES) para nuestro usuario, para ello  debemos hacer lo siguiente:
 
En la carpeta local de nuestro usuario /usr/home/NUESTRO_USUARIO agregamos lo siguiente en los archivos ocultos.  No debe hacerse como root sinó como el usuario  local que hayáis escogido.

  $ nano .login_conf

    me:\
         :charset=UTF-8:\
         :lang=es_ES.UTF-8:\
         :tc=default:

  $ nano .profile
     LANG=es_ES.UTF-8; export LANG
     MM_CHARSET=UTF-8; export MM_CHARSET

  $ nano .xinitrc
      LANG=es_ES.UTF-8; export LANG
     MM_CHARSET=UTF-8; export MM_CHARSET
     exec ck-launch-session dbus-launch mate-session  
 
Os aconsejamos que mantengáis el orden que hemos puesto en este fichero anterior; es decir, la declaración de lengua antes del inicio gráfico.    
 
Para conseguir un control más preciso de la lengua, sugerimos, ahora como usuario root, escribir lo siguiente en el fichero /etc/profile:

  # nano /etc/profile
    LANG=es_ES.UTF-8; export LANG
    MM_CHARSET=es_ES.UTF-8; export MM_CHARSET

Sé ha utilizado UTF-8 porque es el normal.
 
Teclado
 
En esta versión 14 continua sin respetar el teclado español y pasa al inglés inesperadamente, tiene toda la pinta de un Bug. Pero lo cierto es que cambia al teclado inglés sin previo aviso, y para evitarlo se indicara en las preferencias de inicio del entorno Mate de nuestro usuario que configure el teclado es, de esta forma lo activaremos cuando nos logueamos:

Haremos que el entorno gráfico Mate escoga el teclado correcto, para ello ir a:

Sistema --> Preferencias --> Personal --> aplicaciones de inicio --> agregar, y se añade una nueva orden para tener el teclado en español de la forma siguiente:

    Nombre: teclado
    ORDEN:   setxkbmap -layout 'es,es' -model pc105
 



Para poner el navegador mozilla en español,  los pasos serán los siguientes:

Primero instalar el lenguaje desde la web oficial:
 

También debéis aprovechar para agregar los diccionarios que os interesen para vuestro trabajo normal desde el navegador, en nuestro caso agregamos el español y el catalán.
 
Segundo ir al desplegable -->  Editar ---> Ajustes ---> General --> Idioma y escogeremos el español en Establecer alternativas.
 
 
 


Carpetas de usuario

 
Para crear las carpetas habituales de nuestro usuario en FreeBSD debe instalarse:

  # pkg install xdg-user-dirs

Al reiniciar el sistema y se crearán las carpetas habituales y no antes, con las direcciones correspondientes en nuestro software.
 
 

 Conexion con Dropbox y google Drive

De momento no existe ningún paquete pkg que permita la connexión con las ventanas gráficas (caja, nemo o nautilus) propias de los entornos gráficos y el servidor de este producto, por lo que aconsejamos que se haga vía navegador web, aunque sea más lento es muy sencillo y intuitivo.

El paquete rclone permite este tipo de conexiones aunque debe hacerse desde terminal por lo que no lo aconsejamos aquí. Tengase en cuenta que los usuarios de FreeBSD suelen ser muy buenos conocedores de la informática y para ellos no representa ningún problema, pero como sabéis uno de los objectivos importantes de este blog es intentar la divulgación al nivell más sencillo posible: Por tanto, aconsejamos el acceso a nuestros ficheros en la nuve a través del navegador.
 
 # pkg search rclone
 
Así se puede ver la información de este programa.


Instalar Bluetooch
 
 Normalmente, ya estará instalado en el kernel. Para activarlo seguir los pasos siguientes:

 # kldload ng_ubt
 
Os contestará que ya lo tiene.
 
kldload: can't load ng_ubt: module already loaded or in kernel

Abrimos el fichero /boot/loader.conf y lo activamos para el inicio del sistema
 
 # nano /boot/loader.conf 
 
   ng_ubt_load="YES"

Como podemos dejar los ficheros de configuración del sistema

Después de mirar diferentes webs se ponen a continuación los ficheros de configuración como los hemos dejado en nuestro sistema, aunque ya hemos ido comentando muchos aspectos a medida que hemos instalado. También se han puesto también otras opciones complementarias comentadas para que no se activen pero que os pueden servir de ayuda en caso, por ejemplo, de querer IP fija, configuración por wifi, etc. En caso de IP fija deben indicarse los servidores DNS de preferencia en el fichero /etc/resolv.conf.
 
 
a.- /etc/login.conf

  nano /etc/login.conf
 

  # En el fichero login.conf se comenta usuario russian para que no actúe y se agrega lo siguiente, de esta   forma que cada usuario nuevo que se cree ya será en español correcto:

spansih|Spanish Users Accounts:\
  :charset=
UTF-8:\
  :lang=
es_ES.UTF-8:\
  :tc=default:


Vigilad la última línea no debe tener el signo " \ "


b.- El fichero de configuración   /etc/rc.conf

# nano /etc/rc.conf


hostname="NUESTRO_USUARIO"
keymap="spanish.iso.acc.kbd"
# si se quiere configuración de red por DHCP
ifconfig_re0="DHCP"

#si se quire una IP estática, pero sobretodo mirar nombre tarjeta de red con 
# ifconfig y ponerlo donde se indica con rojo
#ifconfig_re0="inet 192.168.0.100 netmask 255.255.255.0"
#defaultrouter="192.168.0.1"

sshd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
dbus_enable="YES"
hald_enable="YES" 
lightdm_enable="YES"
# En caso de gráfica integrada  intel poner la siguiente línea y no la posterior 
kld_list="i915kms"
# En caso de gráfica integrada radeon poner la siguiente línea y no poner la anterior
kld_list="radeonkms"
lpd_enable="NO"
cupsd_enable="YES"
BATCH="yes"
devfs_system_ruleset="devfsrules_common"
avahi_daemon_enable="YES"
avahi_dnsconfd_enable="YES"
ntpd_enable="YES"
nfs_client_enable="YES"
sddm_enable="YES"
# Activar cuando se desee activar compatibilidad con linux
#linux_enable="YES" 
webcamd_enable="YES"


c.- El fichero de configuración  /boot/loader.conf

# nano /boot/loader.conf
 
# las 8 primeras líneas son para montar otros formatos.
kern.geom.label.disk_ident.enable="0"
kern.geom.label.gptid.enable="0"
fuse_load="YES"
fusefs_load="YES"
msdosfs_iconv_load="YES"
ntfs_load="YES"
kern.ipc.shmseg=1024
kern.ipc.shmmni=1024
kern.maxproc=10000
kern.ipc.shmmax=67108864
kern.ipc.shmall=32768
tmpfs_LOAD="YES"
#manejar unicode en medios extrahíbles
aio_load="YES"
libiconv_load="YES"
libmchain_load="YES"
cd9660_iconv_load="YES"
msdosfs_iconv_load="YES"
# A partir del 18 abril 2015 pide poner lo siguiente
tmpfs_LOAD="YES"
hw.ata.atapi_dma ="1"
kern.vty="vt"
atapicam_load = "YES"

Mmc_load = "YES"
Mmcsd_load = "YES"
Sdhci_load = "YES"
snd_driver_load="YES"
#Evita pantallas blancas y bloqueo del sistema, importante para pruebas
machdep.disable_mtrrs="1"
#En caso de graficas Intel
kld_list="i915kms"
snd_hda_load="YES"
ng_ubt_load="YES"
snd_emu10k1_load="YES"
 


d.- Fichero /etc/sysctl.conf

   # nano /etc/sysctl.conf
 
#security.bsd.see_other_uids=0
vfs.zfs.min_auto_ashift=12
kern.ipc.shm_allow_removed=1

# imprescindible para que el usuario pueda montar USB y otros formatos
vfs.usermount=1 
hw.snd.default_auto=0



e.- Fichero /etc/ fstab

# nano /etc/fstab

       fdesc /dev/fd fdescfs rw 0 0
        proc /proc procfs rw 0 0  

Compatibilidad con Linux

 
La compatibilidad con Linux es, sin duda alguna,  una de las grandes cualidades que ofrece Freebsd, pues permite utilizar programas nativos de Linux para que se ejecuten bajo Freebsd. Nosotros no lo hemos instalado pues no hemos tenido ninguna dificultad con el software habitual; por tanto, es mejor dejar este apartado para cuando se tenga la necesidad concreta. Para ello utiliza de forma predetermina  los programas del repositorio de Rocky Linux, susituyendo al desaparecido Centos. La distribución  GhostBSD, que sabem michisimo más que nosotros lógicamente, la instal·la por defecto, sobretodo, para mejorar los drivers que no tienen en freebsd.

Primero se instala el emulador linux vigilar debe buscarse la  última versión, ello lo podéis hacer

# pkg search linux_base-c

Instalar la versión c7

# pkg install linux_base-c7
 
 
Luego agregar en el fichero /etc/rc.conf lo siguiente:

# nano /etc/rc.conf

 linux_anable="YES"

Agregar al fichero /etc/fstab lo siguiente:

# nano /etc/fstab

 
proc /proc procfs rw 0 0
fdesc /dev/fd fdescfs rw 0 0
linprocfs /compat/linux/proc linprocfs rw 0 0
insysfs   /compat/linux/sys      linsysfs    rw            0   0


Ejecutar como a root o reiniciar el sistema que es lo mismo.

# mount -t linprocfs linproc /compat/linux/proc

# mount -t linsysfs linproc /compat/linux/sys
 
Si se comente algun error d'escritura en el fichero fstab el sistema no se iniciará con el consiguiente susto, pero no os preocupéis el sistema permite corregir este fichero fstab con el editor nano. Si no estáis seguros de su redacción lo comentáis con el símbolo # delante de la línea y ya lo corregiréis después del reinicio con entorno gráfico, que siempre es más fácil copiar y pegar otra vez, en lugar de intentar que corregir de memoria insitu.

Instalar NVIDIA

 
Primero siempre comprobar con el driver vesa instalado de origen y si funciona bien no hacer nada. Después  consultar la siguiente web para saber las que son compatibles con el sistema.  

https://wiki.freebsd.org/Graphics

Está claro que los mayores problemas que nos encontraremos en máquinas de escritorio al instalar FreeBSD será la tarjeta gráfica.

 
Segundo instalamos  nvidia-Driver

# pkg install nvidia-driver

Cargar el driver en el Kernel

 # kldload  nvidia

Agregar en el fichero  /boot/loader.conf lo siguiente para que lo inicie al poner en funcionamiento el ordenador:

# nano /boot/loader.conf

  kern.vty="vt"
  nvidia_load="YES"


Si no ha funcionado con éxito alguna de las ordenes se reinicia el sistema y se vuelve a intentar.

Si la instalación ha creado el fichero /etc/X11/xorg.conf, no debe hacerse nada más. Si no lo ha creado ejecutar:

  # X -configure
  # cp /root/xorg.conf.new /etc/X11/xorg.conf
 
 

Instalar ATI 
 
Primero siempre comprobar con el driver vesa instalado de origen y si funciona no hacer nada, pues actualmente es muy potente, en caso de que no funcione hacer lo siguiente:


Creación del fichero de configuración del sistema gráfico:
   

Instalamos el Driver ATI.

   # pkg install drm-510-kmod
gpu-firmware-kmod
 
En el fichero /boot/loader.conf  agregar:

   
  # nano /boot/loader.conf 

      kern.vty="vt"
 
  # nano  /etc/rc.conf
 
 kld_list="amdgpu radeonskms"
 
O bien:
 
kld_list="/boot/modules/amdgpu.ko"

NOTA. Para comprobar si tenemos aceleración gráfica, instalar:

  # pkg install mesa-demos

Para probar la aceleración gráfica se hace con la siguiente orden:

  # glxinfo |  grep -i render
 
Para solucionar bien los problemas con las trajetas gráficas, la mejor solución es subir un poco nuestro nivel aprendiendo a utilizar la compatibilidad con linux y utilizar sus drivers, tal como hacen la gente de GhostBSD. En este aspecto FreeBSD debería  mejorar, aunque entendemos que ellos estan dedicados a los servidores y este aspecto les es secundario.


Configuración de la red wifi 

Los portatíles modernos cada vez tienen menos elementos i entre ellos destaca la desaparición de la tarjeta de red por cable (RJ45) siendo mayoritario el uso solo de tarjetas Wireless, motivo por el cual debemos aprender a configurarlo. Nosotros como hacemos trampas siempre tenemos una tarjeta de red por cable pero conectada vía USB y así solucionamos problemas de entrada.
 
 
 
Ver el siguiente enlace para configurtar redes wifi:
 
https://www.freebsd.org/doc/handbook/network-wireless.html

Para ver si tenemos la tarjeta de red wifi agregada escribimos:

 # pciconf -lv 
 
o bien
 
  # pciconf -lv | Wireless
 
    device     = 'QCA9377 802.11ac Wireless Network Adapter'

Después:
 
# pciconf -lv | grep WiFi

 # ifconfig

ral0: flags=8843 metric 0 mtu 2290
    ether 00:1d:92:c1:21:ed
    nd6 options=21
    media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
    status: associated

wlan0: flags=8843 metric 0 mtu 1500
    ether 00:1d:92:c1:21:ed
    nd6 options=29
    media: IEEE 802.11 Wireless Ethernet OFDM/54Mbps mode 11g
    status: associated
    ssid papi channel 4 (2427 MHz 11g) bssid c4:07:2f:5a:d6:ec
    country US authmode WPA2/802.11i privacy ON deftxkey UNDEF
    AES-CCM 2:128-bit txpower 0 bmiss 7 scanvalid 60 bgscan
    bgscanintvl 300 bgscanidle 250 roam:rssi 7 roam:rate 5 protmode CTS
    roaming MANUAL

Como vemos que tenemos la tarjeta definida y no hacen falta drivers, que siempre será la situación más normal, sino deberan consultar la tarjeta y los drivers correspondientes:

Agregamos a los ficheros de configuración lo siguiente:

# nano /boot/loader.conf 
     Wlan_wep_load = "YES"        
     Wlan_ccmp_load = "YES"
     Wlan_tkip_load = "YES"
 

# nano /etc/rc.conf
 

   #configuración wifi
   wpa_supplicant_enable="YES"
   wlans_ral0="wlan0"
   ifconfig_wlan0="WPA SYNCDHCP"


Creamos el fichero si no existe /etc/wpa_supplicant.conf

  # nano /etc/wpa_supplicant.conf


 network={
    ssid="nombre_de_mi_wifi"
    psk="contraseña_de_mi wifi"
}


 
 
Vigilar con el nombre que da el sistema a la tarjeta wifi al ejecutar la orden ifconfig, debe ser el mismo que se pone aquí anteriormente en la línea: wlans_ral0="wlan0".

Para acabar:

# reboot

En cuanto se reinicie el ordenador comprobar todo és correcteo con ifconfig.


#ifconfig

ral0: flags=8843 metric 0 mtu 2290
    ether 00:1d:92:c1:21:ed
    nd6 options=21
    media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
    status: associated
lo0: flags=8049 metric 0 mtu 16384
    options=600003
    inet6 ::1 prefixlen 128
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
    inet 127.0.0.1 netmask 0xff000000
    nd6 options=21
wlan0: flags=8843 metric 0 mtu 1500
    ether 00:1d:92:c1:21:ed
    inet 192.168.0.171 netmask 0xffffff00 broadcast 192.168.0.255
    nd6 options=29
    media: IEEE 802.11 Wireless Ethernet OFDM/54Mbps mode 11g
    status: associated
    ssid nombre_de_vuestro_wifi channel 4 (2427 MHz 11g) bssid c4:07:2f:5a:d6:ec
    country US authmode WPA2/802.11i privacy ON deftxkey UNDEF
    AES-CCM 2:128-bit txpower 0 bmiss 7 scanvalid 60 bgscan
    bgscanintvl 300 bgscanidle 250 roam:rssi 7 roam:rate 5 protmode CTS
    roaming MANUAL 
 
 
Tarjeta de sonido
 
Vamos a configurar  la tarjeta de sonido.

Primero veamos si està cargada en el kernel con la orden
 
# kldload snd_emu10k1
 
kldload: can't load snd_emu10k1: module already loaded or in kernel
 
Como se puede ver, en este caso está perfectamente reconocida, esta situación es buena porque nos indica que nuestro sistema es estandart y no tenemos que configurar tarjetas más complicadas.
 
Para que se cargue al inicio del sistema agregamos a /boot/loader.conf

# nano /boot/loader.conf
 
snd_emu10k1_load="YES"

Comprobamos si tenemos cargado el driver correpondiente
 
# kldload snd_driver

kldload: can't load snd_driver: module already loaded or in kernel
 
Vemos que está correctamente cargado podemos comprobar la tarjeta de sonido. 
 
Veamos las tarjetas de sonido que tenemos  para comprobar que todo esté correcto.
 
# cat /dev/sndstat

Installed devices:
pcm0: <Realtek ALC235 (Internal Analog)> (play/rec) default
pcm1: <Realtek ALC235 (Left Analog)> (play/rec)
pcm2: <Intel Kaby Lake (HDMI/DP 8ch)> (play)

La default es la cero (pcm0), por lo tanto es la que debemos activar.
 
Agregamos al fichero /etc/sysctl.conf
 
# nano /etc/sysctl.conf
 
hw.snd.default_auto=0
  
 
Activar nuestra webcam

# nano /boot/loader.conf

     cuse_load="YES"
 

# nano /etc/rc.conf

    webcamd_enable="YES"
 
 
# kdload  cuse
 
kldload: can't load cuse: module already loaded or in kernel
 
# service webcamd start
 
Starting webcamd.
 
# pkg install cheese
 
 

NOTA. Hasta aquí nustra explicación, se ha hecho lo más completa posible para que pueda servir de ayuda. Está claro que por separado podemos obtener toda la información que aquí se pone junta, però hemos intentado recopilar todo lo más importante para que simplifique la instalación a los no conocedores de FreeBSD. Hemos seguido mucho la información de la propia FreebSD en español (https://docs.freebsd.org/es/) Quiza el punto más complicado es ir viendo el porque de los ficheros de configuración que aquí no se comenta, pero responden al trabajo continuado de consulta y experimentación.
 
 
Veamos ahora las órdenes básicas que debemos conocer
 

Primero veamos si tenemos:

# du -hs /var/cache/pkg/

Para a eliminar los paquetes obsoletos:

# pkg clean

 
PKG para actualizar el sistema
 
 
# pkg update -f
# pkg upgrade

Para buscar programas de la base de datos del servidor de programas, no hace falta poner el texto exacto o entero, él busca coincidencias con el texto que escribimos. Por ejemplo:

# pkg search libre

Os mostrará entre otros:


es-libreoffice-5.2.6   <--  es language pack para libreoffice

Per instalar programes:

# pkg install nombre_paquete


Para borrar un paquete instalado:

# pkg remove nombre_paquete

Para borrar los paquetes innecesarios  después de borrar una aplicación:

# pkg autoremove

Para obtener información detallada de un paquete:

# pkg info nombre_paquete

Nota final informativa.

Para este trabajo se han utilizando dos portátiles MSI: uno con una placa Intel, gráfica integrada Intel y chipset Intel, no hemos encontrado problemas de reconocimiento hardaware, solemos utilizar este tipo de placas porque son muy estandart.  Y el otro MSI RYZEN 5000 con tarjeta AMD RADEON, que si ha dado más problemas  de configuración y drivers, pero una vez resueltos, ya no ha habido mayor dificultad. Además hemos puesto una tarjeta de red cableada realtek conectada vía USB, pues estos portátiles  solo  disponen de tarjeta wifi y se prefiere conexión por cable, que no dan problemas de reconocimiento.

Recordamos que nunca utilizamos máquinas virtuales para hacer pruebas, pues nos gusta que los resultados sean lo mas exactos y reales posibles y, como trabajamos con discos conectados vía USB, no necesitamos desmontar nuestros portátiles.  Además esta propuesta permite trabajar durante mucho tiempo con cada distribución hasta que los resultados son comparables con las otras distribuciones. Sabemos sobradamente que los probadores normalmente utilizan máquinas virtuales pero continuamos prefiriendo sistemas reales para nuestras pruebas.