Este primer contacto resulta porque según internet el mejor sistema operativo que se puede usar en un USB booteable es «FEDORA workstation».
NOTA: Para mi se puede usar cualquier Linux en un usb booteable y todos funcionan bien. (Pero nunca había usado Fedora y la curiosidad mato al gato…)
NOTA2: Todos los comandos empiezan por «#» y «$» este no se copia, es solo que el símbolo significa que lo esta ejecutando con un tipo de usuario: («$»: Usuario Normal) y («#»: Usuario Root/admin).
PASO 01: Creacion del usb booteable.
Pendiente… (Demasiado básico para perder el tiempo ahora.)
PASO 02: Instalación de FEDORA en usb booteable.
Pendiente… (Lo único que cambia, es seleccionar el segundo USB como disco completo.)
PASO 03: Puesta a punto del sistema operativo FEDORA.

Este sistema operativo utiliza «dnf» como gestor de paquetes y para actualizar debemos aprender lo básico sobre dnf.
Dnf check-update
«Check-update»: se encarga de sincronizar los repositorios para detectar que programas tienen actualizaciones.
dnf info «Nombre_paquete»
«Info»: Se encarga de ofrecer la informacion sobre el programa que se ha solicitado.
dnf search «Nombre_paquete»
«Search»: buscara todos los programas en los repositorios con el mismo o que contenga el nombre introducido.»
Sudo dnf upgrade
«Upgrade»: se encarga de actualizar todos los programas y en caso de querer actualizar solo uno se debera poner el nombre del paquete.
Sudo dnf install «Nombre_paquete»
«Install»: Instala el programa solicitado.
Sudo dnf remove «Nombre_paquete»
«remove»: Elimina o desinstala del SO el programa solicitado
Sudo dnf autoremove
«AutoRemove»: Elimina paquetes o dependencias que los programas instalados/Eliminados o actualizados ya no requieren.
NOTA: Los que empiezan por "Sudo" son comandos que requieren permisos con privilegios, estos no funcionaran sin el sudo(sudo se encarga de abrir el comando o programa con privilegios).
NOTA-02: El Gestor de paquetes "DNF" actualmente DNF5 tiene un montón de plugins que nos facilitan las cosas. (Core_plugins) (Extras_plugins)
NOTA-03: Para tener el soporte de idioma español, hay que descargar lo siguiente: "sudo dnf install langpacks-es"
Paso 04: Cambiar Nombre_de_Equipo.

Para los que gestionamos redes, los nombres de equipos nos ahorran mucho trabajo y para que nuestro Router/Firewall detecte este nombre de equipo hay que cambiar el «HOSTNAME».
$ hostnamectl
Nos permite ver una lista de datos del equipo y sistema operativo.(«Static hostname:» este es el nombre de equipo)
$ sudo hostnamectl set-hostname «NEW-HOSTNAME»
Este comando nos permite cambiar el hostname desde la terminal.
Paso 05: Gestión de usuario (Seguridad informática)

Este paso es una costumbre antigua que tengo y se trata de Crear 2 usuarios (Con y sin permisos root) y deshabilitar el usuario admin.
Lo primero sera crear los 2 usuarios ademas de asignarles una password, estos serán «usuario1/123456» y «usuario1adm/adm123456».
$ sudo useradd -m usuario1
$ sudo passwd usuario1
$ sudo useradd -m usuario1adm
$ sudo passwd usuario1adm
Una vez creados los usuarios y con password. Procedemos a asignar permisos de administrador
$ sudo usermod -aG wheel usuario1adm
NOTA: El «usuario1» no debe ser añadido en este grupo con permisos root.
NOTA02: Para comprobar que funcionen bien, se puede acceder a las terminales para su logueo con las teclas Ctrl+Alt+F3,F4,F5.
Ahora que ya tenemos los usuarios creados y se ha comprobado que funcionan, procedemos a deshabilitar la cuenta «Root» y eliminar la cuenta creada en la instalación.
$ sudo passwd -l root (Esto deshabilita la cuenta root)
El siguiente paso sera eliminar la cuenta creada en la instalación del sistema operativo.
$ sudo userdel -r nombre_antiguo_usuario
Y con esto ya queda completado. (En el siguiente paso cuento varias formas de abrir con permisos.)
Paso 06: Ejecutar con permisos root.

