Linux dosya sunucusundaki yeni dosyalar / klasörler için belirli izinleri nasıl zorlarım?


14

Ubuntu 9.10 (dosya sunucusu) yüklemem ve samba izinleriyle ilgili bir sorun yaşıyorum. Giriş yapma ve okuma iyi çalışıyor. Ancak, kullanıcılar tarafından yeni dizinlerin oluşturulması diğer kullanıcılar için erişimi kısıtlar. Örneğin, Bob (sürücüyü eşleyen Windows kullanıcısı) dizinde bir klasör oluşturursa, Jane (basitçe kulağa takılan Mac kullanıcısı) ondan okuyabilir, ancak yazamaz - veya tam tersi. O zaman herkesin mutlu olabilmesi için CHMOD 777 dizinine gitmeliyim. Smb.conf dosyasındaki "create / directory mask" ve "force" seçeneklerini düzenlemeyi denedim, ancak bu yardımcı olmuyor gibi görünüyor.

Her ne kadar bu düzeltme olmadığından eminim, özyinelemeli bir chmod rutin CRONTABing başvurmak üzereyim. Tüm yeni eşyaların her zaman 777 olmasını nasıl sağlayabilirim? Herkes bu sürekli durumu düzeltmek için herhangi bir öneriniz var mı?

En iyi


Kullanıcı grupları ve diğer yerel izinler, chmod 777'yi kullanma.
Warner

Yanıtlar:


13

Genellikle paylaşımlarda izinler ve grup yönetimi için SAMBA'nın yerel işlevlerini kullanırım. Örneğin..

force user=user1
force group=sharedgroup
create mask=775

Bu ayarları paylaşım altında belirlersiniz. İnit betiği ile yapılabilecek yapılandırma değişikliğinden sonra SAMBA'yı yeniden yüklediğinizden emin olun.


1
Ancak yazı bunu yaptığını ve işe yaramadığını söylüyor ....
Mistiry

2
Sonra yanlış yaptı. İşe yarıyor.
Warner

Ne olduđundan emin deđilim. Ben boşuna el ile ve Webmin üzerinden denedim. Belki de grup seçimim yanlış mı? Ben "kullanıcılar" yanı sıra tüm üyeleri yapılmış çeşitli elle oluşturulan grupları kullanarak denedim. Ne yaptığımdan bağımsız olarak, kullanıcılar kendilerine yerleştirmedikleri hiçbir şeyi değiştiremezler. Tek "çözüm", tüm kullanıcıların kafa karışıklığı yaratan GUEST olarak oturum açmasını (veya bağlamasını) sağlamaktır.
humble_coder

SAMBA, yapılandırma içinde dosya sistemi izinlerinin ve ayarlarının bir birleşimini kullanır. Kullanıcıların write listpaylaşım yapılandırmasında yazmasına izin verilmiyorsa veya başka türlü yazmasına izin verilmiyorsa, çalışmaz. SAMBA'nın çalıştığı kullanıcı dizinlere erişemezse, çalışmaz. Kullanıcılar uygun grubun üyesi olmalı, dizinler ve dosyalar bu gruba ait olmalı ve grup için yazılabilir bit ayarlanmalıdır. SAMBA günlüklerini de kontrol edebilirsiniz.
Warner

2
Bunun için uzun zamandır arıyordum! Teşekkürler! :) Beklendiği gibi çalışıyor.
NagyI

2

Dizindeki izinleri şu şekilde 2777 olarak ayarlayın:

chmod 2777 /shared/dir

Bu, '/ shared / dir' dizini altındaki tüm dosya ve klasörlerin en iyi dizinin izinlerini devralmasına neden olur, bu durumda 777.

Daha sonra, tüm dosyaların uygun izinlere sahip olduğundan emin olmak için bunu yapın:

chmod -R 777 /shared/dir

Açıkça yazılabilir olan tek durum hakkındadır /tmp.
Warner

1
Evet, duruma bağlı olarak muhtemelen 774 hatta 770 kullanmak daha iyidir. Ama hepsini nasıl '777' yapacağımı sordu, ben de bunu örneğimde kullandım.
Mistiry

3
Evet, ancak ağ üzerinden bu dizine kopyalanacak gelecekteki tüm dosyaların ilk izinlerinden bağımsız olarak aynı izinleri almasını nasıl sağlayabilirim? Manuel olarak yaparken problemim yok, sadece otomatik olmasını istiyorum.
humble_coder

2
Bu çalışmıyor. Klasörler için setgid bayrağı izinleri değil, yeni dosya ve klasör grubunu ayarlar ve chmod'u her zaman çalıştırmak kabul edilemez. Linux'ta Steam için samba ile ilgili olmayan bir çözüme ihtiyacım var, böylece kullanıcılar arasında kitaplığı paylaşabilirim.
Sam Watkins

2

Bunun eski bir soru olduğunun farkındayım ama son zamanlarda benzer bir sorunum vardı ve bunu nasıl çözdüm:

[Paylaş]
güvenlik maskesi = 0770
maske oluştur = 0770
oluşturma modunu zorla = 0660
comment = BT için Samba payı
yol = / baskın / paylaşım
göz atılabilir = EVET
misafir ok = hayır
listeyi yaz = kök, @ "DOMAIN + it_nfs"
kuvvet grubu = DOMAIN + it_nfs

Bu, kullanıcıların AD'deki "it_nfs" güvenlik grubunda yer almasını, tüm dosyaların "it_nfs" grubuyla yazılmasını ve tüm dosyaların en az 0660 ve en fazla 0770 izinle yazılmasını sağlar. Grup kimliğini zorlamak, o gruptaki herkesin paylaşımdaki dosyaları okuyabilmesini / yazabilmesini sağlar. Aksi takdirde, her ikisi de "it_nfs" de olsa, bob: bob olarak yazılan bir dosyanın charlie: charlie tarafından yazılamadığı durumlarla sonuçlanırsınız.


0

Kabul edilen cevabın yorumlarından, aslında OP'nin problemini çözmedi ve OP benimkiyle aynı soruna sahip olsaydı, diğer cevaplar da çözülmedi:

Bir NTFS / FAT bölümünde paylaşım olması.

Aile albümlerinizi paylaşmak için masaüstü diskinizi bir NAS'a takarken bunu unutmayın: kullanıcı, grup, modlar vb. İçin fs mount params Samba için yapılandırılmış olan her şeyi geçersiz kılar ! ;)

(Örneğin, benim durumumda, smb.confher şey ne olursa olsun , NTFS sigorta montajı için fstab'a göre - rootile oluşturuldu ...)777defaults

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.