Aprenderemos a instalar FreeeBSD como máquina de escritorio con entorno gráfico Mate. No es conveniente utilizar esta magnifica distribución Unix sin tener un mínimo de experiencia con las ordenes básicas pues todo se hace desde terminal. También irá bien la práctica en el uso de otras distribuciones Linux aunque resulta un
poco diferente. Avisamos que no se han probado otros entornos gráficos
por lo que no los podemos aconsejar, aunque entendemos que se han de
poder utilizar. Nos gusta Mate o xfce por su enorme seguridad y larga
experiencia con prácticamente el mismo entorno, de esta forma no
agregamos problemas innecesarios.
Instalación de XORG
En un principio también es conveniente trabajar con la tarjeta gráfica de la placa base, ya que las actuales procesadores Intel dan un funcionamiento correcto y sin problemas de configuración con los Drivers gráficos libres.
# pkg install xorg nano drm-kmod
# nano /etc/rc.conf
hald_enable="YES"
dbus_enable="YES"
kld_list="i915kms"
Reiniciar el sistema y después probar el entorno gráfico con la orden:
# startx
# X -configure
# cp xor.conf.new /etc/X11/xorg.conf
- Mate y mate-desktop, los dos programas para instalar el entorno gráfico Mate completo.
Activamos sudo para el usuario sudo escogido en la instalación en el fichero /etc/sudoers:
exec ck-launch-session dbus-launch mate-session
Ahora ya estamos en condiciones de entrar al entorno gráfico Mate y trabajar desde él.
$ startx
# pkg install mate-indicator-applet
# pkg install checkmate
# pkg install urwfonts webfonts comfortaa-ttf gnu-unifont gofont-ttf inconsolata-ttf liberation-fonts-ttf sourcecodepro-ttf
Instalación de java
kern.ipc.shm_allow_removed=1
# pkg install icedtea-web openjdk8-jre
Instalación de Cups (controladores de impresoras)
# pw usermod root -G cups
Esto modifica el fichero /etc/group en el que se ha agregado lo siguiente:
Ir a:
Sistema --> Preferencias --> Personal --> aplicaciones de inicio --> agregar y 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
Herramientas de sistema
# lspci
# pkg install fuse fuse-utils fusefs-ntfs fusefs-ext2 e2fsprogs
# nano /boot/loader.conf
fuse_load="YES"
Si aún no lo habéis puesto antes, se escribe lo siguiente en el archivo /etc/fstab:
# nano /etc/fstab
# pw usermod NUESTRO_USUARIO -G operator
# 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 i 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
Creamos el fichero /etc/devfs.rules, pues no existe, con el siguiente contenido:
# nano /etc/devfs.rules
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
Para montar formato ntfs tenemos una explicación precisa que podéis ver en este mismo blog.
# pkg install vlc es-libreoffice 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 pdfarranger audacity peazip-gtk2 simple-scan pinta krita
- 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.
Podemos bajar las fuentes no libres (msttcorefonts.tgz) de los enlaces siguientes, mejor el segundo:
Ejecutar como root
# mkdir /usr/local/lib/X11/fonts/
# cd /home/mi_usuario/Bajadas
# cp msttcorefonts.tgz /usr/local/lib/X11/fonts/
# cd /usr/local/lib/X11/fonts/
# tar -zxvf msttcorefonts.tgz
Finalmente para activarlas ejecutar:
# fc-cache -f -v
Slim
#pkg install slim
Agregamos al fichero /etc/rc.conf lo siguiente para activar este gtk:
# nano /etc/rc.conf
slim_enable="YES"
me:\
MM_CHARSET=UTF-8; export MM_CHARSET
exec ck-launch-session dbus-launch mate-session
# nano /etc/profile
LANG=es_ES.UTF-8; export LANG
MM_CHARSET=es_ES.UTF-8; export MM_CHARSET
En caso de encontrar algún problema con locales, aunque nosotros no lo hemos tenido, puede agregarse lo siguiente en este mismo archivo anterior /etc/profile:
GDM_LANG=es_ES.UTF-8; export GDM_LANG
MM_CHARSET=es_ES.UTF-8; export MM_CHARSET
LC_ALL=es_ES.UTF-8; export LC_ALL
LC_COLLATE=es_ES.UTF-8; export LC_COLLATE
LC_CTYPE=es_ES.UTF-8; export LC_CTYPE
LC_NUMERIC=es_ES.UTF-8; export LC_NUMERIC
LC_MESSAGES=es_ES.UTF-8; export LC_MESSAGES
LC_MONETARY=es_ES.UTF-8; export LC_MONETARY
LC_TIME=es_ES.UTF-8; export LC_TIME
SLIM_LANG=es_ES.UTF-8; export SLIM_LANG
se ha utilizado UTF-8 porque es el normal.
Teclado
Para hacer esto des de el entorno Mate, Ir a:
Sistema --> Preferencias --> Personal --> aplicaciones de inicio --> agregar y se añade el teclado en español de la forma siguiente:
Nombre: teclado
ORDEN: setxkbmap -layout 'es,es' -model pc105
Primero instalar el lenguaje desde la web oficial:
Carpetas de usuario
# pkg install xdg-user-dirs
Al reiniciar el sistema y se crearan las carpetas habituales y no antes, con las direcciones correspondientes en nuestro software.
Instalar Bluetooch
Compatibilidad con Linux
# pkg search linux_base-c
# nano /etc/rc.conf
linux_anable="YES"
Agregar al fichero /etc/fstab lo siguiente:
# nano /etc/fstab
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
Instalar NVIDIA
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.
# 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 exito 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
Creación del fichero de configuración del sistema gráfico:
# X -configure
# cp xorg.conf.new /etc/X11/xorg.conf
Instalamos el Driver ATI.
# pkg install xf86-video-ati
En el fichero /boot/loader.conf agregar:
# nano /boot/loader.conf
kern.vty=vt
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
# nano /etc/login.conf
#Se comenta usuario russian y se agrega lo siguiente de 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"
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"
slim_enable="YES"
lpd_enable="NO"
cupsd_enable="YES"
BATCH="yes"
snmpd_enable="YES"
snmpd_flags="-a"
snmpd_conffile="/usr/local/share/snmp/snmpd.conf /etc/snmpd.conf"
snmptrapd_enable="YES"
snmptrapd_flags="-a -p /var/run/snmptrapd.pid"
devfs_system_ruleset="devfsrules_common"
avahi_daemon_enable="YES"
avahi_dnsconfd_enable="YES"
ntpd_enable="YES"
nfs_client_enable="YES"
sddm_enable="YES"
linux_enable="YES"
sndiod_enable="YES"
sndiod_flags="-a on"
performance_cx_lowest="Cmax"
economy_cx_lowest="Cmax"
dnsmasq_enable="YES"
#linux_enable="YES" # Activar cuande se desee activar compatibilidad con linux
webcamd_enable="YES"
c.- El fichero de configuración /boot/loader.conf
# nano /boot/loader.conf
fuse_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 extrahibles
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 seguiente
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"
snd_hda_load="YES"
snd_emu10k1_load="YES"
d.- Fichero /etc/sysctl.conf
# nano /etc/sysctl.conf
vfs.zfs.min_auto_ashift=12
kern.ipc.shm_allow_removed=1
vfs.usermount=1
hw.snd.default_unit=0
kern.ipc.shmmax=67108864
kern.ipc.shmall=32768
kern.sched.preempt_thresh=224
kern.maxfiles=200000
hw.syscons.bell=0
net.inet.ip.random_id=1
e.- Fichero /etc/ fstab
# nano /etc/fstab
fdesc /dev/fd fdescfs rw 0 0
proc /proc procfs rw 0 0
tmpfs /compat/linux/dev/shm tmpfs rw,mode=1777 0 0
/dev/acd0 /cdrom cd9660 rw,noauto 0 0
#linproc /compat/linux/proc linprocfs rw 0 0
Configuración de la red wifi
https://www.freebsd.org/doc/handbook/network-wireless.html
Para ver si tenemos la tarjeta de red wifi agregada escribimos:
# pciconf -lv
# pciconf -lv | Wireless
Después:
# 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
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 le da el sistema a la tarjeta wifi al ejecutar la orden ifconfig, debe ser el mismo que se pone aquí en: wlans_ral0="wlan0"
Para acabar:
# reboot
En quanto 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
kldload: can't load snd_driver: module already loaded or in kernel
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)
# nano /etc/rc.conf
# pkg install cairo-dock
Sistemas -- aplicaciones de inicio -- agregar:
Nombre: Cairo
Orden: Cairo-dock
#reboot
# du -hs /var/cache/pkg/
# pkg clean
# 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
Los
llamados puertos instalan programas por compilación directa y el
proceso es un poco más largo, actualmente no es necesario porque pkg funciona
perfectamente en todos los casos. Aunque hay muchos profesionales que
les gusta compilar ellos mismos sus programas, actualmente lo
consideramos totalmente innecesario para los usuarios normales y expertos.
1.- Descargar puertos comprimidos
# portsnap fetch
2.- Extraer puertos
# portsnap extract
Las dos ordenes anteriores pueden escribirse al mismo tiempo
# portsnap fetch extract
3.- Para actualizar puertos
# portsnap update
4.- Para instalar cualquier programa desde puertos
por ejemplo flash player
# cd /usr/ports/www/linux-flashplayer
# make install clean
5.- Para borrar desde puertos
# cd /usr/ports/www/linux-flashplayer
# make clean
Nota final,
en nuestro caso estamos utilizando la siguiente placa base Intel con
varios discos y concretamente FreeBSD se està arrancando desde un disco
connectado vía USB.
Host bridge: Intel Corporation Comet Lake-U v1 4c Host Bridge/DRAM Controller VGA compatible controller: Intel Corporation CometLake-U GT2 [UHD Graphics] Signal processing controller: Intel Corporation Comet Lake Thermal Subsytem
USB controller: Intel Corporation Comet Lake PCH-LP USB 3.1 xHCI Host Controller
RAM memory: Intel Corporation Comet Lake PCH-LP Shared SRAM
Network controller: Intel Corporation Comet Lake PCH-LP CNVi WiFi
Serial bus controller: Intel Corporation Serial IO I2C Host Controller
Communication controller: Intel Corporation Comet Lake Management Engine Interface
Serial bus controller: Intel Corporation Comet Lake Serial IO I2C Host Controller
erial bus controller: Intel Corporation Device 02c6
PCI bridge: Intel Corporation Comet Lake PCI Express Root Port #9
Audio device: Intel Corporation Comet Lake PCH-LP cAVS
SMBus: Intel Corporation Comet Lake PCH-LP SMBus Host Controller
Serial bus controller: Intel Corporation Comet Lake SPI (flash) Controller
Non-Volatile memory controller: Micron Technology Inc Device 5404
Como
podéis comprobar se trata de un portátil MSI con una placa Intel y con
ella no hemos encontrado problemas de reconociemiento hardaware.
Solemos utilizar este tipo de placas lo más estandart posible.
Como hacemos muchas pruebas, solemos utilizar los discos de sistema connectados vía USB
3 hasta que consideramos que los resultados son del todo extrapolables
en nuestro trabajo normal hasta que no encontramos ninguna diferencia
con los otros sistemas linux que utilizamos. Al trabajar vía USB no hace
falta desmontar nada. Asímismo trabajamos a la vez con muchas
distribuciones y siempre podemos comparar mejor los resultados.
Nunca
utilizamos nunca máquinas vurtuales para hacer pruebas pues nos gusta
que los resultados sean lo más exactos y reales posibles y como
trabajamos vía USB no las necesitamos. Sabemos sobradamente que los
probadores utilizan máquinas virtuales.