Ahora que usaremos para acceder al entorno gráfico un usuario que no tiene permisos «root/admin» tenemos que buscar una forma de poder ejecutar privilegios para poder instalar, desinstalar o hacer cosas que no tengamos permisos.
Obtener permisos:
$ su «NombreUsuarioConPermisos»
Esto nos permite loguear con ese usuario que si tiene permisos y que la sesión en la terminal no sea desconectada hasta hacer un «exit» o cerrarla.
$ su «NombreUsuarioConPermisos» -c «Comando»
Este comando nos permite ejecutar un comando como si fuéramos otro usuario, por lo cual si usamos «Sudo» nos pedirá y confirmara la contraseña 2 veces y ejecutara el comando con privilegios.
Instalar «.rpm» desde la interfaz grafica.
Al intentar abrir un rpm desde la interfaz grafica, el sistema detecta que tu usuario no tiene permisos y aparece una pantalla solicitando permisos root.
Paso 07: Instalación de Visual Studio Code
Tengo la manía de usar VSCode para todo, en windows puedes tener el «editor de textos» que permite una rapida modificacion de archivos no binarios y aun así yo seguiré usando vscode.
Paso 08: Instalación de codecs multimedia y repositorios RPM Fusion
Por las políticas de fedora en sus repositorios no contiene drivers y programas privados, por esa razón añadiremos los repositorios Fusión.
Repositorios Fusion:
Sirve para instalar programas, controladores (drivers) y códecs que Fedora no incluye por defecto en sus repositorios oficiales debido a restricciones legales de patentes o a su estricta filosofía de incluir únicamente software libre y de código abierto (FOSS).
Para añadir el nuevo repositorio y instalar el grupo multimedia usaremos los siguientes comandos.
Comando para añadir el Repositorio Fusión
# sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
Comando para instalar el grupo de apps/drivers Multimedia
# sudo dnf group install multimedia
Paso 09: Configuración de Flatpak y Flathub
Aunque fedora incluye Flatpak, cuando añadimos Flathub amplia enormemente el catalogo de aplicaciones de escritorio (Discord,Spotify,Steam,Zoom y etc…) que se instalan de forma aislada e independiente de las dependencias del sistema.
# flatpak remote-add –if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
Este comando utiliza Flatpak para añadir un repositorio remoto, en este caso Flathub repo.
Paso 10: Herramientas esenciales para Gestión de redes y terminal
Para los SysAdmin o CyberSeguridad este paso es instalar herramientas clave de diagnostico, escaneo y monitoreo.
# sudo dnf install nmap wireshark htop net-tools git curl wget
Este comando instala los siguiente programas:
| Herramienta | ¿Para qué sirve? (Función principal) | Casos de uso comunes |
Nmap | Escáner de red y auditoría de seguridad. Descubre dispositivos conectados a una red y analiza qué puertos y servicios tienen abiertos. | • Identificar qué equipos están vivos en una subred. • Detectar puertos abiertos y versiones de software vulnerables. • Auditar la seguridad de un servidor. |
Wireshark | Analizador de tráfico de red (Packet Sniffer). Captura e inspecciona a fondo los paquetes de datos que viajan a través de una interfaz de red en tiempo real. | • Diagnosticar problemas de red o lentitud. • Inspeccionar el contenido no cifrado de una conexión. • Analizar protocolos de red para ingeniería inversa o ciberseguridad. |
Htop | Monitor interactivo de procesos y recursos. Muestra en tiempo real el consumo de CPU, memoria RAM, SWAP y la lista de procesos activos del sistema. | • Ver qué programa está ralentizando la computadora o servidor. • Finalizar (kill) procesos colgados de forma rápida e intuitiva. • Monitorear el uso de núcleos de CPU individuales. |
Net-Tools | Conjunto clásico de herramientas de red en Linux (incluye comandos tradicionales como ifconfig, netstat, route o arp). | • Consultar la IP de una interfaz (ifconfig).• Ver las conexiones de red activas y puertos a la escucha ( netstat).• Administrar la tabla de enrutamiento del sistema ( route). |
Git | Sistema de control de versiones distribuido. Registra los cambios en archivos de código a lo largo del tiempo y facilita el trabajo en equipo. | • Guardar el historial de cambios de un proyecto de software. • Crear ramas (branches) para probar funciones sin romper el código principal. • Sincronizar código con plataformas como GitHub o GitLab. |
Curl | Herramienta para transferir datos con servidores usando múltiples protocolos (HTTP, HTTPS, FTP, etc.) desde la línea de comandos. | • Probar peticiones a APIs REST (GET, POST, PUT, DELETE). • Inspeccionar cabeceras HTTP de una página web ( curl -I).• Enviar formularios o archivos desde la terminal o scripts. |
Wget | Gestor de descargas para la terminal. Diseñado para descargar archivos grandes o sitios web completos mediante HTTP, HTTPS y FTP. | • Descargar archivos en segundo plano sin interrumpirse si se cae la red. • Clonar/respaldar una página web completa para verla sin internet. • Automatizar la descarga masiva de archivos vía scripts. |
Nota: Desplegar el comando para mas información sobre los programas.
Paso 11: Personalización del entorno de escritorio (GNOME Tweaks y Extensiones)
Adaptar la interfaz para trabajar más cómodo. Permite modificar el comportamiento de las ventanas, ajustar la apariencia y añadir funcionalidades como ver el uso de red en la barra superior o minimizar ventanas al hacer clic.
# dnf install gnome-tweaks gnome-shell-extension-appindicator
Paso 12: Personalización de la terminal (ZSH)
En Construcción…
Recomendaciones Navegador Web (Firefox)
Extensiones:
- NoScript (Tener en cuenta exportar y guardar cada X meses una copia, para poder importar en nuevos dispositivos.)(Sigo buscando alguna forma de vincularlo a una base de datos en mi homelab pero no encuentro nada…)
- Adblock Plus (FreeVersion)
