msgbartop
Tips de administración de servidores y herramientas Web
msgbarbottom

Comandos linux para asignar propietario de archivos y carpetas

junio 23, 2010 Publicado en Admin-tips, InfraEstructura con 41 Comentarios


En Red Hat, y en linux en general, encontramos que todo esta basado en archivos, inclusive los directorios en realidad son archivos especiales donde en su estructura se lista los archivos que contiene, pero esto lo veremos en una entrada posterior sobre el sistema de archivos y los inodos. Adicional a esto, para todos los archivos tenemos un usuario propietario y un grupo propietario:

[niquepa@vm1 ~]$ ls -l /tmp/
-rw-r–r– 1 niquepa wordpress 192 Jun 23 13:40 basura
-rw-r–r– 1 root          root     109 Jun 23 16:47 abc.txt
-rw-r–r– 1 root          root     381 Nov 10  2005 index.html
drwx—— 2 root root 4096 Jun 23 16:38 deploy
-rw-rw-r– 1 zabbix     zabbix 26976 Jun 18 17:08 zabbix_agentd.log
[niquepa@vm1 ~]$

en el anterior comando podemos observar que para el archivo “basura” el usuario propietario es “niquepa” y el grupo propietario es “wordpress”, al igual que para el directorio “deploy”. Existe una manera de cambiar estos propietarios, para efectos de seguridad principalmente, y es por medio de dos comandos “chown” y “chgrp”, aunque con “chown” es más que suficiente.

chown
Asigna el usuario propietario, y el grupo propietario si asi se quiere
chgrp
Asigna el grupo propietario, en caso de solo querer cambiar el grupo

Sintaxis para usar chown:

chown [OPCIONES]... [USUARIO][:GRUPO] ARCHIVO...

a continuación mostramos dos ejemplos de que como se usa, y en rojo se pueden evidenciar los cambios:

[niquepa@vm1 ~]$ ls -l /tmp/
-rw-r–r– 1 niquepa wordpress 192 Jun 23 13:40 basura
-rw-r–r– 1 root          root     109 Jun 23 16:47 abc.txt
-rw-r–r– 1 root          root     381 Nov 10  2005 index.html
drwx—— 2 root root 4096 Jun 23 16:38 deploy
-rw-rw-r– 1 zabbix     zabbix 26976 Jun 18 17:08 zabbix_agentd.log
[niquepa@vm1 ~]$ chown root basura
[niquepa@vm1 ~]$ ls -l /tmp/
-rw-r–r– 1 root wordpress 192 Jun 23 13:40 basura
-rw-r–r– 1 root          root     109 Jun 23 16:47 abc.txt
-rw-r–r– 1 root          root     381 Nov 10  2005 index.html
drwx—— 2 root root 4096 Jun 23 16:38 deploy
-rw-rw-r– 1 zabbix     zabbix 26976 Jun 18 17:08 zabbix_agentd.log
[niquepa@vm1 ~]$ chown -R niquepa:wordpress deploy
[niquepa@vm1 ~]$ ls -l /tmp/
-rw-r–r– 1 root          wordpress 192 Jun 23 13:40 basura
-rw-r–r– 1 root          root     109 Jun 23 16:47 abc.txt
-rw-r–r– 1 root          root     381 Nov 10  2005 index.html
drwx—— 2 niquepa wordpress 4096 Jun 23 16:38 deploy
-rw-rw-r– 1 zabbix     zabbix 26976 Jun 18 17:08 zabbix_agentd.log

al escribir dentro de las opciones -R estamos diciendo que queremos cambiar de manera recursiva el propietario para todos los archivos que contenga la carpeta. dentro de las posibles opciones tenemos:

-c, --changes 
Reporta unicamente los cambios realizados sobre archivos o carpetas

--dereference
Afecta el archivo o carpeta que se referencia en un link simbolico, en lugar de modificar el link simbolico como tal, Asi se comporta por defecto

-h, --no-dereference
Afecta el link simbolico en lugar de su referencia

-f, --silent, --quiet
Ejecuta de manera silenciosa

-R, --recursive
 Ejecuta de manera recursiva para directorios

-v, --verbose 
Muestra mensajes en pantalla de cada archivo o carpeta procesados

Sintaxis para usar chgrp:

chgrp [OPTION]... GROUP FILE...

Por medio de este comando modificaremos unicamente el grupo propietario de los archivos o las carpetas deseadas, y tiene las mismas opciones disponibles que “chown”

Tags: , , , , , , , , , , , , ,