Cambiar los permisos y la propiedad de la carpeta

417

Me gustaría que el usuario tenga todos los derechos en esta carpeta (así como en todos los subdirectorios y archivos):

~/.blabla

actualmente es propiedad de root.

He encontrado numerosas publicaciones (en este foro y en otros lugares) sobre cómo hacer esto para los archivos, pero no puedo encontrar la manera de hacerlo para carpetas enteras.

    
pregunta user2413 13.10.2010 - 11:31

6 respuestas

636

Use chown para cambiar la propiedad y chmod para cambiar los derechos.

Como dijo Paweł Karpiński, use la opción -R para aplicar los derechos de todos los archivos dentro de un directorio también.

Tenga en cuenta que estos dos comandos también funcionan para los directorios. La opción -R hace que también cambien los permisos para todos los archivos y directorios dentro del directorio.

Por ejemplo

sudo chown -R username:group directory

cambiará la propiedad (tanto del usuario como del grupo) de todos los archivos y directorios dentro de directory y directory en sí.

sudo chown username:group directory

solo cambiará el permiso de la carpeta directory pero dejará solo los archivos y carpetas dentro del directorio.

Como mencionó enzotib, necesitas usar sudo para cambiar la propiedad de la raíz a ti mismo.

Editar:

Tenga en cuenta que si usa chown <user>: <file> (Observe el grupo excluido), usará el grupo predeterminado para ese usuario.

Si quiere cambiar solo el grupo, puede usar:

chown :<group> <file>
    
respondido por el Ikke 13.10.2010 - 11:42
91

Haga que el usuario actual tenga todo dentro de la carpeta (y de la carpeta misma):

sudo chown -R $USER ~/.blabla
    
respondido por el Lucian Adrian Grijincu 13.10.2010 - 12:07
54

Si lo prefiere, esto se puede hacer con una GUI también. Tendrá que abrir Nautilus como root para hacerlo. Presione Alt + F2 para acceder al cuadro de diálogo "Ejecutar aplicaciones" e ingrese gksu nautilus

A continuación, busque y haga clic con el botón derecho en la carpeta que desea modificar. Luego, seleccione "Propiedades" en el menú contextual. Ahora puede seleccionar el usuario o grupo que le gustaría ser el "Propietario" de la carpeta, así como los permisos que le gustaría otorgarles. Finalmente, presione "Aplicar permisos a los archivos adjuntos" para aplicar los cambios recursivamente.

Aunque parece que esto no siempre funciona para algunas operaciones en un árbol de carpetas profundas. Si no funciona, use el comando apropiado del terminal.

    
respondido por el andrewsomething 14.10.2010 - 00:04
26

Si es propiedad de root, puede hacer esto

sudo chown <your username>:<your usergroup> -R <path to>/.blabla

Dado que ./blabla es propiedad de root, necesita obtener privilegios de root para cambiar eso. Eso es lo que sudo hará. La opción -R para el comando chown dice: este directorio y todo lo que hay en él recursivamente.

    
respondido por el AndyB 13.10.2010 - 13:14
10

deberías probar chmod -R

    
respondido por el Paweł Karpiński 13.10.2010 - 11:33
0

First chmod -R puede estropear los permisos de su sistema si lo hace en el archivo del sistema y directorios por error.

El segundo chmod -R puede desordenar banderas en esas carpetas y no es una buena idea dar permisos en algunas carpetas a todos los usuarios.

Deberías probar y chown en su lugar:

 sudo tree -fai ~/.blabla  | xargs -L1 -I{} sudo chown youruser:youruser {}
    
respondido por el Eduard Florinescu 25.01.2018 - 14:29

Lea otras preguntas en las etiquetas