Comandos de Linux — Teoría, Diccionario y Quiz

Videos recomendados

Teoría esencial

¿Quién creó Linux?

Linux (el kernel) fue creado por Linus Torvalds en 1991, inspirado en MINIX. Publicó la primera versión del kernel ese año y lo liberó bajo licencia GPLv2. Hoy Linux es mantenido por una comunidad global, con Torvalds como mantenedor principal.

Tipos de Linux (distribuciones y sabores)

En la práctica hablamos de distribuciones (distros): sistemas que combinan el kernel Linux con herramientas (GNU, systemd, etc.), un gestor de paquetes y configuraciones. Aquí un mapa rápido:

Por familia / gestor de paquetes

  • Debian / Ubuntu (DEB, APT): Debian, Ubuntu (LTS/normal), Linux Mint, Pop!_OS.
  • Red Hat (RPM, DNF/YUM): Red Hat Enterprise Linux (RHEL), Fedora, CentOS Stream, AlmaLinux, Rocky Linux.
  • SUSE (RPM, Zypper): openSUSE Leap/Tumbleweed, SUSE Linux Enterprise (SLES/SLED).
  • Arch (pacman): Arch Linux, Manjaro, EndeavourOS.
  • Gentoo (Portage): Gentoo, Calculate Linux (compilación desde código, muy flexible).
  • Alpine (apk): Alpine Linux (ligera, popular en contenedores; usa musl y busybox).

Por propósito

  • Escritorio: Ubuntu, Linux Mint, Fedora Workstation, KDE neon, elementary OS.
  • Servidor: Ubuntu Server (LTS), RHEL, AlmaLinux/Rocky, SUSE Linux Enterprise, Debian Stable.
  • Contenedores/Cloud: Alpine Linux, Fedora CoreOS, Flatcar Container Linux.
  • Seguridad/forense: Kali Linux, Parrot OS.
  • Embarcados/IoT: Raspberry Pi OS, OpenWrt, proyectos con Yocto (meta-distro).

Modelo de lanzamientos

  • LTS (soporte prolongado): versiones estables con soporte de 3–10 años (ej.: Ubuntu LTS, RHEL, SLES).
  • Rolling release: actualizaciones continuas (ej.: Arch, openSUSE Tumbleweed, Manjaro).

Init y escritorios

  • Init: systemd (predominante), OpenRC (Alpine/Gentoo), runit o s6 (distros minimalistas).
  • Entornos de escritorio: GNOME, KDE Plasma, Xfce, LXQt, Cinnamon, MATE (afectan apariencia y consumo de recursos).

Nota: técnicamente “Linux” es el kernel; el sistema completo suele llamarse GNU/Linux por integrar herramientas del proyecto GNU.

Linux es un sistema operativo tipo Unix. Su uso se centra en la terminal, donde ejecutamos comandos que interactúan con el sistema de archivos, procesos, permisos y red.

  • Sistema de archivos: jerárquico, raíz /. Directorios clave: /home, /etc, /var, /usr.
  • Permisos: lectura (r), escritura (w), ejecución (x) para usuario, grupo y otros. Numéricos (755) o simbólicos (u+rwx,g+rx,o+rx).
  • Redirecciones y pipes: > (sobrescribir), >> (anexar), | (conectar salida-entrada).
  • Procesos y servicios: listar ps, monitorear top, servicios con systemctl.
  • Paquetes: apt (Debian/Ubuntu), dnf/yum (Fedora/RHEL), pacman (Arch).

Editores en consola

nano (fácil)

  • Abrir archivo: nano fichero.txt
  • Guardar: Ctrl+O · Salir: Ctrl+X
  • Buscar/Reemplazar: Ctrl+W / Alt+R
  • Cortar/pegar línea: Ctrl+K / Ctrl+U
  • Números de línea: nano -c fichero.txt

