Guias

10 comandos básicos de Linux que todo usuario debe saber

TL;DR — Lo que vas a tener al final

  • Tiempo de setup: 30 minutos a 2 horas dependiendo de la complejidad del entorno.
  • Requisitos: Acceso root, Linux moderno, conexión a internet para descargar dependencias.
  • Resultado: Servicio funcional y estable, documentado paso a paso.
  • Troubleshooting: Logs estándar en /var/log/, comandos de verificación al final de cada sección.

Por qué estos 10 comandos

Si vienes de Windows o macOS, la terminal de Linux puede intimidar. Pero la realidad es que con 10 comandos puedes hacer el 90% de las tareas cotidianas. Esta guía te enseña esos 10 comandos con ejemplos prácticos.

Todos los ejemplos funcionan en Ubuntu, Debian, Fedora, Arch y derivados.

1. ls — listar archivos

El comando más básico. Lista archivos en el directorio actual.

ls
# archivo1.txt  documento.pdf  mi_carpeta  script.sh
# Con detalles
ls -l
# -rw-r--r-- 1 user user 1234 Jan 15 10:30 archivo1.txt
# drwxr-xr-x 2 user user 4096 Jan 15 09:15 mi_carpeta
# Incluyendo archivos ocultos (los que empiezan con .)
ls -a
# Tamaño legible para humanos
ls -lh
# Ordenar por tamaño
ls -lhS

Tip: ls -lah es el combo más usado (lista + detalles + ocultos + tamaño legible).

2. cd — cambiar directorio

Navega entre carpetas.

cd mi_carpeta              # entrar a subcarpeta
cd /etc/nginx             # ruta absoluta
cd ~                       # ir al home del usuario actual
cd ..                      # subir un nivel
cd -                       # volver al directorio anterior
cd /var/log                # cualquier ruta absoluta

Tip: cd sin argumentos va a tu home. cd - es muy útil para alternar entre dos directorios.

3. pwd — dónde estoy

Imprime la ruta completa del directorio actual. Simple pero útil.

pwd
# /home/tu_usuario/documentos/proyectos

4. mkdir — crear directorios

mkdir mi_carpeta                           # crear una
mkdir -p proyectos/2026/web/frontend      # crear estructura completa
mkdir -m 755 carpeta_publica               # con permisos específicos

Tip: la opción -p (parents) crea toda la estructura de directorios de una vez.

5. cat, less, head, tail — leer archivos

Cuatro comandos para ver contenido de archivos de texto.

# cat: imprime todo el archivo
cat archivo.txt
# less: ver página por página (útil para archivos largos)
less /var/log/syslog
# (q para salir, /texto para buscar, espacio para avanzar)
# head: primeras 10 líneas
head archivo.txt
head -n 50 archivo.txt     # primeras 50
# tail: últimas 10 líneas
tail archivo.txt
tail -n 50 archivo.txt     # últimas 50
tail -f /var/log/syslog     # modo "follow" - actualiza en tiempo real

Tip: tail -f es esencial para monitorear logs en vivo.

6. cp, mv — copiar y mover

# Copiar
cp archivo.txt copia.txt                    # archivo
cp archivo.txt /tmp/                        # a otra carpeta
cp -r carpeta/ backup_carpeta/             # directorio completo
cp -i archivo.txt copia.txt                 # preguntar antes de sobrescribir
# Mover / renombrar
mv archivo.txt nuevo_nombre.txt            # renombrar
mv archivo.txt /tmp/                       # mover
mv carpeta/ /home/tu_usuario/               # mover directorio

Tip: mv también funciona para renombrar — no hay comando “rename” separado.

7. rm — borrar (con cuidado)

ADVERTENCIA: rm no tiene papelera de reciclaje. Lo que borras, se va para siempre.

