04 Ago

Este documento proporciona una referencia rápida y esencial de los comandos más utilizados en la terminal Linux para la administración de sistemas. Cubre desde la gestión de servicios y usuarios hasta operaciones con archivos, permisos y procesos, optimizado para facilitar la consulta y el aprendizaje.

Gestión de Servicios del Sistema

El comando sudo systemctl se utiliza para controlar y gestionar servicios (también conocidos como demonios) en sistemas que emplean systemd.

Comando: sudo systemctl

Sintaxis: sudo systemctl [comando] servicio

  • enable: Habilita el servicio para que se inicie automáticamente al arrancar el sistema.
  • disable: Deshabilita el servicio para que no se inicie automáticamente al arrancar el sistema.
  • start: Inicia el servicio inmediatamente.
  • stop: Detiene el servicio.
  • restart: Reinicia el servicio.
  • status: Muestra el estado actual del servicio.

Administración de Usuarios y Grupos

Comando: sudo useradd

Este comando permite crear un nuevo usuario en el sistema.

Sintaxis: sudo useradd [opciones] nombre_usuario

  • -m: Crea el directorio home del usuario si no existe.
  • -d ruta: Especifica una ruta diferente para el directorio home del usuario.
  • -s shell: Define la shell por defecto para el usuario.
  • -g grupo: Define el grupo principal del usuario.
  • -G grupos: Agrega al usuario a grupos secundarios (separados por comas).
  • -c texto: Añade un comentario (normalmente el nombre completo del usuario).
  • -u UID: Asigna un ID de usuario (UID) específico.

Comando: sudo usermod

Se utiliza para modificar las propiedades de un usuario existente.

Sintaxis: sudo usermod [opciones] nombre_usuario

  • -l nuevo_nombre: Cambia el nombre de inicio de sesión del usuario.
  • -d nueva_ruta: Cambia el directorio home del usuario.
  • -m: Mueve el contenido del directorio home actual a la nueva ruta especificada con -d.
  • -s nueva_shell: Cambia la shell por defecto del usuario.
  • -g nuevo_grupo: Cambia el grupo principal del usuario.
  • -G grupos: Cambia los grupos secundarios a los que pertenece el usuario.
  • -L: Bloquea la cuenta del usuario (impide el inicio de sesión).
  • -U: Desbloquea la cuenta del usuario.

Comando: sudo userdel

Permite eliminar un usuario del sistema.

Sintaxis: sudo userdel [opciones] nombre_usuario

  • -r: Elimina también el directorio home y el buzón de correo del usuario.
  • -f: Fuerza la eliminación, incluso si el usuario está conectado.

Comando: sudo groupadd

Se utiliza para crear un nuevo grupo.

Sintaxis: sudo groupadd [opciones] nombre_grupo

  • -g GID: Define un ID de grupo (GID) específico.

Comando: sudo groupmod

Permite modificar las propiedades de un grupo existente.

Sintaxis: sudo groupmod [opciones] nombre_grupo

  • -n nuevo_nombre: Cambia el nombre del grupo.
  • -g nuevo_GID: Cambia el ID del grupo (GID).

Comando: sudo groupdel

Se utiliza para eliminar un grupo.

Sintaxis: sudo groupdel nombre_grupo

Comando: sudo gpasswd

Permite administrar la contraseña y los miembros de un grupo.

Sintaxis: sudo gpasswd [opciones] nombre_grupo

  • -a usuario: Añade un usuario al grupo.
  • -d usuario: Elimina un usuario del grupo.
  • -r: Elimina la contraseña del grupo.
  • -p: Establece o cambia la contraseña del grupo.
  • -M usuarios: Establece la lista de usuarios miembros del grupo (separados por comas).

Comando: sudo chpasswd

Permite cambiar la contraseña de uno o varios usuarios, generalmente leyendo la entrada desde un archivo o la entrada estándar.

Sintaxis: echo "usuario:contraseña" | sudo chpasswd

Comando: passwd

Se utiliza para cambiar la contraseña de un usuario.

