Son zamanlarda işler biraz karıştı, ben olması gerektiği gibi planlı programlı hareket edemedim, bunu fırsat bilen vizeler de araya baharat oldu. Tadı güzel oldu ama ağır geldi, sendeledim bir süre, hala da sendeliyorum. Müsebbibi ben olduğum için bu durumdan dolayı kızıp sakinleşeceğim kimse yok. Çaresiz sus-pus olup bir ucundan başladım kördüğümü çözmeye. Bu yazı da açtığım ufak bir boğum olsun.
Biraz Linux – Windows arası ağ paylaşımı konusundan bahsetmek istedi canım. Kesinlikle acemi olduğum bir mevzu ama şu anda sıkıntısız kullandığım samba paylaşımını nasıl oluşturduğumdan bahsedersem birilerinin işine yarayacağını ümit ediyorum.
Evde dosya paylaşımı için kullandığım bir ufaklık (mini server da diyebiliriz) var. Ben ona DP diyorum. DP‘de monitör, klavye ve mouse yok, yalnızca kasa var. Üstünde 64bit Ubuntu 10.10 kurulu, Windows yüklü bilgisayarlardan TightVNC ile, Pardus yüklü bilgisayarlardan da KRDC ile uzak masaüstü bağlantısı kurarak DP‘yi yönetiyorum. DP‘deki paylaştırılmış klasörlerin her biri için bir erişim listesi var, o liste dışındaki kullanıcılar paylaşılan içeriğe erişemiyorlar. Daha kolay anlaşılması için örnek vermek gerekirse; DP‘de her kardeşim için bir kullanıcı oluşturdum, herkesin erişmesini istediğim bir klasöre de bu kullanıcı isimleri için izin verdim. Yazma izinleri yok sadece okuyabiliyorlar. Onun dışında her kullanıcı için ayrı bir klasör oluşturdum ve kendileri dışında kimse o klasörlere erişemiyor, hem okuma hem de yazma hakları var. Şimdi asıl soruya gelelim, bu senaryo nasıl oluşturuluyor?
Nautilus‘un kendi içindeki paylaşım özelliğini yetersiz ve sıkıntılı bulduğum için ben bütün işlerimi samba aracılığıyla gerçekleştiriyorum ve hiç bir şikayetim yok. Samba kullanımı oldukça basit, özellikle Ubuntu‘da grafik arabirim ile istediğiniz düzenlemeyi yapabiliyorsunuz. Fakat dikkat edilmesi gereken bir husus var, istenen durumu oluşturana kadar paylaşımları bir oluşturup bir kaldırırsanız, sürekli değiştirirseniz, sambanın ayarlarını tuttuğu dosyada bir karmaşa oluşabiliyor ve paylaşımlar ne yaparsanız yapın pasif kalabiliyor. Bu durumda shares-admin (yönetici hakları gerektirir) aracı ile bütün paylaşımları silmenizi, /etc/samba/smb.conf dosyasını varsayılan dosya (/usr/share/samba/smb.conf) ile değiştirip ayarlarınızı tamamen sıfırlamanızı ve en baştan başlamanızı tavsiye ediyorum.
1) Gerekli programları kuruyoruz
sudo apt-get install samba samba-common
sudo apt-get install system-config-samba
2) Paylaşacağımız klasörleri ve gerekiyorsa onlara erişecek kullanıcı hesaplarını oluşturuyoruz
3) Sistem > Yönetim > Samba ile paylaşım düzenleyicisini açıyoruz (yönetici hakları gerektirir).
4) Preferences > Samba Users
Erişim için kullanılacak hesapları (samba kullanıcılarını) buradan oluşturuyoruz.
Kullanıcı Ekle
-Unix Username – oluşturacağımız samba hesabının, paylaşım bilgisayarındaki kullanıcı hesaplarından hangisi ile eşleştirileceğini belirtiyoruz
-Windows Username – erişim esnasında sorulacak kullanıcı adı
-Samba Password – erişim esnasında sorulacak kullanıcı parolası, hemen altındaki boşluğa da doğrulama için aynı parolayı yazıyoruz.
İstediğimiz gibi ayarladıktan sonra Tamam butonuna tıklayıp pencereyi kapatıyoruz.
5) Preferences > Server Settings
Eğer Windows yüklü bilgisayarlardan erişim sağlamak istiyorsak dikkat edilmesi gereken bir nokta var: samba ile Windows yüklü bilgisayarın çalışma grubu isimleri aynı olmalı (deniliyor ^^). Varsayılan olarak Windows‘un çalışma grubu ismi WORKGROUP ve bunu değiştiren kullanıcı sayısının da çok olduğunu sanmıyorum. Bu sebeple samba çalışma grubu ismini ben WORKGROUP olarak bıraktım. Sizler Windows‘taki çalışma grubu ismine göre değiştirmek durumunda kalabilirsiniz.
–Temel sekmesi
Workgroup – çalışma grubu ismi
Description – bilgisayarın ağdaki tanımı
–Güvenlik sekmesi
Authentication Mode – yetkilendirme şekli
-Kullanıcı – erişim sağlamak isteyen her bir samba kullanıcısının, paylaşımın bulunduğu bilgisayarda bir kullanıcı hesabı sahibi olmalarını gerektirir
-Paylaşım – paylaşımın bulunduğu bilgisayarda bir kullanıcı hesabı sahibi olmadan erişime izin verir
Bu listedeki diğer seçenekler konusunda bir fikrim yok malesef.
Encrypt passwords – parolaların şifrelenerek saklanmasını sağlar
Guest account – kullanıcısı bulunmayan kişilerin erişimi için misafir hesabının kullanımını belirler
İstediğimiz gibi ayarladıktan sonra Tamam butonuna tıklayıp pencereyi kapatıyoruz.
6) File > Add Share
–Temel sekmesi
Directory – paylaşmak istediğimiz klasörün yolu
Share Name – paylaşıma erişenlerin göreceği isim
Description - paylaşılan içerik ile ilgili tanıtıcı not
Belirteceğimiz kullanıcıların paylaşılan içerikte değişiklik yapmasına izin vermek istiyorsak Writable (Yazılabilir) seçeneğini aktifleştiriyoruz. Paylaşılan içeriğin görünür olmasını istiyorsak Visible (Görünür) seçeneğini aktifleştiriyoruz (bunu devredışı bırakırsak farklı bir bilgisayardan erişmek istediğimizde paylaşımı görmemiz mümkün olmaz).
–Erişim sekmesi
Only allow access to specific users seçeneği aktif olduğunda, hemen alttaki listeden yanlarındaki kutulara tıklayarak belirteceğimiz kullanıcılar dışında kimse bu paylaşıma erişemiyor. Kullanıcılar da parolaları ile erişim sağlayabiliyorlar.
Allow access to everyone seçeneği aktif olduğunda ise kim olduğuna bakılmadan herkes paylaşıma erişebiliyor.
İstediğimiz gibi ayarladıktan sonra Tamam butonuna tıklayıp pencereyi kapatıyoruz.
Paylaşımlarımızı kontrol etmek için:
smbtree komutunu verip paylaştığımız her klasörün listelendiğinden emin oluyoruz.
Normal şartlar altında bu işlemlerden sonra sorun çıkmadan paylaşım yapmanız mümkün olmalı. Eğer hala problem yaşıyorsanız:
sudo gedit /etc/samba/smb.conf
komutu ile ayarları kurcalayabilirsiniz. Paylaşımlarınız dosyanın en altında listelenir. Örneğin bir paylaşım şuna benzer olmalı;
[deneme]
comment = Deneme Paylaşımı
path = /paylaşımın/yolu
valid users = mercimek, root
writable = yes
browsable = yes
available = yes
Bu parametrelerden istediğinizden farklı olan varsa düzeltebilirsiniz. Ayrıca smbtree komutu parola şifrelemesi etkin değilken hata verebiliyor, bu durumda etkinleştirip tekrar deneyin.
Uzakmasaüstü mevzusu ise hiç bir ayarlama gerektirmiyor çünkü Ubuntu varsayılan olarak arkaplanda bir sunucu çalıştırıyor.
Üstünkörü bir anlatımla samba kullanımı bu şekilde oluyor. Eğer daha detaylı bilgilere ihtiyaç duyarsanız biraz araştırmanız gerekecek. İyi paylaşımlar
Not: Ben bu şekilde Windows Vista – Windows 7 – Ubuntu 10.10 – Pardus 2009.2 arası dosya paylaşımı yapabiliyorum.