vim (potente)

  • Modos: Normal (comandos), Insert (i), Visual.
  • Guardar / salir: :w, :q, :wq, :q!
  • Movimiento: gg (inicio), G (fin), /texto (buscar), n/N (siguiente/anterior)
  • Edición: i insertar, dd borrar línea, yy copiar, p pegar, u deshacer
  • Números de línea: :set number

Comandos clave en servidores

  • Usuarios y permisos: crear adduser NOMBRE, sudoers usermod -aG sudo NOMBRE, cambiar clave passwd, propietario chown usuario:grupo ruta, permisos chmod 640 archivo.
  • Actualizaciones y paquetes: Debian/Ubuntu sudo apt update && sudo apt upgrade, Fedora/RHEL sudo dnf upgrade; instalar apt install paquete / dnf install paquete.
  • Servicios (systemd): estado systemctl status nginx, iniciar/detener systemctl start|stop nginx, reiniciar systemctl restart, habilitar al arranque systemctl enable.
  • Logs: unidad journalctl -u nginx --since "1 hour ago", en vivo journalctl -fu nginx.
  • Red: IPs ip addr, rutas ip route, puertos ss -tulpen, prueba ping, transferencia scp/rsync.
  • Firewall: UFW ufw enable, permitir SSH ufw allow 22/tcp; firewalld firewall-cmd --add-service=http --permanent & --reload.
  • Procesos y recursos: top/htop, buscar por nombre ps aux | grep nombre, matar kill -9 PID, memoria free -h.
  • Disco y archivos: uso global df -h, por carpeta du -h --max-depth=1 ., discos lsblk, montar mount/umount, empaquetar tar -czf backup.tgz carpeta/.
  • Búsqueda: archivos find /var -name "*.log", en texto grep -R "patrón" ruta.
  • Tareas programadas: crontab -em h dom mon dow comando.
  • SSH seguro: generar clave ssh-keygen, copiar clave ssh-copy-id usuario@host, conectar ssh usuario@host.

Diccionario de datos (comandos)

Comando
Descripción
Ejemplo

Descargas

01 Taller 1 — Comandos Bash (Linux): práctica guiada de navegación y gestión de archivos/carpetas (ls, pwd, cd), CRUD de directorios/archivos (mkdir, mv, rm, cp, touch) y visualización con tree; entrega con capturas y breve explicación por comando.

02 Taller 2 — Permisos: lectura de permisos con ls -l, significado de r/w/x y tipos (archivo, directorio, enlace, etc.), representación numérica/simbólica y uso de chmod (opciones -R, -v, -c, -f), además de cambio de propietario/grupo con chown; evidencias con capturas.

03 Taller 3 — Comandos del sistema: información del sistema (uname -m, hostname), procesos (top, kill), red (ping) y mantenimiento con APT (apt update, apt list --upgradable, apt upgrade, instalar/quitar paquetes, autoremove, autoclean); se documenta cada paso.

4.1 Instalación/Desinstalación — Chrome y Edge: descarga del .deb con wget, instalación con dpkg -i y resolución de dependencias con apt --fix-broken install; desinstalar con apt remove/purge. Alternativa: Gestor de Software.

4.2 Instalación/Desinstalación — Visual Studio Code: vía .deb (descarga oficial, dpkg -i y apt -f install) o vía repositorio de Microsoft (agregar clave/repositorio, apt install code); desinstalación con remove/purge y limpieza.

4.3 Instalación/Desinstalación — XAMPP: descarga del instalador desde Apache Friends, permisos de ejecución (chmod +x) y ejecución del .run; manejo con /opt/lampp/lampp start|status|restart|stop y panel manager-linux; desinstalación eliminando /opt/lampp. Incluye notas de respaldo/restauración de htdocs y bases de datos.

Material de clase. Coloca los archivos en /downloads/.

Cuestionario

En este cuestionario probaras tus nuevas habilidades en gestionar los comandos de linux.


Banco de 25 preguntas. Cada intento selecciona 5 al azar.