Sintaxis: sudo passwd [opciones] [usuario]

  • -l: Bloquea la cuenta del usuario.
  • -u: Desbloquea la cuenta del usuario.
  • -d: Elimina la contraseña del usuario (permite iniciar sesión sin contraseña).
  • -e: Expira la contraseña, obligando al usuario a cambiarla en el próximo inicio de sesión.

Gestión de Permisos y Propiedad de Archivos

Comando: chmod

Se utiliza para cambiar los permisos de archivos o directorios.

Sintaxis: chmod [opciones] modo archivo_o_directorio

  • -R: Cambia los permisos recursivamente (aplica a subdirectorios y sus contenidos).
  • -v: Muestra los cambios realizados (modo verbal).
  • modo: Puede ser en formato simbólico (ej. u+x para añadir permiso de ejecución al usuario) o numérico (ej. 755).

Comando: umask

Define los permisos predeterminados que se restan al crear nuevos archivos o directorios.

Sintaxis: umask [valor]

Comando: sudo chown

Cambia el propietario y/o el grupo de archivos o directorios.

Sintaxis: sudo chown [opciones] usuario[:grupo] archivo_o_directorio

  • -R: Cambia recursivamente (aplica a subdirectorios y sus contenidos).
  • -v: Muestra los cambios realizados (modo verbal).

Comando: sudo chgrp

Cambia el grupo propietario de archivos o directorios.

Sintaxis: sudo chgrp [opciones] grupo archivo_o_directorio

  • -R: Cambia recursivamente.
  • -v: Muestra los cambios realizados (modo verbal).

Operaciones Fundamentales con Archivos y Directorios

Comando: ls

Lista el contenido de directorios.

Sintaxis: ls [opciones] [ruta]

  • -a: Muestra todos los archivos, incluyendo los ocultos (que empiezan por un punto).
  • -l: Muestra el contenido en formato largo, con detalles como permisos, propietario, tamaño y fecha de modificación.
  • -h: Muestra los tamaños de archivo en un formato legible para humanos (ej. KB, MB, GB).
  • -R: Lista el contenido de los subdirectorios recursivamente.
  • -S: Ordena los archivos por tamaño, de mayor a menor.
  • -t: Ordena los archivos por fecha de modificación, los más recientes primero.
  • -r: Invierte el orden de clasificación.

Comando: cp

Copia archivos y directorios.

Sintaxis: cp [opciones] origen destino

  • -r: Copia directorios recursivamente.
  • -i: Pregunta antes de sobrescribir un archivo existente.
  • -u: Copia solo si el archivo de origen es más reciente que el de destino, o si el destino no existe.
  • -v: Muestra el proceso de copia (modo verbal).
  • -f: Fuerza la copia, sobrescribiendo sin preguntar.
  • -p: Conserva los atributos del archivo original (permisos, propietario, marcas de tiempo).
  • -a: Modo archivo, equivalente a -dR --preserve=all (recursivo y conserva todos los atributos).

Comando: rm

Elimina archivos y directorios.

Sintaxis: rm [opciones] archivo_o_directorio

  • -r: Elimina directorios y su contenido recursivamente.
  • -f: Fuerza la eliminación sin preguntar.
  • -i: Pregunta antes de cada eliminación.
  • -v: Muestra el proceso de eliminación (modo verbal).

Comando: mv

Mueve o renombra archivos y directorios.

Sintaxis: mv [opciones] origen destino

  • -i: Pregunta antes de sobrescribir un archivo existente.
  • -f: Fuerza el movimiento o renombrado sin preguntar.
  • -v: Muestra el proceso (modo verbal).
  • -n: No sobrescribe un archivo existente.
  • -u: Mueve solo si el archivo de origen es más reciente que el de destino, o si el destino no existe.

Comando: mkdir

Crea directorios.

Sintaxis: mkdir [opciones] directorio

  • -p: Crea los directorios padres si no existen.
  • -v: Muestra el proceso de creación (modo verbal).
  • -m modo: Establece los permisos del directorio.

Comando: rmdir

Elimina directorios vacíos.

Sintaxis: rmdir [opciones] directorio

  • -p: Elimina los directorios padres vacíos después de eliminar el directorio especificado.
  • -v: Muestra el proceso de eliminación (modo verbal).

Comando: find

Busca archivos y directorios según criterios específicos.

