chown: cambio de propiedad de `. ': argumento no válido


8

Estoy tratando de instalar algunos archivos nuevos en nuestro nuevo servidor mientras nuestro administrador del sistema está de vacaciones:

Aquí está mi df

#  df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdb3             273G   11G  248G   5% /
tmpfs                  48G  260K   48G   1% /dev/shm
/dev/sdb1             485M  187M  273M  41% /boot
xxx.xx.xxx.xxx:/commun
                       63T  2.2T   61T   4% /commun

como root , puedo crear un nuevo directorio y ejecutarlo chownbajo / home / lindenb

# cd /home/lindenb/
# mkdir X
# chown lindenb X

pero no puedo ejecutar el mismo comando en / commun

# cd /commun/data/users/lindenb/
# mkdir X
# chown lindenb X
chown: changing ownership of `X': Invalid argument

por qué ? Cómo puedo arreglar esto ?

actualizado :

montar:

/dev/sdb3 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sdb1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
xxx.xx.xxx.xxx:/commun on /commun type nfs (rw,noatime,noac,hard,intr,vers=4,addr=xxx.xx.xxx.xxx,clientaddr=xxx.xx.xxx.xxx)

versión:

$ cat /etc/redhat-release 
CentOS release 6.3 (Final)

1
Escriba mounty pegue el resultado de esto en su pregunta. Además, ¿en qué sistema operativo estás?
jwbensley

1
No estoy muy bien informado sobre NFS; Pero viendo que / commun / data / users / lindenb / no es un directorio local en su máquina, sino un recurso compartido de red al que se accede a través de NFS, comenzaría examinando sus permisos en el servidor NFS (que está fuera de mi alcance)
jwbensley

Respuestas:


7

El /communsistema de archivos está montado desde un servidor remoto, y el mensaje de error sugiere que podría ser un montaje nfsv4 (lo mismo para versiones anteriores de nfs es Permiso denegado). De forma predeterminada, el servidor de archivos remoto asignará el rootusuario remoto a una nobodycuenta para que no pueda cambiar la propiedad del archivo.

La solución más fácil puede ser utilizar la lindenbcuenta local para crear los directorios en el /commundirectorio. Entonces como root

sudo -u linedb mkdir -p /commun/data/users/lindenb

Si eso no funciona, puede haber una asignación de identificación, por lo que es posible que tenga que hacer los directorios en el servidor xxx.xx.xxx.xxxy cambiar la propiedad / permisos allí.


gracias pero eso no funcionó sudo -u lindenb mkdir -p /commun/data/users/TMP mkdir: cannot create directory / commun / data / users / TMP ': Permiso denegado'
Pierre

Su punto sobre NFSv4 es un arenque rojo, pero estoy de acuerdo con el resto de la respuesta como correcta.
DaveG

gracias por su respuesta de todos modos, no soy lo suficientemente hábil como para hacer esos cambios solo. Esperaré el final de las vacaciones de nuestro administrador de sistemas y validaré su respuesta si fue correcta :-)
Pierre

@DaveG: ¿por qué es eso? Si intento seleccionar un directorio como root en un montaje NFSv4, obtengo exactamente el mismo mensaje de error que el OP y si cambio a NFSv3 obtengo Permiso denegado, así que es algo que tiene que ver con él y la forma en que interactúa con los ID de usuario.
usuario9517

2
Debido a que la raíz también se aplasta en NFSv3, por lo tanto, el mensaje de error podría ser diferente, pero aún no podría crear el directorio como usuario raíz.
DaveG

5
mount -t nfs -o vers=3 SERVER:PATH MOUNT_PATH

Esto funcionó para mí.


3

Este es de hecho un problema de NFS4. Es posible que tenga que considerar rpc.idmapd el demonio de mapeo NFS4 para resolver tales problemas, especialmente si muchos usuarios necesitarán el mapeo correcto entre el cliente y el servidor NFS. Tenga en cuenta que NFS3 (en CentOS <6, por ejemplo) no utilizó un demonio de mapeo.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.