Samba paylaşımında izin bitleri uygulanmıyor


12

Linux istemcisi kullanan bir samba paylaşımında izin bitlerinin uygulanmadığı bir sorunum var. Sunucuda samba'yı belirli bir kullanıcıyı, grubu ve izin bitlerini zorlayacak şekilde yapılandırdım ve dosyaya dokunana veya GÇ yönlendirmesinin hedefi haline gelene kadar bu beklendiği gibi çalışıyor.

İşte olanlar:

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

Varolan dosyaya dokunduğumda, izin bitleri 0777. Mevcut dosyada 0664'ü nasıl zorlayabilirim?

Sunucuda 3.0.24 sürümü ve istemcide 3.4.7 sürümü var. İşte benim 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

Smb.conf dosyasında neler var?
Grizly

Benim smb.conf içeriğini koymak. Açıkçası, tüm açık mod ve maske bit gerektiriyor emin değilim.
Jonathon Watney

@Jonathon tüm touching bir * nix sistemde gibi görünüyor ... dosyayı windows üzerinde oluşturduğunuz sistem mi? veya dosyayı bir Windows sisteminden mi oluşturuyorsunuz? ya da bu * nix ile * nix arasında samba aracılığıyla (bu durumda neden
nqba

@xenoterracide, bir Linux istemcisi kullanarak paylaşımdaki bir dosyaya dokunuyorum; Bu durumda * nix'e * nix'e gidiyorum. Bu samba hizmetine bağlanan Windows, Mac ve Linux makinelerinin bir karışımı var.
Jonathon Watney

Maskelerinizin iyi olduğundan emin misiniz? maske, güvenlik maskesi, dizin maskesi. Dokümanlar hava koşullarında net değildir, '0' maskeler için tek başına geçerlidir. Bunun dışında ... ne kadar garip.
gabe.

Yanıtlar:


2

Samba izinleri yalnızca SMB (Windows) ağ istemcilerinde çalışır. Bunu sunucuda (ve herhangi bir NFS istemcisinde) zorlamak istiyorsanız, yapışkan biti tüm dizinlerde ayarlamanız gerekir.

önce orada bulunan dosyaları düzeltin:

chown -R archive /home/archive 
chgrp -R archive /home/archive 
find /home/archive -type d -exec chmod 0775 {} \;
find /home/archive -type f -exec chmod 0664 {} \;

sonra bunu grup yapışkan biti ile uygula

find /home/archive -type d -exec chmod g+s {} \;

Bu faal değildir, ancak bu tür bir sorunun% 99'unu çözer.

Saygılarımızla DaveF

Solaris kutumun sonucu:

davef@dalek[10]$ cd /proj/ftptmp
davef@dalek[11]$ ls -ld .
drwxrwsr-x  60 root     ftpusers     377 Oct  5 09:31 ./
davef@dalek[12]$
davef@dalek[12]$ ls -l foo.txt
foo.txt: No such file or directory
davef@dalek[13]$ touch foo.txt
davef@dalek[14]$ ls -l foo.txt
-rw-rw-r--   1 davef    ftpusers       0 Oct 15 11:49 foo.txt
davef@dalek[15]$ touch foo.txt
davef@dalek[16]$ ls -l foo.txt
-rw-rw-r--   1 davef    ftpusers       0 Oct 15 11:49 foo.txt
davef@dalek[17]$
davef@dalek[17]$ umask
2
davef@dalek[18]$

Teşekkürler. Sonunda bunu denemek için bir şans vardı ama maalesef sorun devam ediyor.
Jonathon Watney

Senin umaskın olabilir mi acaba?
David Allan Finch

Benim umask 0022. Başka fikir var mı? :)
Jonathon Watney

Linux kutumda denemem gerekiyor. Henüz vaktim olmadı. BTW, NFS Unix'i Linux'a vb. SMB değil kullanıyoruz.
David Allan Finch
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.