
Linux puede parecer un mundo enorme y algo intimidante cuando llegas desde Windows o macOS, pero detrás de esa primera impresión hay un sistema tremendamente flexible, eficiente y con una potencia brutal tanto en el escritorio como en servidores y la nube. Dominar unos cuantos trucos de software para Linux marca la diferencia entre usarlo “a lo justo” y sacarle un rendimiento profesional en tu día a día.
Hoy en día Linux apenas roza unos pocos puntos de cuota en el escritorio, pero domina de forma aplastante la infraestructura de Internet, los servicios en la nube y buena parte del desarrollo profesional. Eso no es casualidad: es libre, abierto, muy seguro, tiene una línea de comandos potentísima y gestores de paquetes que hacen que instalar y mantener software sea cómodo incluso en cientos de equipos. En este artículo vas a encontrar una recopilación amplia de comandos, atajos y trucos prácticos -tanto básicos como avanzados- para que puedas aprovechar al máximo tu distribución Linux, ya sea Ubuntu, Fedora, Debian, Arch o cualquier otra.
Comandos esenciales de Linux que deberías dominar
La verdadera fuerza de Linux está en la terminal: una interfaz en forma de línea de comandos donde escribes instrucciones que el sistema ejecuta al instante. Aunque tengas un entorno gráfico muy pulido, casi todo lo que haces con ratón y ventanas se traduce internamente en comandos. Entenderlos te da velocidad, control y opciones que la GUI ni se sueña.
Un comando no es más que un programa o utilidad que se invoca tecleando su nombre, opcionalmente acompañado de flags (opciones) y argumentos (parámetros). Los flags suelen ir precedidos de - o -- y modifican el comportamiento del comando; los argumentos son normalmente rutas de archivos o directorios, aunque también pueden ser direcciones IP, usuarios, textos, etc.
Para abrir la terminal en la mayoría de distribuciones basta con pulsar Ctrl + Alt + T o buscar “Terminal” en el menú de aplicaciones. A partir de ahí, ve probando estos comandos clave y su página de ayuda interna con la opción --help o usando el manual integrado con man.
Un truco muy útil es combinar flags y encadenar comandos usando tuberías (|) y redirecciones (>, >>), aunque en este artículo nos centraremos sobre todo en las herramientas básicas y en ejemplos claros que puedas probar nada más terminar de leer.
Gestión de archivos y navegación por el sistema
Lo primero que necesitas en Linux es saber moverte por el sistema de archivos y manipular carpetas y documentos sin miedo. Con unos cuantos comandos tendrás el control total sin necesidad de abrir el explorador gráfico.
Para listar el contenido del directorio actual se utiliza ls. Sin opciones muestra archivos y carpetas de forma sencilla, pero con flags como -l (vista detallada) o --color=auto podrás distinguir tipos de archivos de un vistazo. Mucha gente configura un alias para que siempre pinte colores, por ejemplo: alias ls="ls --color=auto".
Los alias son atajos que sustituyen una palabra por un comando completo. Con alias puedes crear abreviaturas comodísimas, como alias ll="ls -lah" para tener una lista detallada y legible. Si en algún momento quieres eliminar un alias de tu sesión, unalias nombre_alias lo borra al instante.
Para saber en qué carpeta estás en cada momento entra en juego pwd, que imprime la ruta absoluta de tu directorio de trabajo. Y para cambiar de ubicación se usa cd: puedes pasarle rutas absolutas (por ejemplo, cd /home/usuario/Documentos) o relativas (como cd ../Videos). Atajos como cd sin nada para ir a tu carpeta personal, cd .. para subir un nivel o cd - para saltar al directorio anterior te ahorran muchos tecleos.
Copiar, mover, crear y borrar archivos también es un clásico de la terminal. Con cp origen destino duplicas ficheros, y si añades -r copias directorios completos de forma recursiva. El comando mv te permite mover o renombrar elementos: mv archivo.txt nueva_carpeta/ o mv viejo.txt nuevo.txt en el mismo sitio. Para crear directorios nuevos utilizas mkdir nombre, y si necesitas generar una estructura completa de subcarpetas de golpe, mkdir -p padre/hijo/2026/ lo hace del tirón.
Cuando toque borrar, mucho cuidado con rm. Con rm archivo eliminas un fichero, con rm -r carpeta/ una carpeta vacía o con subdirectorios, y con rm -rf puedes arrasar un árbol entero sin pedir confirmación. Es poderosísimo, pero un error de ruta o un espacio mal puesto pueden tirarse por tierra un día entero de trabajo.
Lectura, búsqueda y manipulación rápida de texto
Buena parte del trabajo en Linux gira en torno a archivos de texto: logs del sistema, configuraciones, scripts, código… Por eso hay un arsenal de herramientas pensadas para ver, filtrar y analizar texto de forma ultrarrápida desde la consola.
Para echar un vistazo rápido a un archivo sencillo mucha gente usa cat, que muestra el contenido por pantalla. En ficheros más largos, lo práctico es tirar de less, que te permite desplazarte hacia arriba y abajo, buscar dentro del archivo y salir con la tecla q. Para consultar solo el principio o el final tienes head y tail, que por defecto muestran 10 líneas, aunque con -n puedes ajustar el número que quieras.
La joya de la corona al buscar patrones en texto es grep. Con grep "cadena" archivo.log obtienes solo las líneas que contengan esa cadena, y puedes añadir flags como -i para ignorar mayúsculas/minúsculas o -c para contar coincidencias en vez de mostrarlas. Combinado con tuberías, por ejemplo dmesg | grep error, es una herramienta brutal para depurar o localizar problemas.
Cuando quieres localizar ficheros por nombre en un árbol de directorios entra en escena find. La forma típica es algo como find ./ -type f -name "*.py", que devuelve todos los archivos Python a partir del directorio actual. También puedes buscar por tipo, tamaño, fecha y un largo etcétera, lo cual viene muy bien para auditorías rápidas del sistema.
Si lo que necesitas es un resumen de tamaño y contenido puedes utilizar wc, que cuenta líneas, palabras y bytes de un archivo. Por ejemplo, wc -w documento.txt te dice cuántas palabras tiene, mientras que sin flags te muestra líneas, palabras y tamaño en bytes de golpe.
Permisos, seguridad básica y ejecución de programas
Uno de los pilares de la seguridad en Linux son los permisos de archivos. Cada fichero determina qué puede hacer el propietario, el grupo y el resto de usuarios: leer (r), escribir (w) o ejecutar (x). El comando clave para modificar esto es chmod, que permite, por ejemplo, dar permiso de ejecución a un script con chmod +x script.sh.
Cuando un archivo es ejecutable y está en el directorio actual, se suele lanzar con la notación ./, como en ./script.sh o ./instalador.run. Ese ./ indica explícitamente que coja el ejecutable de la carpeta donde estás, algo que por seguridad no se hace por defecto al teclear solo el nombre del archivo.
Para tareas administrativas vas a ver continuamente el comando sudo, abreviatura de “superuser do”. Sirve para ejecutar un comando con privilegios de administrador, por ejemplo para instalar software (sudo apt install nombre_paquete) o editar configuraciones del sistema. Al usarlo te pedirá tu contraseña, y su uso responsable es clave para no destrozar nada crítico.
Otro aspecto importante es la gestión de contraseñas de usuario. Con passwd cambias la clave de la cuenta actual (o de otra, si eres administrador y usas sudo passwd usuario). El sistema te pedirá la contraseña antigua y que repitas la nueva para confirmar, así que ojo con no equivocarte, porque si pierdes la contraseña luego hay que meterse en modos de recuperación.
Si en algún momento quieres asegurarte de que un archivo sea prácticamente irrecuperable, existe el comando shred, que sobreescribe su contenido varias veces antes de borrarlo. Al ejecutarlo sobre un documento sensible, como shred -u secreto.txt, dejas la recuperación de datos muy, muy complicada incluso con herramientas forenses.
Gestión de procesos, recursos y conectividad
Linux brilla cuando se trata de administrar procesos y recursos, ya sea en un sobremesa, un portátil o un servidor remoto. Con unas pocas utilidades sabrás qué está pasando en tu máquina en todo momento y podrás matar aplicaciones rebeldes sin despeinarte.
Para ver qué procesos tiene tu sesión actual en marcha puedes usar ps, que te lista PID, TTY, tiempo de CPU y comando ejecutado. Si quieres algo más completo e interactivo, top o su versión vitaminada htop te presentan una vista en tiempo real del uso de CPU, memoria y procesos, con la posibilidad de ordenar, filtrar y matar procesos directamente desde la interfaz.
Cuando una aplicación se queda congelada y ni el entorno gráfico responde, kill te rescata. Puedes enviar una señal de terminación a un proceso con kill PID (usando el ID que ves en ps o top) o, en algunos casos, por nombre de binario, como kill firefox. Ten en cuenta que matar procesos a lo loco puede suponerte perder trabajo no guardado.
Para los problemas de red, el comando estrella clásico es ping. Con ping dominio.com o ping 8.8.8.8 compruebas si tienes conectividad hacia un host concreto, el retardo y si hay pérdida de paquetes. Es una forma rápida de descartar si el problema está en tu equipo, en tu red o en el servidor remoto.
Y si necesitas descargar archivos desde Internet por terminal, wget es una navaja suiza: con una simple orden como wget https://servidor/archivo.zip descargas ficheros HTTP, HTTPS o FTP sin abrir el navegador. Tiene montones de flags para descargas recursivas, reintentos, limitación de velocidad, etc., muy útiles para scripts y automatizaciones.
Instalación de software y mantenimiento del sistema
Uno de los grandes atractivos de GNU/Linux es su sistema de paquetes, que te permite instalar, actualizar y eliminar programas desde repositorios oficiales con un solo comando. Dependiendo de tu distribución usarás apt, yum, dnf o pacman, pero la idea es la misma.
En sistemas basados en Debian o Ubuntu lo habitual es trabajar con apt. Para instalar un programa bastaría con sudo apt install gimp, para actualizar la lista de paquetes sudo apt update y para actualizar todo el sistema sudo apt upgrade. En Fedora o derivados de Red Hat el papel equivalente lo juega yum o dnf, y en Arch Linux es pacman con sintaxis como sudo pacman -S nombre_paquete.
En muchas distribuciones tienes también herramientas específicas para gestionar aspectos como los controladores propietarios. En Ubuntu, por ejemplo, en la sección “Software y actualizaciones” encontrarás la pestaña “Controladores adicionales” para elegir entre drivers libres o propietarios para la tarjeta gráfica, algo clave si quieres sacarle el máximo partido a juegos y aplicaciones 3D.
Otra pieza clave del mantenimiento es la configuración del arranque, especialmente si convives con varios sistemas operativos. El gestor GRUB suele configurarse automáticamente, pero si quieres ajustar el orden de los sistemas, los nombres que aparecen en el menú o el tiempo de espera, puedes echar mano de herramientas como Grub Customizer en Ubuntu, accesible tras añadir su PPA, actualizar e instalar el paquete correspondiente.
Si te preocupa la utilización de la partición de intercambio (SWAP) en equipos con suficiente RAM, es posible afinarla editando /etc/sysctl.conf y ajustando parámetros como vm.swappiness o vm.vfs_cache_pressure. Reducir el valor de swappiness hace que el sistema tarde más en usar SWAP, descargando algo el disco a costa de aprovechar más la memoria física.
Atajos de teclado, consola y trucos de productividad
Linux no es solo comandos en crudo, también hay muchos atajos pensados para ir más rápido tanto en la terminal como en el entorno gráfico. Aprender unos pocos multiplica tu fluidez en el sistema.
Dentro de la terminal, el historial es tu mejor amigo. Con las flechas arriba y abajo recorres los comandos anteriores, con history obtienes una lista numerada de todo lo que has ejecutado, y con Ctrl + R puedes buscar de forma interactiva en ese historial solo tecleando parte del comando. Además, pulsar Tab sirve para autocompletar rutas y nombres de comandos, muy útil para evitar errores de escritura.
Un truco curioso: si escribes un espacio antes de un comando, muchas configuraciones de shell evitan guardarlo en el historial, ideal cuando ejecutas algo que prefieres que no quede registrado. Y si en algún momento quieres borrarlo por completo, un history -c limpia los registros de la sesión actual.
A nivel de entorno gráfico, las distribuciones GNU/Linux suelen ofrecer escritorios virtuales desde hace años, lo que te permite separar tareas en distintos espacios de trabajo. Puedes activar y configurar estos escritorios en las opciones de apariencia o ventanas, y moverte entre ellos con combinaciones tipo Ctrl + Alt + Flechas, además de enviar ventanas de uno a otro para ordenar tu flujo de trabajo.
También puedes definir atajos personalizados para acciones frecuentes, como lanzar un comando concreto, abrir una aplicación o incluso ejecutar utilidades como xkill para cerrar a la fuerza una ventana que no responde. En las preferencias de teclado de la mayoría de entornos puedes añadir un nuevo atajo, escribir el comando (por ejemplo xkill) y asignar la combinación de teclas que quieras.
Trucos específicos para Ubuntu y personalización del escritorio
Ubuntu es una de las distribuciones más populares precisamente porque facilita la vida tanto a quien llega de nuevas como a quien ya lleva años con Linux. Además de los comandos generales, tiene una buena colección de ajustes y herramientas gráficas para adaptar el sistema a tu gusto.
Uno de los primeros pasos recomendables es revisar la gestión de actualizaciones. En el panel “Software y actualizaciones” puedes elegir cada cuánto se comprueban nuevas versiones, si quieres que te avise solo de parches de seguridad o también de mejoras generales, o si permitir actualizaciones de versiones LTS a LTS, por ejemplo. Con esto ajustas el equilibrio entre estabilidad y novedades.
En versiones con Unity o con barras laterales similares, puedes decidir dónde se muestra el lanzador de aplicaciones. Aunque por defecto suele estar a la izquierda, con un comando tipo gsettings set com.canonical.Unity.Launcher launcher-position Bottom puedes moverlo a la parte inferior, y volviendo a poner Left lo regresas a su ubicación original.
Ubuntu también permite configurar qué programas se inician automáticamente al arrancar el sistema. Buscando “Aplicaciones al inicio” puedes activar o desactivar servicios que se cargan por defecto y añadir otros nuevos, ya sea un reproductor de música, un cliente de mensajería o un script propio. Incluso puedes usar este sistema para cosas tan curiosas como reproducir un sonido de inicio lanzando un comando como /usr/bin/canberra-gtk-play --description="GNOME Login".
En cuanto a personalización visual, herramientas como Unity Tweak Tool o equivalentes te dejan cambiar temas, iconos, comportamiento del panel, esquinas activas, disposición de áreas de trabajo y un largo etcétera. Aunque la interfaz de Ubuntu es bastante usable de serie, estos ajustes te ayudan a dejarla exactamente como te apetece.
Si trabajas en portátil, no olvides revisar las opciones del touchpad en el panel de “Ratón y panel táctil”. Gestos como el scroll con dos dedos o clics en esquinas específicas suelen estar disponibles y, si no vienen activados por defecto, se pueden habilitar ahí para hacer la experiencia mucho más llevadera.
Consolas virtuales, HUD y mito de que “Linux es solo para expertos”
Una característica curiosa de muchas distribuciones GNU/Linux es el uso de consolas virtuales: varias sesiones de terminal en modo texto corriendo en paralelo al entorno gráfico. Puedes saltar entre ellas con combinaciones como Ctrl + Alt + F1, Ctrl + Alt + F2, etc., y volver al entorno gráfico con la tecla de función que corresponda (a menudo F7 o F1, según la distro).
En algunos escritorios antiguos como Unity se introdujo además el HUD, una herramienta que permite ejecutar acciones dentro de aplicaciones simplemente escribiendo lo que quieres hacer. Pulsando la tecla correspondiente (como Alt) se abría un cuadro en el que escribías, por ejemplo, “Imprimir” o “Guardar como” y la acción se lanzaba sin navegar por menús, algo muy cómodo para quienes prefieren el teclado.
Sobre la dificultad de Linux, sigue habiendo mitos bastante extendidos. No, no es un sistema exclusivo para programadores ni hace falta ser administrador de sistemas para moverse con soltura. Distribuciones como Ubuntu o Linux Mint ofrecen una experiencia muy similar a otros sistemas de escritorio, con tiendas de aplicaciones gráficas, asistentes y paneles de configuración muy claros.
Tampoco es cierto que no haya software disponible. Hoy en día hay navegadores, suites ofimáticas, editores de imagen y vídeo, plataformas de juegos y un sinfín de herramientas de código abierto o comerciales portadas a Linux. Y cuando no existe exactamente el mismo programa que usabas en Windows, casi siempre hay alternativas igual de potentes.
En cuanto a seguridad, Linux parte con una base muy robusta gracias a su modelo de permisos, la separación clara entre usuario normal y administrador, y a que la comunidad responde rápido a vulnerabilidades. Eso no significa que sea invulnerable, pero con una configuración sensata y manteniendo el sistema actualizado, el nivel de protección es muy alto.
Automatización, scripting y tareas programadas
Cuando ya te sientes cómodo en Linux, el siguiente salto lógico es empezar a automatizar tareas repetitivas. Aquí entran los scripts de shell, el programador de tareas cron y herramientas de administración remota como ssh.
Un script de shell no es más que un archivo de texto con comandos que se ejecutan uno detrás de otro. Creas el archivo, le das permisos de ejecución con chmod +x y lo lanzas con ./. De esta manera puedes encadenar copias de seguridad, descargas, limpiezas de logs o cualquier cosa que harías manualmente.
Para que un script se ejecute solo a horas concretas se usa cron. Editando tu crontab con crontab -e, puedes añadir líneas con la sintaxis adecuada (minuto, hora, día, mes, día de la semana y comando) para que, por ejemplo, una copia de seguridad se lance todos los días a las 2 de la madrugada. Luego puedes revisar lo programado con crontab -l.
Cuando necesitas administrar otros equipos de forma remota, ssh es la herramienta reina. Te permite iniciar sesión en servidores, ejecutar comandos, copiar archivos con scp o montar túneles cifrados. Es tan habitual en entornos profesionales que prácticamente cualquier distribución viene con soporte listo o fácil de instalar.
En el mundo Ubuntu también se ha experimentado con aplicaciones convergentes como las de Ubuntu Touch, pensadas para correr tanto en móviles como en escritorio. Desde los repositorios adecuados puedes instalar algunas de esas apps y probar esa filosofía de “un mismo programa adaptado a distintas pantallas”.
Lo que convierte a Linux en una herramienta tan potente no es solo su estabilidad o su seguridad, sino la cantidad de pequeños trucos, comandos y opciones de personalización que puedes ir incorporando poco a poco. Desde los básicos como cd, ls, grep o sudo, hasta ajustes de GRUB, gestión de SWAP, atajos de teclado, escritorios virtuales o automatización con cron, todo suma para que el sistema se adapte a ti y no al revés. Cuanto más lo uses y más curiosidad tengas por probar cosas nuevas, más notarás ese salto de pasar de “usuario que se apaña” a alguien que realmente exprime Linux a fondo en su día a día.
