Como solucionar un problema de chown bajo XFS en el 2.4.21-ck3


En ciertas versiones del código que maneja el sistema de
archivos XFS en linux hay un bug relativo al comportamiento del comando chown que hace que fallen algunas aplicaciones, como dpkg-buildpackage en debian.
En este truco veremos cómo solucionarlo.

El bug que aparece en la versión de XFS que está en el kernel 2.4.21-ck3 y en
algunos kernels experimentales como 2.5.73-mm1 [1] establecen el restrict chown
a falso en los sistemas de archivos XFS. Esta opción, que debería estar a
activada por defecto (es así como se comporta linux ahora) define el
comportamiento de chown. De esta manera, si restrict chown está desactivado se
puede cambiar el dueño de un fichero a otro, pero teniendo control sobre el mismo
(se puede borrar aunque ya no sea tuyo). Si no está activado, no se puede cambiar
el dueño del fichero.
Con restrict chown activado:

golan@terminus:~/tmp$ touch fichero
golan@terminus:~/tmp$ chown root:root fichero
chown: changing ownership of `fichero’: Operation not permitted
golan@terminus:~/tmp$

y con restrict chown desactivado:

golan@terminus:~/tmp$ touch fichero
golan@terminus:~/tmp$ chown root:root fichero
golan@terminus:~/tmp$ ls -l fichero
-rw-r–r– 1 root root 0 2003-07-31 21:00 fichero
golan@terminus:~/tmp$ echo 1 > fichero
bash: fichero: Permission denied
golan@terminus:~/tmp$ rm fichero
rm: remove write-protected regular empty file `fichero’? y
golan@terminus:~/tmp$ ls -l fichero
ls: fichero: No such file or directory
golan@terminus:~/tmp$

Esto hace que algunas aplicaciones como dpkg-buildpackage que utilizan fakeroot para
simular root fallen al jugar con la propiedad de los ficheros. La manera de corregir esto es fácil, o bien
se ejecuta el siguiente comando para activar el restrict chown:

echo 1 > /proc/sys/fs/xfs/restrict_chown

o

sysctl -w fs/xfs/restrict_chown=1

o modificar el fichero /etc/sysctl.conf para añadir la siguiente línea:

fs/xfs/restrict_chown=1

y reiniciar.

El por qué de este funcionamiento tiene que ver con el tema de las quotas en linux, ya que
impidiendo que se cambien los propietarios de los ficheros se controlan mejor las quotas. Por
ejemplo, si pudiese cambiar los propietarios de un fichero grande, se le podría acabar el
espacio a ese usuario. Os dejo más información en los enlaces.

Para más referencias, os dejo unos cuantos de enlaces de la lkml y de debian-devel:
[1] LKML
[2]
Debian devel

[3] Lista
XFS

[4] Más
información sobre este comportamiento en XFS.

Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=1829 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.