Tengo un problema en el que los bits de permiso no se aplican en un recurso compartido de samba con un cliente Linux. He configurado samba en el servidor para forzar ciertos bits de usuario, grupo y permiso, y esto funciona como se esperaba hasta que toco el archivo o se convierte en el objetivo de la redirección de E / S.
Esto es lo que está sucediendo:
user@linuxbox:~-->ls -l ~/archive/foo.txt
ls: cannot access /home/user/archive/foo.txt: No such file or directory
user@linuxbox:~-->touch ~/archive/foo.txt
user@linuxbox:~-->ls -l ~/archive/foo.txt
-rw-rw-r-- 1 archive archive 0 2010-09-13 20:29 /home/user/archive/foo.txt
user@linuxbox:~-->touch ~/archive/foo.txt
user@linuxbox:~-->ls -l ~/archive/foo.txt
-rwxrwxrwx 1 archive archive 0 2010-09-13 20:30 /home/user/archive/foo.txt
Observe que cuando toco el archivo existente, sus bits de permiso son 0777. Se supone que son 0664 como cuando se creó por primera vez. ¿Cómo puedo aplicar 0664 en el archivo existente?
Tengo la versión 3.0.24 en el servidor y la versión 3.4.7 en el cliente. Aquí está mi smb.conf:
[global]
interfaces = egiga0
unix charset = UTF8
workgroup = workgroup
netbios name = foo
server string = Foo
security = USER
map to guest = bad user
host msdfs = no
encrypt passwords = yes
[archive]
comment = File Archive
path = /home/archive
force user = archive
force group = archive
read only = yes
write list = @archive
guest ok = yes
create mask = 0
force create mode = 0664
security mask = 0
force security mode = 0664
directory mask = 0
force directory mode = 0775
directory security mask = 0
force directory security mode = 0775
linux
permissions
samba
Jonathon Watney
fuente
fuente
touch
parece estar en un sistema * nix ... ¿es el sistema que está creando el archivo en Windows? o estás creando el archivo desde un sistema Windows? o es * nix a * nix a través de samba (en cuyo caso por qué samba y no nfs)Respuestas:
Los permisos de samba solo funcionan en los clientes de red SMB (es decir, Windows). Si desea aplicar esto en el servidor (y en cualquier cliente NFS), debe establecer el bit fijo en todos los directorios.
primero corrija los archivos que están allí:
luego hacer cumplir esto con el grupo pegajoso
Esto no es infalible pero resuelve el 99% de este tipo de problema.
Saludos DaveF
Resultado en mi caja de Solaris:
fuente