Loading AI tools
Vikipedi'den, özgür ansiklopediden
Ağ Dosya Sistemi (İngilizce Network File System, kısaca NFS), Network file system, yani ağ dosya sistemi diğer bilgisayarlardaki dosyalara erişilebilmesini sağlayan bir yerel ağ işletim sisteminin parçasıdır.[1] Bilgisayarlarda kullanılan programların network makinalarında kullanılmasını sağlar.[2] Sun Microsystems tarafından 1984 yılında geliştirilmiş, ağdaki bilgisayarların ortak bir dosya sistemine, yerel diskleri kadar kolay ulaşmasını sağlayan, RPC temelli dağıtık dosya sistemi yapısıdır.
![]() | Vikipedi'nin kalite standartlarına ulaşabilmesi için, bu maddenin veya bir bölümündeki ansiklopedik olmayan içeriğin temizlenmesi gerekmektedir. Görüşlerinizi lütfen tartışma sayfasında belirtiniz. (Ocak 2013) |
![]() | Bu madde, Vikipedi biçem el kitabına uygun değildir. (Ocak 2013) |
İnternet iletişim kuralları dizisi | ||
Katman | İletişim kuralları | |
7. | Uygulama katmanı | HTTP, DNS, SMTP, FTP, TFTP, UUCP, NNTP, SSL, SSH, IRC, SNMP, SIP, RTP, Telnet, ... |
6. | Sunum katmanı | ISO 8822, ISO 8823, ISO 8824, ITU-T T.73, ITU-T X.409, ... |
5. | Oturum katmanı | NFS, SMB, ISO 8326, ISO 8327, ITU-T T.6299, ... |
4. | Ulaşım katmanı | TCP, UDP, SCTP, DCCP, ... |
3. | Ağ katmanı | IP, IPv4, IPv6, ICMP, ARP, İnternet Grup Yönetim Protokolü, IPX,... |
2. | Veri bağlantısı katmanı | Ethernet, HDLC, Wi-Fi, Token ring, FDDI, PPP, L2TP... |
1. | Donanım katmanı | ISDN, RS-232, EIA-422, RS-449, EIA-485, ... |
NFS sayesinde kullanıcı kendi bilgisayarına ihtiyaç duymadan NFS yoluyla istediği makinadan kendi dizinine (home directory) erişebilir. NFS protokolünün bazı dezavanatajları vardır onlardan biri belkide en büyüğü de modem bağlantısı üzerinde çok yavaş olduğu için yeterli bir protokol olamamasıdır. Ama yerel ağlar için tasarlanan (local network) NFS bir hayli esnektir ve hem kullanıcılar hem de sistem sorumluları (adminisrator) için birçok olasılık barındırır.[3]
Sun sürüm 1 ‘i sadece şirket içi amaçlar için kullandı.Geliştirme ekibi, NFS sürüm 1'e önemli değişiklikler ekleyip Sun'ın dışında yayınladığında, sürüm birlikte çalışması ve RPC sürüm yedeğinin test edilebilmesi için yeni sürümü v2 olarak yayınlamaya karar verdiler.[6][7]
Protokolün 2. sürümü Mart 1989'da RFC 1094'te tanımlanmıştır. NFS sürüm 2'nin oluşturulmasında yer alan kişiler arasında Russel Sandberg, Bob Lyon, Bill Joy, Steve Kleiman ve diğerleri yer alır.[8][9]
Başlangıçta yalnızca Kullanıcı Datagram Protokolü (UDP) üzerinden çalıştırılmıştır. Tasarımcıları, örneğin çekirdek protokolün dışında uygulanan kilitleme ile sunucu tarafını durum bilgisi olmadan(stateless) tutmayı amaçlıyordu. NFSv2, bir IP ağı (port 2049) üzerinden hem TCP hem de UDP protokolünü kullanabilir. Ancak, istemci ile sunucu arasında durum bilgisi olmayan(stateless) bir ağ bağlantısı sağlamak için bir IP ağı üzerinden çalışan UDP'yi kullanır. UDP durum bilgisizdir (stateless), sunucu beklenmedik şekilde çökerse, UDP istemcileri ağı sunucu istekleriyle doldurmaya devam eder. UDP ile bir çerçeve kaybolduğunda, tüm RPC isteğinin yeniden iletilmesi gerekir.[10] Sanal Dosya Sistemi arabirimi, basit bir protokolde yansıtılan modüler bir uygulamaya izin verir. Şubat 1986'da, Eunice kullanılarak System V sürüm 2, DOS ve VAX/VMS gibi işletim sistemleri için uygulamalar gösterildi.[9] NFSv2, 32 bitlik sınırlamalar nedeniyle bir dosyanın yalnızca ilk 2 GB'lık kısmının okunmasına izin verir. NFS sürüm 2 (NFSv2) diğer sürümlerden daha eskidir ve yaygın olarak desteklenmektedir. Ancak RHEL7'de desteklenmez.[10]
NFSv3 Haziran 1995'te piyasaya sürüldü NFSv3, sunucunun verileri senkronize etmek için doğru politikaları dikte etmesine izin veren eş zamansız yazma işlemlerini destekler. Veriler, verileri yönetmeyi taahhüt etme komutu oluşturulmadan önce senkronize edilecektir. Tasarım, NFSv2 ile karşılaştırıldığında daha iyi bir tamponlama üretir.
RFC 1813'te belirtilen NFSv3, aşağıdaki yeni özellikleri ve güncellemeleri içeriyordu:
Sun'dan NFS dağıtılmış dosya sisteminin bir Web sürümü. WebNFS özellikli sunucular ve tarayıcılar, Web sayfalarına standart HTTP protokolünden 10 kat daha hızlı erişim sağlar. Her küçük dosya yalnızca bir sonrakine yeniden bağlanmak için indirildikten sonra bağlantıyı bırakan HTTP'nin aksine, WebNFS tek bir bağlantıyla birden fazla dosya indirir. Ayrıca, orta akışta bağlantılarını kaybeden büyük indirmeler için hata toleransı sağlar.[13]
Sürüm 4 (RFC 3010, Aralık 2000; RFC 3530, Nisan 2003'te ve tekrar RFC 7530, Mart 2015'te revize edilmiştir),Andrew Dosya Sistemi (AFS) ve Sunucu İleti Bloğundan (SMB, CIFS olarak da adlandırılır) etkilenir, performans iyileştirmeleri içerir, güçlü güvenliği zorunlu kılar ve durum bilgisi olan bir protokol sunar.[14][15] Sürüm 4, Sun Microsystems'in NFS protokollerinin geliştirilmesini devretmesinin ardından İnternet Mühendisliği Görev Gücü (IETF) ile geliştirilen ilk sürüm oldu.
NFS sürüm 4.1 (RFC 5661, Ocak 2010; RFC 8881'de revize edilmiştir, Ağustos 2020), birden çok sunucu arasında dağıtılan dosyalara ölçeklenebilir paralel erişim sağlama yeteneği (pNFS uzantısı) dahil olmak üzere kümelenmiş sunucu dağıtımlarından yararlanmak için protokol desteği sağlamayı amaçlar.Sürüm 4.1, Oturum kanallama mekanizmasını (NFS Çoklu Yol olarak da bilinir) içerir ve bazı kurumsal çözümlerde VMware ESXi olarak bulunur.NFS Sürüm 4.2 (RFC 7862) Kasım 2016'da[16] sunucu tarafı klon ve kopya, uygulama G/Ç tavsiye, seyrek dosyalar, uzay rezervasyonu, uygulama veri bloğu (ADB), Sec_Label ile etiketlenmiş yeni özelliklerle yayınlandı. Bu, herhangi bir MAC güvenlik sistemini ve PNF'ler (LayouterRor ve LayoutStats) için iki yeni işlemi barındırır.
NFSv4'ün öncüllerine göre en büyük avantajlarından biri, hizmeti çalıştırmak için yalnızca bir UDP veya TCP bağlantı noktası olan 2049'un kullanılmasıdır; bu, protokolü güvenlik duvarlarında kullanmayı basitleştirir.
Sürüm 2 ve Sürüm 3'ün bir uzantısı olan WebNFS, NFS'nin Web tarayıcılarına daha kolay entegre olmasını ve güvenlik duvarları üzerinden çalışmayı etkinleştirmesini sağlar. 2007'de Sun Microsystems, istemci tarafı WebNFS uygulamalarını açık kaynaklı hale getirdi.[17]
Özellikler | NFSv3 | NFSv4 |
Kişilik | Durum Bilgisi olmayan | Durum Bilgisi olan |
Semantikler | UNIX | UNIX ve Windows |
Kimlik Doğrulama | Zayıf(Auth_sys) | Güçlü(kerberos) |
Tanılama | 32-bit UID/GID | Metin tabanlı (xyz@netapp.com) |
İzinler | UNIX Tabanlı | Windows Tabanlı |
Aktarma Protokolü | UDP ve TCP | TCP |
Önbelleğe Alma | Ad hoc | Dosya Delegasyonları |
Çıkış sürüm | Özellikler |
6.4.x | Temel NFSV4 desteği. Lipkey ve SPKM-3 ve erişim ve denetim ACE hariç tüm zorunlu özellikler. |
6.5/6.5.1 ve 6.5.2 | Temel NFSV4 desteği. Lipkey ve SPKM-3 ve Access hariç tüm zorunlu özelliklerve ACE denetim. Delegasyon desteği eklendi |
6.5.3/7.0 | ACL'ler dahil temel NFSV4 desteği. Lipkey ve SPKM3 ve erişim ve denetleme ACE hariç tüm zorunlu özellikler. Yazma delegasyonları ile gönderildi. |
7.0.1/7.1 | ACL kalıtımı Data ONTAP 7.0.1'de tanıtıldı ve nfs.v4.acl.enable opsiyonu aracılığıyla kontrol edildi, ancak bu, ACL'nin kalıtsal ACL varsa her zaman kalıtsal olduğu Veri ONTAP 7.1 ve sonraki sürümlerde değiştirildi. Veri ONTAP 7.1 ayrıca daha sağlam sahte dosya sistemi uygulamasına sahiptir |
7.3 | İç içe dışa aktarma kurallarını, unicode (UTF8) ve nFSV4 geri çağrılarını karberize eder. |
7.3.1 | Veri ONTAP 7.3.1'den başlayarak, NFSV4 IPv6 üzerinden desteklenir. Yeni bir seçenek,Maksimum Yardımcı sayısını belirten nfs.max_num_aux_groups, eklendiBir kullanıcının ait olabileceği UNIX grupları. Varsayılan değer 32'dir. SeçenekNFS sunucusunun olup olmadığını belirtmek için bu sürümde nfs.thin_prov.ejukeeklendibir müşteriyi bağlantıyı kırarak veya göndererek bir isteği yeniden denemeye zorlarNFSERR_JUKEBOX (NFSV3) veya NFS4ERR_DELAY (NFSV4). NFSV2'yi etkilemez. |
7.3.3 | Veri ONTAP 7.3.3'ten başlayarak, Exportfs komutu için seçeneklerle güncellendiNFS Access Cache'de girişleri yönetme (-c seçeneği birden fazla IP adresi almak içinBağımsız değişkenler ve –f seçeneği, kullanıcının erişim önbelleğini temizlemesine izin veren bir –N parametresi içerirbelirli bir ana bilgisayara karşılık gelen girişler). Veri ONTAP 7.3.3 ile başlayarak, yeni bir seçenekNFS NSDB Flush, ad sunucusundan belirtilen girişleri yıkayan tanıtıldıVeritabanı Önbelleği (NSDB) |
7.3.4 | Seçeneği nfs.v4.snapshot.active.fsid.enable, FSID'ninbirSnapShot® kopyasındaki nesnelerin, NFSV4 için etkin dosya sisteminin FSID'siyleeşleşir,Bu sürümde eklendi |
7.3.5 | Veri ONTAP 7.3.5 ile başlayarak, yeni gizli bir seçenek nfs.v4.acl_preserveMod bitleri ayarlandığında ACL'yi korumak için tanıtıldı. |
7.3.5.1 | Veri ONTAP 7.3.5.1 ile başlayarak, iki yeni gizli seçenek“Nfs.v4.lock_laststate_cleanup” ve “nfs.v4.open_laststate_cleanup,”artık herhangi bir kullanıcı tarafından kullanılmayan kilit ve açık durumları temizleyen,Dosya veya dizin, denetleyici bellek kaynaklarında düşük çalışırken |
NFS genellikle Unix işletim sistemleri Apple macOS ve Unix benzeri işletim sistemleri ve Acorn gibi işletim sistemleri için de mevcuttur, Dosya Sunucusu, dosya sistemi olarak da adlandırılır.[23]
1) Sunucu varsayılan olarak nfs arka plan programı işlemlerini uygular ve verileri genel olarak müşteriler için kullanılabilir bir hale getirir
2) Sunucu yöneticisi (adminisrator) dizinleri kullanarak dizinlerin adlarını ve parametrelerini dışa aktararak neyin kullanılabilir olacağını belirler
3) Sunucu güvenik- yönetim, onaylanmış müşterilerin tanınmasını ve onaylanmasını sağlar
4) Sunucu ağ yapılandırılması, uygun istemcilerin herhangi bir kişi aracılığıyla onunla pazarlık yapmasını sağlar
5) İstemci makina, dışa aktarılan verilere NFS sunucusunun hangi bağlantısını kullandığını sorar
Her şey yolunda giderse, istemci makinedeki kullanıcılar izin verilen parametreler dahilinde sunucudaki monte edilmiş dosya sistemlerini görüntüleyebilir ve bunlarla etkileşime girebilir.[24]
NFS olarak adlandırılan şey birbirinden farklı 4 protokolün birleşmesinden meydana gelmiştir. Bu 4 protokolde RPC(Remote Procedure Calls) ve portmap (rpc.portmap) portmapper, RPC program numaralarını port numaralarına çevirir. RPC sunucusu çalışmaya başladığında portmap'e hangi kapının kullanılacağını ve yönetilen RPC program numarasını söyler.Bir kullanıcı bir program numarasına bir RPC isteği göndermek istediğinde; istenen programa erişim veren port numarasını almak için öncelikle sunucu 'portmap'iyle bağlantı kurulur.Ardından RPC paketleri ilgili portlara gönderilir.
Protokol | Tanımı | Arabirimi |
---|---|---|
NFS | Temel protokol olup dosya yaratma, arama, okuma, yazmaya izin verir. Güvenilirlik ve dosya istatiğini de yöneten protokoldür | nfsd |
mountd | İhraç edilen dosya dizgelerinin nfs ile erişimlerini sağlamak için kurulmalarından sorumludur. 'mount' ve 'umount' gibi istekleri alan sunucu ihraç edilen dosya dizgelerine ait bilgileri tutmak zorundadır. | mountd |
Nsm (Ağ Durum Ekranı) | Bir makinanın durumunu (sunucu-istemci) belirlemek için ağ düğümlerini izleyip kontrol etmek amacıyla kullanılır. | statd |
Nlm(Ağ kilit Yöneticisi) | Aynı anda farklı istemcilerin verileri değiştirmesini engellemek için bu protokol bir kilit dizgesi kullanır. Hangi dosyaların kullanıldığını bilir ve nsm protokolünün yardımıyla bir istemcinin ne zaman başladığını saptar.Nsm her kullanıcını kilidini, geri vermeden önce serbest bırakır. | lockd |
ONC protokolünün geliştirilmesi sırasında (o zaman SUNRPC olarak adlandırılır), sadece Apollo'nun Ağ Bilgi İşlem Sistemi (NCS) karşılaştırılabilir işlevsellik sundu. İki uzak prosedür çağrı sisteminde temel farklılıklar üzerinde iki rakip grup gelişti.Veri kodlama yöntemine odaklanan argümanlar-ONC'nin harici veri temsili (XDR), bağlantının her iki akranının da çok az-endian makine mimarileri olsa bile, tam sayıları her zaman büyük-endian sırasıyla oluşturdu, oysa NCS yöntemi bayt-SWAP'tankaçınmaya çalıştı İki akran, makine mimarilerinde ortak bir endianness paylaştığında.(Mart 1987) (nihayetinde başarısız olan) iki ağ bilgilendirme ortamını uzlaştırmaya çalışırken (Mart 1987) oluşturulan ağ bilgi işlem forumu olarak adlandırılan bir endüstri grubu.
1987'de Sun ve AT&T, AT & T'nin UNIX System V sürüm 4'ü birlikte geliştireceklerini açıkladılar.[25] Bu, AT & T'nin diğer UNIX sistemi lisans sahiplerinin çoğunun Sun'ı avantajlı bir konuma getireceğinden endişe etmesine neden oldu ve sonuçta 1988'de Dijital Ekipman, HP, IBM ve diğerlerine yol açtı. İronik olarak, Sun Ve AT&T daha önce AT & T'nin Uzak Dosya Sistemine (RFS) karşı Sun'ınNFS'si üzerinde yarışmıştı ve NFS'nin Dijital Ekipman, HP, IBM ve diğer birçok bilgisayar satıcısı tarafından RFS üzerinden hızlı bir şekilde benimsenmesi, kullanıcıların çoğunu NFS lehine devirdi.NFS birlikte çalışabilirliğine, 1986'da başlayarak birbirleriyle satıcıya göre satıcının test edilmesine izin veren "Connectathons" adlı olaylar tarafından desteklendi.[26]
OSF, Sun/ONC RPC ve NFS üzerinden dağıtılmış bilgi işlem ortamını (DCE) ve DCE dağıtılmış dosya sistemini (DFS) benimsedi. DFS, DCE'yi RPC olarak kullandı ve Andrew Dosya Sisteminden (AFS) türetilen DFS; DCE, Apollo'nun NCS ve Kerberos dahil olmak üzere bir dizi teknolojiden türetilmiştir.[27]
Sun Microsystems ve İnternet Derneği (ISOC), ISOC'nin Mühendislik Standartları Organı, İnternet Mühendisliği Görev Gücü (IETF), ONC RPC ile ilgili standart belgeleri (RFC'ler) yayınlayabilmesi için ONC RPC'nin "değişim kontrolünü" kurtarmak için bir anlaşmaya vardı Protokoller ve ONC RPC'yi genişletebilir. OSF, DCE RPC'yi bir IETF standardı yapmaya çalıştı, ancak sonuçta değişim kontrolünden vazgeçmek istemedi. Daha sonra, IETF, protokol standartlarının yeterli güvenliğe sahip olduğu gereksinimlerini karşılamak için Jenerik Güvenlik Hizmetleri Uygulama Program Arabirimi'ne (GSSAPI), RPCSEC GSS'ye dayalı yeni bir kimlik doğrulama aroması ekleyerek ONC RPC'yi genişletmeyi seçti. Daha sonra, Sun ve ISOC, NFS sürüm 2 ve sürüm 3'ü hariç tutmak için sözleşmeyi dikkatlice yazmakla birlikte, ISOC kontrolü NFS üzerinde değişim kontrolü vermek için benzer bir anlaşmaya varmıştır. 2003 yılında NFS sürüm 4 belirtilmesi.
21. yüzyıla gelindiğinde, ne DFS ne de AFS, SMB-CIFS veya NFS ile karşılaştırıldığında önemli bir ticari başarı elde etmemişti. Daha önce DFS ve AFS'nin birincil ticari satıcısı olan Transarc'ı satın almış olan IBM, 2000 yılında AFS kaynak kodunun çoğunu özgür yazılım topluluğuna bağışladı. OpenAFS projesi devam etmektedir. 2005'in başlarında IBM, AFS ve DFS satışlarının sona erdiğini duyurdu. Panasas, Ocak 2010'da Paralel NFS (pNFS) teknolojisine dayanan bir NFSv4.1 önerdi ve veri erişimi paralellik[28] kabiliyetini iyileştirdiğini iddia etti. NFSv4.1 protokolü, dosya sistemi metaverilerini dosya verileri konumundan ayırma yöntemini tanımlar; verileri bir dizi veri sunucusu arasında ayırarak basit ad/veri ayrımının ötesine geçer. Bu, dosyaların adlarını ve verilerini sunucunun tek şemsiyesi altında tutan geleneksel NFS sunucusundan farklıdır. Bazı ürünler çok düğümlü NFS sunucularıdır, ancak istemcinin metaveri ve verilerin ayrılmasına katılımı sınırlıdır.NFSv4.1 pNFS sunucusu, bir dizi sunucu kaynağı veya bileşenidir; bunların metaveri sunucusu tarafından kontrol edildiği varsayılır.pNFS istemcisi, ad alanıyla geçiş veya etkileşim için bir metaveri sunucusuna erişmeye devam eder; İstemci verileri sunucuya taşıdığında ve sunucudan taşıdığında, pNFS sunucu koleksiyonuna ait veri sunucuları grubuyla doğrudan etkileşim kurabilir. NFSv4.1 istemcisi, dosya verilerinin tam konumunda doğrudan katılımcı olacak ve verileri taşırken bir NFS sunucusuyla yalnız etkileşimi önleyecek şekilde etkinleştirilebilir.
NFS'in çalışması, yerel bir diskin mount edilmesi kadar kolaydır. Örnek olarak NFS sunucusu olan aspendos makinesinde yer alan /home dizinini, yerel makinadaki /users dizinine yerleştirmek için:
# mount -t nfs aspendos:/home /users
kullanılır. mount, karşı makinanın erişim izinleri doğru olduğunu teyit ettiği anda bu işlemi gerçekleştirir.
Sunucu ile istemci arasındaki mesaj alış-verişini mountd programı üstlenir.
NFS kullanabilmek için çekirdekte NFS desteğiufd';lp'fdsl'; olması şarttır. Eğer aşağıdaki satırlarda nfs kelimesi geçmiyorsa çekirdeğe NFS desteği verilerek tekrar derlenmesi gerekir.
$cat /proc/filesystems minix ext2 msdos nodev proc nodev nfs
NFS için mount programının genel kullanımı şu şekildedir:
mount -t nfs <sunucu-adresi:paylaşma-dizini> <yerel-dizin> -o <secenekler>
Sistem açılırken /etc/fstab dosyasında yer alan bilgilerle uzak makinanın diski otomatik olarak paylaştırılabilir. Mount programı bazı seçenekleri destekler. Bu seçenekler -o yardımıyla komut satırında verilebildiği gibi /etc/fstab içinde de belirtilebilir. Her iki durumda da birden fazla seçenek kullanılırsa bunlar birbirlerinden virgülle ayrılırlar.
Açılış sırasında news makinesindeki /usr/spool/news dosyasını yerel makinadaki /usr/spool/news dizini altına yerleştiren /etc/fstab satırı
news:/usr/spool/news /usr/spool/news nfs timeo=20
şeklinde yazılır.
NFS ile kullanılan timeo seçeneğinin karşısında yer alan sayı (saniyenin onda biri olarak), bağlantının kurulabilmesi için geçecek maksimum zamanı gösterir. Bu zamanın aşılması halinde sunucuyla bağlantı kesilir.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.