rm archivo.txt                # archivo
rm -i archivo.txt             # con confirmación
rm -r carpeta/                # directorio y contenido
rm -rf /tmp/cache/*           # recursivo + force (recursivo obligatorio para directorios)
rm -rf /                      # ⚠️ NUNCA HAGAS ESTO

Tip de seguridad: agrega un alias a tu ~/.bashrc para que rm siempre pida confirmación:

alias rm='rm -i'

8. grep — buscar texto

Busca patrones dentro de archivos o salida de otros comandos.

# Buscar palabra en archivo
grep "error" archivo.log
# Case-insensitive
grep -i "error" archivo.log
# En múltiples archivos (recursivo)
grep -r "TODO" /home/user/proyectos/
# Mostrar archivos que contienen (sin el contenido)
grep -l "password" /etc/*.conf
# Contar coincidencias
grep -c "error" archivo.log
# Contexto: líneas antes y después
grep -A 3 -B 3 "error" archivo.log
# Invertir (mostrar líneas que NO contienen)
grep -v "ok" archivo.log
# Pipe: filtrar salida de otros comandos
ps aux | grep nginx
cat /var/log/syslog | grep -i "failed"

Tip: combina grep con pipes | para filtrar la salida de cualquier comando.

9. sudo — ejecutar como administrador

Linux es seguro por diseño: no operas como root a menos que necesites. sudo te da privilegios de root temporalmente.

sudo apt update                     # ejecutar como root
sudo !!                              # repetir último comando con sudo
sudo -i                              # abrir shell root (cuidado)
sudo systemctl restart nginx         # reiniciar servicio
sudo !!                              # atajo útil: repite último cmd con sudo

Tip: si te sale “permission denied”, casi siempre es porque necesitas sudo al inicio.

10. chmod — cambiar permisos

Cada archivo tiene permisos para owner, group, others: read (r=4), write (w=2), execute (x=1).

# Hacer un script ejecutable
chmod +x script.sh
# Permisos numéricos (común en servidores)
chmod 755 archivo          # rwxr-xr-x
chmod 644 archivo          # rw-r--r-- (default archivos)
chmod 600 archivo          # rw------- (privado)
chmod 777 archivo          # rwxrwxrwx (⚠️ NUNCA uses 777)
# Cambiar owner
sudo chown user:group archivo
# Cambiar recursivamente
chmod -R 755 /var/www/html
sudo chown -R www-data:www-data /var/www/html

Los permisos numéricos:

  • 7 = rwx (lectura + escritura + ejecución)
  • 6 = rw- (lectura + escritura)
  • 5 = r-x (lectura + ejecución)
  • 4 = r– (solo lectura)
  • 0 = — (nada)

Patrón común para archivos web: 644 para archivos, 755 para directorios.

Preguntas frecuentes

¿Por qué 10 comandos básicos de Linux que todo usuario debe saber es relevante para sysadmins Linux?

Forma parte del flujo diario de administración. Los conceptos explicados se aplican directamente a servidores en producción y resuelven problemas reales que enfrentan sysadmins hispanohablantes.

¿Qué necesito para empezar con 10 comandos básicos de Linux?

Distribución Linux actualizada (Debian, Ubuntu, RHEL, Fedora o Arch), acceso root, y conexión a internet. Para producción: entorno de staging separado antes de aplicar cambios.

¿Cuáles son los errores más comunes con 10 comandos básicos de Linux?

Los tres más frecuentes: (1) saltar la lectura de logs, (2) aplicar cambios directos en producción sin probar, (3) olvidar permisos y ownership. La documentación y un plan de rollback siempre.

¿Cuándo usar 10 comandos básicos de Linux y cuándo una alternativa?

Esta solución es ideal para el caso descrito. Alternativas como Docker, Ansible o configuración manual pueden ser mejores según contexto: portabilidad, escala y reproducibilidad son los factores clave.

¿Cómo migro desde una configuración previa a 10 comandos básicos de Linux?

Documentar el estado actual, probar la nueva configuración en staging, validar funcionalmente, y aplicar en producción con rollback plan listo. Los posts de SoyLinux incluyen troubleshooting para los problemas más comunes.

Lee también

Alfonso Moreno | Sysadmin Senior

Soy Alfonso, sysadmin senior con RHCE y más de 10 años administrando sistemas Linux para empresas y proyectos personales. Me especializo en infraestructura, redes, virtualización, monitoring, automation y self-hosting. Sobre SoyLinux.com SoyLinux.com es un blog técnico en español sobre Linux, software libre y self-hosting. Lo mantengo en mi tiempo libre. Áreas de expertise - Linux server administration: RHEL, CentOS, Rocky, Alma, Fedora, Debian, Ubuntu - Network services: Postfix, BIND, Samba, NFS, Squid - Virtualización y containers: KVM, Proxmox, Docker, Podman - Monitoring: Prometheus, Grafana, Zabbix - Automation: Ansible, Bash scripting - Self-hosting: Vaultwarden, Nextcloud, Jellyfin, Immich, Homelab Contacto - Email: [email protected]

2 thoughts on “10 comandos básicos de Linux que todo usuario debe saber”

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *