Karma (Windows + Linux) ortamlarda dosya paylaşımı yönetirken, en sık karşılaşılan sorun kategorisi neredeyse her zaman izinlerdir. Samba (Windows istemciler için) ve NFS (Unix/Linux istemciler için) farklı izin modelleri kullandığından, bu karmaşıklığı anlamak kritik önem taşır.
POSIX İzin Hiyerarşisinin Temeli
Linux’ta her dosya/klasör için üç seviyede izin tanımlanır: sahip (owner), grup (group), diğerleri (others). Her seviye için okuma (r=4), yazma (w=2), çalıştırma (x=1) izinleri verilir.
chmod 750 /paylasim # Sahip: rwx, Grup: r-x, Diğerleri: yok chown kullanici:grup /paylasim ls -la /paylasim # Mevcut izinleri görüntüleme
Samba’da Çifte İzin Katmanı
Samba paylaşımlarında sıkça gözden kaçan nokta, izinlerin iki farklı katmanda kontrol edildiğidir: hem Linux dosya sistemi izinleri (POSIX) hem de Samba’nın kendi smb.conf dosyasındaki paylaşım tanımları. Bir kullanıcı dosya sistemi izni olsa bile, smb.conf’ta valid users veya write list parametreleri kısıtlayıcıysa erişim engellenir.
[paylasim] path = /veri/paylasim valid users = @satis_grubu read only = no create mask = 0660 directory mask = 0770
NFS’te Yaygın Tuzak: root_squash
NFS paylaşımlarında en çok karşılaşılan şaşırtıcı davranış, istemci tarafındaki root kullanıcısının sunucu tarafında otomatik olarak kısıtlanmasıdır (root_squash varsayılan davranıştır). Bu, güvenlik açısından doğru bir tercihtir ancak beklenmedik “izin reddedildi” hatalarına yol açabilir.
# /etc/exports örneği /veri/paylasim 192.168.10.0/24(rw,sync,root_squash)
Kullanıcı ID (UID/GID) Uyumsuzluğu
Karma ortamlarda en sinsi sorunlardan biri, farklı sistemlerdeki aynı kullanıcı adının farklı UID/GID değerlerine sahip olmasıdır. Bu durumda dosya sahipliği görünüşte doğru olsa da erişim reddedilir. Kurumsal ortamda bu sorunu, kullanıcı/grup kimliklerini merkezi bir dizin servisinden (Active Directory + SSSD/Winbind entegrasyonu) senkronize ederek kalıcı olarak çözüyorum.
Sonuç
Samba/NFS izin sorunlarının çoğu, “izinler doğru görünüyor ama erişim yok” senaryosunda gizlidir. Çözümün anahtarı, dosya sistemi izinleri, paylaşım seviyesi kısıtlamaları ve kullanıcı kimlik eşleşmesi olmak üzere üç katmanı ayrı ayrı doğrulamaktır.