cd en el directorio sin tener permiso

117

Al cdingresar a uno de mis directorios llamado, openfirese devuelve el siguiente error:

bash: cd: openfire: Permission denied

¿Hay alguna forma de evitar esto?

user812954
fuente

Respuestas:

149

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.

Jonathan
fuente
107

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

sudo su
cd directory
user812954
fuente
2
respuesta impecable!
gaurav
46

Si es un directorio de su propiedad, 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 listar los archivos que están en él ( r); también niega el permiso de escritura de grupo y otros en el directorio, lo que generalmente es correcto (aunque a veces puede que desee permitir que el grupo cree archivos en su directorio, pero considere usar el bit adhesivo en el directorio si lo hace).

Si es el directorio de otra persona, probablemente necesitará ayuda del propietario para cambiar los permisos y poder acceder a él (o necesitará ayuda de rootpara cambiar los permisos por usted).

Jonathan Leffler
fuente
He estado buscando en Google durante una hora tratando de corregir el hecho de que no podía usar SSH sin usar "sudo" (que sabía que tenía que estar mal), y esto lo solucionó. ¡Finalmente!
GrayedFox
25

chmod +x openfiretrabajó para mi. Agrega permiso de ejecución a la carpeta Openfire.

wcyn
fuente
@Winnemucca, no estoy seguro. No he trabajado con Docker antes. Pero supongo que puede
wcyn
6

Tienes varias opciones:

  • Utilice una cuenta de usuario diferente, una con xlos permisos necesarios en ese directorio.
  • Cambie los permisos en el directorio para permitir que su cuenta de usuario xejecute permisos.
    • Utilice chmod(1)para cambiar los permisos o
    • Use el setfacl(1)comando 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 aclopción; 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 del directorio están configurados como están? ¿Por qué necesita acceso a ese directorio?

sarnold
fuente
3

Alternativamente, puede hacer:

sudo -s
cd directory
howDidMyCodeWork
fuente
1

A menos que tenga permisos de sudo para cambiarlo o si está en su propio grupo de usuarios / cuenta, no podrá ingresar.

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

John Riselvato
fuente