Solución rápida del Error de Terminal Zsh: Permiso Denegado
¿Estás intentando ejecutar un comando y te aparece el mensaje "zsh: permiso denegado" en Terminal? No te preocupes. No eres ni el primero ni el único al que le pasa.
La buena noticia es que, como casi siempre, y aunque el mensaje pueda parecer de primeras demasiado técnico y confuso, en la mayoría de los casos se puede solucionar fácilmente.
A lo largo de este artículo te voy a explicar qué causa el error y cómo resolverlo paso a paso, incluso si no tienes ningún conocimiento de informática.
Cómo solucionar el error de Termina Zsh | Pasos para corregirlo y que vuelva a funcional |
Comprobar el permiso del archivo | Abre el Terminal > Escribe ls -l > Selecciona y arrastra el archivo o la carpeta > Presiona Intro. Si se te deniega el permiso, haz clic derecho en la carpeta o el archivo > Obtener información > Haz clic en la flecha > Columna Nombre > Selecciona un usuario o grupo > Configuración de privilegios. |
Cambiar la propiedad del directorio | Arrastra la carpeta a la Terminal > Escribe. chown -R $ [nombre de usuario] : [nombre de usuario] [ruta del directorio] > Presiona Returno. |
Dar acceso completo a la Terminal | Ve a Ajustes del sistema > Privacidad y seguridad > Acceso total al disco > Agregar Terminal. |
Recurre a alternativas de Terminal | Instala Core Shellpara personalizar tu Terminal y ejecutar cualquier comando. Si lo prefieres, también puedes usar Almighty para administrar las configuraciones y ayudar a resolver el error "Zsh: permiso denegado". |
¿Cómo abrir Terminal en Mac?
Existen básicamente tres opciones de abrir Terminal en un Mac:
Ve a Finder > Aplicaciones > Utilidades > Terminal.
- Pulsa Comando + Espacio para abrir Spotlight. Escribe Terminal y presiona Return.
Soluciones para corregir el error "Zsh: Permiso Denegado" en Mac Terminal
Dado que pueden ser varias las causas que estén afectando a tu Mac, es fundamental ir realizando una serie de acciones, hasta que nos permitan dar con el problema y solucionarlo.
Comprueba los permisos desde Terminal
Una de las causas más comunes del error zsh: permiso denegado es que el archivo que estás intentando ejecutar no tiene los permisos adecuados. Para comprobarlo, sigue estos pasos:
- Abre Terminal desde Aplicaciones > Utilidades > Terminal.
- Escribe el siguiente comando y deja un espacio al final: ls -l . A continuación, arrastra el archivo o carpeta desde Finder directamente a la ventana de Terminal para añadir su ruta automáticamente.
- Pulsa Return y verás una línea como esta: -rw-r--r-- 1 usuario staff 0 23 abr 12:00 archivo.sh.
Las letras al principio (r, w, x) indican los permisos que se poseen sobre el archivo o carpeta en cuestión:
- r (read): lectura
- w (write): escritura
- x (execute): ejecución
Si el archivo no tiene la “x” de ejecución, no podrás ejecutarlo directamente desde mac Terminal Zsh, y recibirás el temido error zsh permiso denegado.
Modificar los permisos del archivo
Si acabas de comprobar que no tienes permisos de escritura o ejecución, puedes cambiarlos desde Finder o Terminal.
Opción 1: Desde Finder
- Haz clic derecho sobre el archivo o carpeta y selecciona Obtener información.
- Desplázate hasta Compartir y permisos.
- Si la sección está colapsada, haz clic en la flecha para desplegarla.
- Localiza tu nombre de usuario en la columna Nombre y asegúrate de que tenga privilegios de lectura y escritura.
- Si no es así, usa el menú desplegable para cambiar los permisos.
Opción 2: Desde Terminal
Usa el comando chmod para otorgar permisos:
- Permitir lectura, escritura y ejecución: chmod 755 /ruta/del/archivo
- Permitir solo lectura y escritura: chmod 644 /ruta/del/archivo
Repite el comando sustituyendo /ruta/del/archivo por el archivo que estés intentando ejecutar. Esto debería resolver el error zsh en Terminal Mac si el problema era simplemente una falta de permisos.
Cambiar la propiedad del directorio o archivo
A veces, el archivo pertenece a otro usuario del sistema o fue creado por una cuenta con permisos diferentes. En ese caso, aunque modifiques los permisos, seguirás recibiendo el mensaje zsh: permiso denegado.
Puedes cambiar la propiedad de ese archivo o carpeta a tu usuario actual con el siguiente comando: sudo chown -R $USER /ruta/del/directorio.
Paso a paso:
- Abre Terminal.
- Escribe sudo chown -R $USER /path/to/directory.
- Arrastra la carpeta o archivo hasta la ventana de Terminal para añadir su ruta.
- Pulsa Return e introduce tu contraseña si se solicita.
Esto asignará la propiedad del archivo a tu usuario, permitiéndote ejecutarlo con normalidad en la terminal Zsh de tu Mac.
Dar acceso total al disco a Terminal
En macOS, Terminal necesita permisos específicos para interactuar con todos los archivos del sistema. Si no los tiene, aunque seas propietario del archivo, es posible que veas el mensaje error zsh permiso denegado.
Sigue estos pasos para solucionarlo:
- Abre Ajustes del Sistema.
- Ve a Privacidad y Seguridad > Acceso total al disco.
- Haz clic en el icono de candado e introduce tu contraseña.
- Pulsa el botón “+” y añade Terminal a la lista.
- Cierra el panel y reinicia Terminal.
Una vez hecho esto, prueba de nuevo tu comando zsh y verifica si el error desaparece.
Alternativas a Terminal para evitar errores de permisos
Además de las funciones nativas, dispone de aplicaciones de terceros para evitar errores de permisos. Las dos que yo he probado y recomiendo.
Core Shell: Terminal con interfaz mejorada
Core Shell es una alternativa visual a Terminal, ideal para quienes prefieren trabajar con SSH, conexiones remotas o configuraciones avanzadas con mayor control gráfico. Algunos de los motivos por los que vale la pena tenerla a mano son:
- Permite guardar perfiles de conexión.
- Ofrece una mayor personalización y control sobre permisos.
- Previene errores como el "zsh permiso denegado" mediante ajustes guiados.
Almighty: Configura tu Mac sin complicaciones
Almighty te permite activar o desactivar funciones del sistema, mostrar archivos ocultos, controlar permisos y mucho más, sin necesidad de comandos complejos. Las razones por las que la recomiendo son:
- Permite cambiar las configuraciones del sistema fácilmente.
- Evita errores en la terminal.
- Resulta ideal para usuarios que no quieren complicarse con scripts o líneas de código.
¿Por qué aparece el error "Zsh: Permiso Denegado" en Terminal?
Este mensaje suele indicar que estás intentando ejecutar un archivo sin tener los permisos adecuados. A continuación, un resumen de las causas más comunes:
- Archivo bloqueado: El archivo puede estar protegido o restringido por permisos mal configurados.
- Falta de permisos de administrador: Algunos archivos requieren privilegios de root para ejecutarse.
- Comando mal formateado: Errores de sintaxis o rutas incompletas pueden generar este mensaje.
- Restricciones del sistema: macOS puede impedir que Terminal acceda a ciertas carpetas por seguridad.
Conoce dónde está el administrador de tareas en un Mac.
¿Qué es Terminal en Mac y por qué los usuarios lo usan?
La Terminal de macOS es una herramienta avanzada que permite interactuar directamente con el sistema operativo usando comandos de texto.
Esta está basada en Zsh, la shell por defecto en las versiones recientes de macOS, y da acceso a funciones que normalmente no están disponibles a través de la interfaz gráfica.
Para usarla, solo necesitas familiarizarte con las funciones y comandos básicos, para así poder introducirlos en la línea de comandos y conseguir lo que buscas.
Por ejemplo, si deseas mover un archivo de sistema de una carpeta a otra, deberás utilizar el comando de movimiento "mv" y especificar la carpeta de destino.
¿Por qué usar Terminal?
Los usuarios de Mac prefieren recurrir a Terminal por varias razones. En primer lugar, porque ofrece una forma rápida de ejecutar procesos y tareas para quienes están familiarizados con los comandos de Unix.
Además, permite acceder a partes de macOS que están ocultas y no son accesibles a través de la Configuración del Sistema.
He aquí los diferentes motivos por los que resulta interesante recurrir a Terminal:
- Automatizar tareas.
- Acceder a archivos ocultos.
- Ejecutar scripts personalizados.
- Diagnosticar problemas del sistema.
- Modificar configuraciones avanzadas.
Di adiós al Error de Terminal Zsh: Permiso Denegado
La primera vez que aparece frente a ti error zsh: permiso denegado puede parecer un verdadero problema irresoluble, pero nada más lejos de la realidad.
La clave para resolverlo suele pasar por verificar los permisos, ajustar la propiedad de los archivos o conceder acceso total al sistema a Terminal cuando sea necesario. Para averiguarlo, eso sí, no te quedará más remedio que ir probando las soluciones, a una a una.
Si no quieres volverte loco revisando y modificando comandos o permisos a través de las funciones nativas de Mac, te recomiendo recurrir a aplicaciones de terceros mucho más fáciles de usar como, por ejemplo, Core Shell y Almighty.
Dos apps con CleanMyMac y iStatMenus diseñadas para ayudarte a gestionar tu Mac de forma más visual y eficiente que puedes encontrar sin coste adicional en Setapp, el servicio de suscripción para macOS, iOS y aplicaciones web más completo e interesante del momento.
Preguntas frecuentes
¿Qué es Zsh en Mac?
Zsh (Z shell) es la shell por defecto en macOS desde que se lanzó la versión Catalina. Esta permite ejecutar comandos, scripts y administrar el sistema desde Terminal.
¿Cómo restablecer Zsh en Mac?
Para restablecer Zsh en Mac, elimina el archivo .zshrc en tu carpeta de usuario con el siguiente comando: rm ~/.zshrc.
¿Debería instalar Zsh en Mac?
Zsh viene preinstalado desde macOS Catalina. Solo necesitas configurarlo si deseas personalizar su performance.
¿Cómo salir de Zsh en Mac?
Salir de Zsh en Mac es tan sencillo como escribir exit en Terminal o, en su defecto, pulsar Control + D para cerrar la sesión.
¿Qué pasa si cambio los permisos incorrectamente?
Puedes romper el acceso al archivo. Usa chmod con precaución o haz una copia de seguridad antes con Get Backup Pro para mayor seguridad.
¿Qué hacer si el problema persiste después de modificar permisos?
Si el problema persiste después de modificar los permisos, revisa que Terminal tiene acceso completo al disco.
¿Cómo ver procesos activos que puedan estar afectando Terminal?
La forma más sencilla e intuitiva pasa por recurrir a aplicaciones de terceros como iStat Menus que permiten ver la carga del sistema, así como los procesos y recursos en tiempo real.