web-dev-qa-db-esp.com

cd en el directorio sin tener permiso

Cuando cding en uno de mis directorios llamado openfire se devuelve el siguiente error:

bash: cd: openfire: Permission denied

¿Hay alguna manera de evitar esto?

80
user812954

Ingrese al modo de superusuario y cd en el directorio en el que no tiene permiso para entrar. Sudo requiere contraseña de administrador.

Sudo su
cd directory
69
user812954

La respuesta de @ user812954 fue bastante útil, excepto que tuve que hacer esto en dos pasos:

Sudo su
cd directory

Luego, para salir del modo "superusuario", simplemente escriba exit.

109
Jonathan

Si es un directorio que posee, concédase acceso a él:

chmod u+rx,go-w openfire

Eso le otorga permiso para usar el directorio y los archivos en él (x) y para enumerar los archivos que están en él (r); también niega el permiso de escritura del grupo y otros en el directorio, lo que generalmente es correcto (aunque a veces es posible que desee que el grupo cree archivos en su directorio, pero si lo hace, considere usar la parte adhesiva del directorio).

Si es el directorio de otra persona, es probable que necesite la ayuda del propietario para cambiar los permisos para que pueda acceder a él (o necesitará la ayuda de root para cambiar los permisos por usted).

41
Jonathan Leffler

chmod +x openfire trabajó para mí. Agrega permiso de ejecución a la carpeta openfire.

19
wcyn

Tienes varias opciones:

  • Use una cuenta de usuario diferente, una con permisos execute en ese directorio.
  • Cambie los permisos en el directorio para permitir los permisos de su cuenta de usuario execute.
    • Use chmod(1) para cambiar los permisos o
    • Use el comando setfacl(1) para agregar una entrada de lista de control de acceso para su cuenta de usuario. (Esto también requiere montar el sistema de archivos con la opción acl; consulte mount(8) y fstab(5) para obtener detalles sobre el parámetro de montaje).

Es imposible sugerir el enfoque correcto sin saber más sobre el problema; ¿Por qué los permisos de directorio están configurados como son? ¿Por qué necesitas acceder a ese directorio?

6
sarnold

A menos que tenga permisos de Sudo para cambiarlo o en su propio grupo/cuenta de usuario, no podrá acceder a él.

consulte chmod man en la terminal para obtener más información sobre cómo cambiar los permisos de un directorio.

1
John Riselvato