Sintaxis: find ruta [condiciones] [acciones]

Opciones y condiciones comunes:

  • -name patrón: Busca por nombre de archivo o directorio, aceptando comodines.
  • -type tipo: Busca por tipo de archivo (f para archivo regular, d para directorio).
  • -size [+/-]tamaño: Busca por tamaño (ej. +1G para archivos mayores de 1GB, -10M para menores de 10MB).
  • -mtime días: Busca archivos modificados hace un número específico de días (ej. +7 para más de 7 días, -7 para menos de 7 días).
  • -exec comando {} ;: Ejecuta un comando sobre cada resultado encontrado.

Comando: grep

Busca patrones de texto dentro de archivos.

Sintaxis: grep [opciones] patrón [archivo]

  • -i: Ignora mayúsculas y minúsculas al buscar.
  • -r: Busca recursivamente en directorios.
  • -n: Muestra el número de línea donde se encontró la coincidencia.
  • -v: Invierte la selección, mostrando las líneas que NO coinciden con el patrón.
  • -c: Cuenta el número de coincidencias.

Comando: cut

Extrae columnas o campos de texto de líneas.

Sintaxis: cut [opciones] archivo

  • -d delimitador: Define el delimitador de campos (ej. -d ':' para usar dos puntos).
  • -f campos: Selecciona los campos (columnas) a extraer (ej. -f 1,3 para el primer y tercer campo).

Comando: sort

Ordena líneas de texto de archivos o de la entrada estándar.

Sintaxis: sort [opciones] archivo

  • -r: Ordena en orden inverso (descendente).
  • -n: Ordena numéricamente.
  • -k campo: Ordena por un campo específico.
  • -u: Elimina líneas duplicadas.

Gestión de Procesos del Sistema

Comando: ps

Muestra los procesos que se encuentran en ejecución.

Sintaxis: ps [opciones]

  • -aux: Muestra todos los procesos de todos los usuarios con detalles completos (incluyendo usuario, PID, uso de CPU/memoria, etc.).

Comando: kill

Envía señales a procesos, comúnmente para terminarlos.

Sintaxis: kill [opciones] PID

  • -9: Envía la señal SIGKILL, que termina el proceso inmediatamente y no puede ser ignorada.

Comando: sudo killall

Termina procesos por su nombre.

Sintaxis: sudo killall [opciones] nombre_proceso

  • -v: Muestra los procesos que han sido terminados (modo verbal).

Gestión de Paquetes (APT)

Comando: sudo apt

Es el gestor de paquetes predeterminado en distribuciones basadas en Debian, como Ubuntu.

Sintaxis: sudo apt comando [paquete]

Comandos principales:

  • update: Actualiza la lista de paquetes disponibles desde los repositorios.
  • upgrade: Actualiza todos los paquetes instalados a sus últimas versiones.
  • list: Lista paquetes disponibles o instalados.
  • search término: Busca paquetes por nombre o descripción.
  • autoremove: Elimina paquetes que se instalaron como dependencias y ya no son necesarios.
  • install paquete: Instala uno o varios paquetes.
  • remove paquete: Elimina paquetes, pero conserva sus archivos de configuración.
  • purge paquete: Elimina paquetes y todos sus archivos de configuración.

Información del Sistema y Gestión de Discos

Comando: id

Muestra información detallada del usuario actual o de uno específico (UID, GID, grupos a los que pertenece).

Sintaxis: id [usuario]

Comando: groups

Muestra los grupos a los que pertenece el usuario actual o uno específico.

Sintaxis: groups [usuario]

Comando: cat

Muestra el contenido de uno o varios archivos.

Sintaxis: cat [opciones] archivo

  • -n: Numera todas las líneas de salida.

Comando: sudo mount

Monta un sistema de archivos en un punto de montaje.

Sintaxis: sudo mount [opciones] dispositivo punto_de_montaje

Comando: sudo umount

Desmonta un sistema de archivos.

Sintaxis: sudo umount [opciones] punto_de_montaje_o_dispositivo

Comando: lsblk

Muestra información detallada de los dispositivos de bloque y sus sistemas de archivos.

Sintaxis: lsblk -f

Deja un comentario