NFS (Network File System), ağ üzerinden farklı bilgisayarlar arasında dosya paylaşımını sağlayan güçlü ve verimli bir protokoldür. Bu protokol, özellikle Unix/Linux sistemlerde yaygın olarak kullanılır ve istemcilerin, bir sunucunun dosya sistemine yerelmiş gibi erişmesine olanak tanır. NFS, verimli dosya paylaşımı ve hızlı veri erişimi için tercih edilen bir çözümdür. Bu yazıda, NFS’nin ne olduğunu, nasıl çalıştığını ve NFS sunucu ve istemci kurulumunun nasıl yapılacağına dair adım adım bir rehber bulacaksınız.


NFS Nedir? NFS Protokolü ve Çalışma Yapısı

NFS (Network File System), ağ üzerinde verimli dosya paylaşımı sağlamak için kullanılan bir protokoldür. İstemciler, sunucunun paylaştığı dizinlere sanki yerel bir dosya sistemiymiş gibi erişebilirler. NFS’nin amacı, farklı bilgisayarlar arasında dosya paylaşımını hızlı ve güvenli bir şekilde yapmaktır. Unix ve Linux tabanlı sistemlerde yaygın olarak kullanılır.

NFS protokolü üç ana bileşenden oluşur:

  • Sunucu (Server): Dosya paylaşımını sağlayan sistemdir.
  • İstemci (Client): Paylaşılan dizinlere bağlanarak bu dizinleri yerel bir dosya sistemi gibi kullanır.
  • RPC (Remote Procedure Call): Sunucu ve istemci arasındaki iletişimi sağlayan protokoldür.

NFS portları

  • Portmapper (rpcbind) – Port 111 (TCP/UDP): NFS ve diğer RPC tabanlı servislerin hangi portlarda çalıştığını bildirir.
  • NFS Daemon (nfsd) – Port 2049 (TCP/UDP): Dosya erişimi için kullanılan ana NFS portu.
  • Mountd – Dinamik Port (Genellikle 20048): NFS istemcilerinin paylaşımları mount etmesini sağlar.

NFS, istemcilerin bir sunucudaki dosya sistemine ağ üzerinden bağlanarak bu dosyaları okumasına, yazmasına ve düzenlemesine olanak tanır. NFS sunucusu, ağ üzerinden dosya paylaşımını sağlar ve istemciler bu paylaşıma erişir.


NFS Kurulumu ve Yapılandırması: Sunucu ve İstemci Adımları

Sunucu Tarafında NFS Kurulumu

  1. NFS Sunucusunu Yükleyin
Bash
sudo apt install nfs-kernel-server
  1. Paylaşılacak Dizinleri Oluşturun
Bash
sudo mkdir /nfs-area
sudo mkdir /nfs-area/accounting
sudo mkdir /nfs-area/technical
  1. Dizin Paylaşımını Yapılandırın : /etc/exports dosyasını düzenleyerek paylaşılacak dizini belirtin
Bash
/nfs-area/accounting *(rw,no_subtree_check)
  1. Yapılandırmayı Uygulayın
Bash
sudo exportfs -a

İstemci Tarafında NFS Kurulumu

  1. NFS İstemcisini Yükleyin
Bash
sudo apt install nfs-common
  1. Paylaşımları Listeleyin
Bash
showmount --exports 192.168.1.10
  1. Mount Noktalarını Oluşturun
Bash
sudo mkdir /mnt/nfs
sudo mkdir /mnt/nfs/accounting
  1. Geçici Olarak Mount Etme
Bash
sudo mount 192.168.1.10:/nfs-area/accounting /mnt/nfs/accounting
  1. Kalıcı Olarak Mount Etme
Bash
nano /etc/fstab

Aşağıdaki satırı ekleyin

Bash
192.168.1.10:/nfs-area/accounting /mnt/nfs/accounting defaults 0 0

NFS Mount Noktalarını Görüntüleme

NFS mount noktalarını listelemek için şu komutları kullanabilirsiniz:

Bash
mount | grep nfs

veya

Bash
df -hT | grep nfs

NFS Paylaşımını Kaldırma (Unmount)

Bir NFS paylaşımını kaldırmak için:

Bash
sudo umount /mnt/nfs/accounting/

NFS Erişim Hataları ve Çözüm Yöntemleri

NFS yapılandırmasında, bazen istemci ve sunucu arasında bağlantı sorunları veya erişim hataları oluşabilir. Örneğin, şu hata mesajını alabilirsiniz:

rpc.mountd[2936950]: refused mount request from x.x.x.x for /nfs-area/accounting (/nfs-area/accounting): illegal port 46333

NFS sunucusu, yalnızca rezerv portları (0 ile 1024 arasındaki TCP/UDP portları) kullanarak bağlantı yapılmasına izin verir. Bu hatayı çözmek için, 0 ile 1024 arasındaki portları kullanabilir veya / paylaşım ayarlarını şu şekilde değiştirebilirsiniz:

Bash
/nfs-area/accounting *(rw,sync,no_root_squash,insecure)

Bu değişiklik, istemcilerin rezerv olmayan portlar üzerinden NFS sunucusuna bağlanmasına izin verecektir.


NFS (Network File System), ağ üzerinden dosya paylaşımını sağlayan güçlü bir protokoldür ve doğru yapılandırıldığında, ağınızdaki dosya sistemlerine hızlı ve güvenli bir şekilde erişim sağlar. Bu yazıda, NFS sunucu ve istemci kurulumu, NFS paylaşımlarının yönetimi ve olası sorunların çözümü hakkında kapsamlı bir bilgi sunduk. NFS, özellikle Unix/Linux ortamlarında verimli dosya erişimi için idealdir ve doğru yapılandırıldığında güçlü bir dosya paylaşım çözümü sunar.