Descripción

El comando mkdir (Make Directory) se utiliza para crear directorios en sistemas Linux y Unix. Es una de las herramientas más básicas y utilizadas de la terminal, ya que prácticamente cualquier tarea de administración, desarrollo o automatización implica la creación de carpetas para organizar archivos, proyectos, configuraciones o datos.

Aunque su uso más habitual es crear un único directorio, también permite crear estructuras completas de carpetas de forma automática, asignar permisos durante la creación y evitar errores cuando parte de la estructura ya existe.

Es un comando fundamental para administradores de sistemas, desarrolladores, scripts de automatización y despliegues.


Instalación (si procede)

El comando mkdir forma parte de GNU Coreutils y viene instalado por defecto en prácticamente cualquier distribución Linux.

Verificar instalación

mkdir --version

Atributos y Parámetros

AtributoDescripción
-pCrea directorios padre si no existen.
-mEstablece permisos durante la creación.
-vMuestra información detallada de los directorios creados.
--helpMuestra la ayuda del comando.
--versionMuestra la versión instalada.

Ejemplos de Uso

Crear un directorio simple

mkdir proyecto

Crea una carpeta llamada proyecto en el directorio actual.

Es el uso más básico y frecuente.


Crear varios directorios a la vez

mkdir logs backups temporal

Genera tres directorios diferentes en una sola ejecución.

Muy útil durante la preparación inicial de servidores o aplicaciones.


Crear una estructura completa de directorios

mkdir -p proyecto/src/controllers

Si las carpetas intermedias no existen, se crearán automáticamente.

Resultado:

proyecto
└── src
    └── controllers

Es probablemente la opción más utilizada en desarrollo.


Crear varias ramas de directorios

mkdir -p proyecto/{src,logs,config,backup}

Resultado:

proyecto
├── src
├── logs
├── config
└── backup

Permite generar estructuras completas con muy poco esfuerzo.


Crear directorios y mostrar información

mkdir -v pruebas

Salida:

mkdir: created directory 'pruebas'

Útil en scripts y automatizaciones para verificar qué se está creando.


Crear un directorio con permisos específicos

mkdir -m 700 privado

Permisos resultantes:

drwx------ privado

Solo el propietario podrá acceder al directorio.


Crear un directorio compartido

mkdir -m 775 compartido

Permite que usuarios del mismo grupo puedan trabajar conjuntamente.

Muy utilizado en servidores de desarrollo.


Evitar errores si el directorio ya existe

mkdir -p backups

Si el directorio ya existe, no se mostrará error.

Esto hace que -p sea ideal para scripts.


Crear directorios utilizando variables

NOMBRE=cliente01mkdir $NOMBRE

Muy habitual en scripts Bash.


Crear directorios basados en fechas

mkdir backup-$(date +%Y%m%d)

Resultado:

backup-20260731

Perfecto para sistemas de copias de seguridad.


Preparar una estructura de proyecto web

mkdir -p web/{public,logs,config,tmp}

Resultado:

web
├── public
├── logs
├── config
└── tmp

Muy útil en despliegues automatizados.


Crear directorios para Docker

mkdir -p docker/{nginx,mysql,redis}

Permite organizar rápidamente servicios de contenedores.


Crear directorios para copias de seguridad

mkdir -p /backup/{diario,semanal,mensual}

Una estructura muy habitual en servidores Linux.


Crear directorios desde una lista

for dir in app logs temp cache
do
    mkdir -p $dir
done

Muy útil en scripts de instalación.


Casos de uso reales

Preparar una nueva aplicación

mkdir -p app/{src,public,config,logs}

Permite generar la estructura inicial del proyecto.


Automatizar despliegues

mkdir -p /var/www/proyecto/releases

Común en pipelines CI/CD.


Crear directorios para almacenar logs

mkdir -p /var/log/mi-aplicacion

Práctica habitual en aplicaciones personalizadas.


Preparar un servidor de copias de seguridad

mkdir -p /backup/{clientes,basesdatos,sistemas}

Facilita la organización de las copias.


Crear estructuras para contenedores Docker

mkdir -p docker/{volumes,compose,configs}

Muy utilizado en entornos DevOps.



Distribuciones Compatibles

Ubuntu, Debian, Fedora, RHEL, Rocky Linux, AlmaLinux, Arch Linux, openSUSE, Alpine Linux y prácticamente cualquier sistema Unix o Linux.


Alternativas

install -d: Permite crear directorios y establecer permisos o propietarios en una sola operación.

mkdir -p: La variante más utilizada para automatización y scripting.

Herramientas de despliegue (Ansible, Terraform, Puppet): Pueden crear directorios durante procesos de automatización.


Comentarios

Deja una respuesta

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

Categoría:
Nivel:
Impacto:

archivos arranque backup buscar completa conexiones configuración copiar copias de seguridad cortafuegos cpu deshabilitar disco escaneo espacio espacio ocupado filtrar firewall habilitar herramienta incremental inicio interfaz lectura listar log mantenimiento monitorización monousuario patrones procesos pruebas ram recursos red redes seguridad servicios sincronización sockets tcp texto udp uso ver

  • mkdir

    Descripción El comando mkdir (Make Directory) se utiliza para crear directorios en sistemas Linux y Unix. Es una de las herramientas más básicas y utilizadas…

  • hostnamectl

    Descripción El comando hostnamectl permite consultar y modificar el nombre del equipo (hostname) y otra información relacionada con el sistema en distribuciones Linux que utilizan…

  • uname

    Descripción El comando uname (Unix Name) se utiliza para mostrar información sobre el sistema operativo y el kernel en ejecución. Es una herramienta sencilla pero…

  • ack

    Descripción El comando ack es una herramienta de búsqueda de texto diseñada especialmente para desarrolladores y administradores de sistemas. Su objetivo es encontrar cadenas de…

  • find

    Descripción: El comando find se utiliza para buscar archivos y directorios dentro del sistema de archivos en Linux. Permite localizar elementos por nombre, tipo, tamaño,…

  • journalctl

    Descripción: El comando journalctl es la herramienta para consultar los registros del sistema gestionados por systemd-journald. Permite visualizar logs del sistema operativo, servicios, kernel, arranques…

  • nmap

    Descripción: El comando nmap (Network Mapper) es una herramienta avanzada para descubrimiento de hosts y escaneo de puertos. Permite identificar equipos activos en una red,…

  • ip

    Descripción: El comando ip (del paquete iproute2) es la herramienta moderna de Linux para administrar y diagnosticar la red: interfaces, direcciones IP, rutas, tabla ARP/vecinos…

  • tcpdump

    Descripción: El comando tcpdump es una herramienta de captura y análisis de tráfico de red en tiempo real. Permite inspeccionar paquetes que pasan por una…

  • top

    Herramienta de monitorización del sistema en tiempo real que muestra información sobre los procesos que se están ejecutando en un sistema Unix o Linux.