Fuente
https://www.daemonology.net/blog/2020-05-22-my-new-FreeBSD-laptop-Dell-7390.html
Dell Latitude 7390 Intel i5 8th Gen
CPU: Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz (L3 cache 6M)
FreeBSD/SMP: Multiprocessor System Detected: 8 CPUs
Memoria 16 GB RAM
Disco 500 GB Pcie M.2 Nvme
Una pantalla 13.3" 1920x1080 (non-touch)
Intel(R) Wireless WiFi based driver for FreeBSD
iwm0: Intel(R) Dual Band Wireless AC 8265
Una Bateria 60 W-hour
Instalación
Enlace de descargas de FreeBSD
Elija la arquitectura correcta para su sistema, por lo regular, amd64
Descargar una imagen completa para grabar en una memoria USB
Grabar la imagen utilizando disk destroyer (dd)
$ xunz FreeBSD-13.1-RELEASE-amd64-memestick.img.xz
$ sudo dd if=./FreeBSD-13.1-RELEASE-amd64-memestick.img of=/dev/sdx status=progress
$ sudo pkg install eject
$ rehash
$ sudo eject /dev/sdx
Antes de instalar
- Deshabilitar arranque seguro desde la BIOS
- Habilitar el arranque USB
- Seleccione el dispositivo de arranque en el momento del inicio
Iniciar instalación
FreeBSD tiene un instalador controlado por menús que guía al usuario a través de varios pasos:
1. establecer mapa del teclado
2. establecer nombre de host
3. seleccionar conjuntos
Hay muchos conjuntos para elegir. Los nuevos usuarios probablemente quieran instalarlos todos. Por lo general, solo instalo el lib32 establecer y agregar el resto más tarde.
Particionado
bsdinstall facilita la partición de sus unidades. La opción Auto (ZFS) es probablemente lo que desea.
En el Auto (ZFS) menú, para una instalación de un solo disco duro. Seleccione su disco duro.
Si quiere el cifrado de disco completo, seleccione el Encrypt Disks opción.
También aumente el tamaño de intercambio swap. El tamaño del intercambio igual a la RAM física (16 GB en este caso).
Si seleccionó Encrypt Disks, también debe seleccionar Encrypt Swap
Cuando haya terminado, continúe con la instalación. Recibirá un mensaje de confirmación que le preguntará si desea destruir el disco que seleccionó. Esta es tu última oportunidad de volver atrás.
Si seleccionó Encrypt Disks se le presentará una solicitud de contraseña. Esta es la contraseña de cifrado del disco, no una contraseña de usuario.
Espere a que se instalen los conjuntos
Configurar usuario raíz
Después de instalar los conjuntos, establecerá una contraseña de root.
Configuración de red
Si su tarjeta inalámbrica es compatible, todas las partes difíciles ya están listas. Si su tarjeta inalámbrica no es compatible, conecte un cable ethernet para compilar los controladores en el kernel.
Seleccione su tarjeta (em0 ethernet, las tarjetas wifi llevan el nombre de sus controladores)
Si elige wifi, el instalador buscará redes y le dará un menú para seleccionar una. Si la red está encriptada, se le presentará una solicitud de contraseña.
Configuración de fecha y hora
Configuración de servicio
Se le presentará un menú que habilita/deshabilita servicios al iniciar el sistema. Seguramente no desea local_unbound.
Configuración de seguridad
El siguiente menú habilita/deshabilita las funciones de seguridad seleccione
disable_sendmail y clear_tmp
Agregar usuarios
Simplemente agregue su usuario y agregar lo al grupo wheel si planea usar sudo.
Configuré mi shell en tcsh, cambiaré a zsh más adelante.
Configuración final
Cuando haya terminado, aplique la configuración y salga.
Reiniciar
# reboot
Configuración manual
Antes de reiniciar el sistema y salir del instalador, se le brinda una última oportunidad para realizar cualquier configuración manual pero rara vez es necesario para el usuario de escritorio.
Inicie sesión como root y actualice el sistema:
# freebsd-update fetch
# freebsd-update install
# reboot
Apagar el pitido de la consola
# echo kern.vt.enable_bell=0 >> /etc/sysctl.conf
Instalar paquetes
# pkg bootstrap
# pkg update
# pkg install vim
# pkg install sudo
# visudo
En esta línea quitar la almohadilla (#) para permitir al grupo wheel realizar acciones como root.
# %wheel ALL=(ALL:ALL) ALL
Interfaz gráfica de usuario
Esto varía dependiendo de su GPU.
# pkg install drm-kmod
Después de instalar este paquete, verá un mensaje sobre cómo habilitar el controlador para su hardware específico:
For amdgpu: kld_list="amdgpu"
For Intel: kld_list="i915kms"
For radeonkms: kld_list="radeonkms"
Para habilitar uno de estos, deberá agregar una línea a su /etc/rc.conf. Cuanto antes coloque esta línea en el archivo, antes se cargarán los kmods.
Cargar el controlador de video Intel:
sysrc kld_list=i915kms
Para cargar el kmod ahora, ejecute
kldload i915kms
También deberá agregar su usuario no root al grupo video
# pw groupmod video -m carlos
Instalar Xorg
# pkg install xorg
Entorno de escritorio
# sysrc dbus_enable="YES"
# service dbus start
# pkg install -y plasma5-plasma
# pkg install -y konsole
# pkg install -y xf86-video-intel
# pkg install -y sddm
# pw groupmod video -m carlos
# pkg install -y plasma5-sddm-kcm
# pkg install -y sddm-freebsd-black-theme
# printf 'proc\t/proc\tprocfs\trw\t0\t0\n' >> /etc/fstab
# printf 'fdesc\t/dev/fd\tfdescfs\trw\t0\t0\n' >> /etc/fstab
# sysrc sddm_enable="YES"
Xorg, que use dispositivos expuestos a través de libinput (es decir, el touchpad)
# cp /usr/local/share/X11/xorg.conf.d/40-libinput.conf \
/usr/local/etc/X11/xorg.conf.d/
Sonido
Para que el sonido vaya a los altavoces de forma predeterminada, y cambie a la toma de auriculares y silenciar los altavoces automáticamente si conecto los auriculares.
# echo 'hint.hdaa.0.nid33.config="as=1 seq=15"' >> /boot/loader.conf
Un error en el códec HDMI genera advertencias molestas una solución alternativa que permite silenciar las advertencias:
# echo 'compat.linuxkpi.i915_disable_power_well="0"' >> /boot/loader.conf
Teclas control volumen
Fn+F1 silenciar, Fn+F2 bajar volumen, Fn+F3 subir volumen
Que el cargador de arranque sólo espere 2 segundos en caso de que quiera cambiar la forma en que arranque, y que el kernel de FreeBSD no espere a los dispositivos USB antes de montar el sistema de archivos raíz (sé que mi sistema de archivos raíz está en el disco Nvme):
# echo 'autoboot_delay="2"' >> /boot/loader.conf
# echo 'hw.usb.no_boot_wait="1"' >> /boot/loader.conf
# ntpdate y ntp /etc/rc.conf
ntpd_enable="YES"
ntpd_config="/etc/ntp.conf"
netwait_enable="YES"
Tomar el control del brillo de la pantalla con las teclas Fn+Up, Fn+Down
# pkg install intel-backlight
# echo 'acpi_video_load="YES"' >> /boot/loader.conf
# cp /usr/local/share/examples/intel-backlight/acpi-video-intel-backlight.conf \
/usr/local/etc/devd/
Reiniciar
# reboot
Otros paquetes
# sudo pkg install coreutils emacs gcc gmake firefox libreoffice thunderbird \
chromium automake libtool vlc obs-studio htop
Si instala un entorno de escritorio grande, la mayoría de las aplicaciones también se incorporan. Si no, siempre puede usar xargs para obtener cientos de gigabytes de programas:
Listar los paquetes que coincidan con kde
$ sudo pkg search kde | cut -d ' ' -f 1
Instalar los paquetes que coincidan con kde
$ sudo pkg search kde | cut -d ' ' -f 1 | xargs sudo pkg install -y
A veces, los escritorios se comportan de forma inesperada en FreeBSD (es decir, los usuarios no pueden administrar la configuración de energía, reiniciar el sistema, etc.). Asegúrese de que su usuario de inicio de sesión esté en el grupo de wheel y la mayoría de los problemas se resolverán. Para los usuarios que no desea en el grupo de wheel, deberá escribir algunas reglas de polkit.
Además, los escritorios grandes generalmente se compilan sin los componentes gráficos para modificar las conexiones de red.
Shells
FreeBSD usa tcsh(1) como shell predeterminado e incluye sh(1) para compatibilidad similar a Bourne
Instalar zsh con Oh-my-zsh
$ sh -c "$(curl -fsSL \
https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Redes
# /etc/rc.conf
ifconfig_em0="ether e4:b9:7a:6b:96:cd"
wlans_iwm0="wlan0"
cloned_interfaces="lagg0"
ifconfig_lagg0="laggproto failover laggport em0 laggport wlan0 SYNCDHCP"
create_args_wlan0="country ES regdomain ETSI"
ifconfig_wlan0="WPA"
wpa_supplicant_program="/usr/sbin/wpa_supplicant"
defaultroute_delay="0"
background_dhclient="YES"
Las interfaces de red se configuran clásicamente usando ifconfig(8). Si desea que una interfaz de red persista durante los reinicios, agregue la información en /etc/rc.conf.
WiFi se gestiona con wpa_supplicant
$ dmesg|grep -i wireless
Intel(R) Wireless WiFi based driver for FreeBSD
iwm0: <Intel(R) Dual Band Wireless AC 8265> mem 0xef100000-0xef101fff at \
device 0.0 on pci2
Archivo /etc/wpa_supplicant FreeBSD
Encriptar password de la contraseña wifi
$ wpa_passphrase MikroTik-39F9C1 contraseñawifi
psk=c35edacaf6c649c6df522451c801f98e918bc376d335d0dedd686770dad7f6c0
Para utilizar la versión de puertos de WPA Supplicant en lugar de la base, agregue
wpa_supplicant_program="/usr/sbin/wpa_supplicant" a /etc/rc.conf
$ cat /etc/rc.conf|grep wpa_supplicant | grep wpa_supplicant
wpa_supplicant_program="/usr/sbin/wpa_supplicant"
Aspecto final del archivo wpa_supplicant
$ cat /etc/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="MikroTik-39F9C1"
scan_ssid=1
psk=c35edacaf6c649c6df522451c801f98e918bc376d335d0dedd686770dad7f6c0
}
Gestión de paquetes
Hay dos formas principales de administrar software: paquetes binarios y puertos. No los mezcle si no sabe lo que está haciendo, puede causar problemas.
Para ser breve: los puertos son como Gentoo. Pasas mucho tiempo viendo la salida del compilador. Los siguientes programas ayudan: synth, portmaster, poudriere
para ser detallado: Guía rápida sobre el uso del sistema de administración de paquetes binarios:
pkg update
pkg upgrade
pkg search foobar
pkg install foobar
pkg remove foobar
pkg autoremove
Proceso General de Actualización
pkg update
pkg upgrade
freebsd-update upgrade -r 13.1-RELEASE
freebsd-update fetch
reboot
freebsd-update install
pkg update
pkg upgrade
freebsd-update install
reboot
Sistema de archivos
La jerarquía de FreeBSD es ligeramente diferente a la de un sistema Linux. Consulte man hier(7) para obtener más información.
La mayor diferencia es que FreeBSD es un sistema organizado lógicamente. En FreeBSD, el sistema está más organizado. Por ejemplo:
/bin contiene todo lo necesario para iniciar el sistema y /sbin contiene todo lo necesario para la administración fundamental.
/usr/bin contiene casi todo lo demás
/usr/local contiene todo lo instalado por el sistema de administración de paquetes.
Los programas instalados por el usuario se configuran en /usr/local/etc. Puede ser confuso al principio, pero lo dominarás.
Esta separación lógica puede causar confusión al compilar software desde la fuente en FreeBSD, pero no es demasiado difícil de resolver si ya conoce las opciones del enlazador y la modificación del archivo MAKE.
Montar unidades fat32
Crear directorio de montaje
# mkdir /media/usbFAT32
Montar usb fat32 como usuario carlos
% mount -t msdosfs /dev/da0p2 /media/usbFAT32
Montar un dispositivo conectado via usb fs linux ext4
Instalar paquetes
# pkg install fusefs-ext2 fusefs-lkl
Verificar nombre del dispostivo
% gpart show da0
=> 2048 976771087 da0 GPT (466G)
2048 362371072 1 linux-data (173G)
362373120 40960000 2 ms-basic-data (20G)
403333120 573440015 - free - (273G)
Montar el dispositivo sistema de ficheros ext4 /dev/da0p1
% lklfuse -o type=ext4,rw /dev/da0p1 /media/linuxEXT4/
Automount montar sistemas de ficheros automáticamente.
Cuando se llama sin opciones, el comando automount analiza el auto_master(5) archivo de configuración y cualquier mapa directo al que haga referencia, y monta o desmonta los sistemas de archivos autofs(5) para que coincidan. Estas opciones están disponible
-D Definir una variable. Solo es útil con -L.
-L No montar ni desmontar nada.
-c Vaciar cachés, descartando información posiblemente obsoleta obtenida
de mapas y servicios de directorio.
-f Forzar desmontar, para ser usado con -u.
-o Especifique las opciones de montaje que se utilizarán junto con las
especificadas en los mapas. Solo es útil con -L.
-u Intenta desmontar los sistemas de archivos montados por automountd.
-At Para desmontar todos los montajes de autofs use unmount -At
-v Aumentar la verbosidad.
Instalar automount
# pkg install automount
# cp /usr/local/etc/automount.conf.sample /usr/local/etc/automount.conf
Esta archivo contiene una linea que permite al usuario montar particiones que el sistema reconozca
El demonio de la cámara web ya está instalado (kde5 lo incorpora como una dependencia), para habilitado y que el usuario carlos pueda acceder a él:
# echo 'cuse_load="YES"' >> /boot/loader.conf
# sysrc webcamd_enable="YES"
# pw groupmod webcamd -m carlos
$ pkg info
FreeBSD es genial!.