{"id":32243,"date":"2025-10-19T11:41:09","date_gmt":"2025-10-19T08:41:09","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=32243"},"modified":"2025-10-19T11:41:09","modified_gmt":"2025-10-19T08:41:09","slug":"nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/","title":{"rendered":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber"},"content":{"rendered":"<p><body><\/p>\n<h2>NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber<\/h2>\n<h3>Giri\u015f<\/h3>\n<p>A\u011f Dosya Sistemi (Network File System &#8211; NFS), UNIX tabanl\u0131 sistemler aras\u0131nda dosya payla\u015f\u0131m\u0131n\u0131 sa\u011flayan, g\u00fc\u00e7l\u00fc ve k\u00f6kl\u00fc bir da\u011f\u0131t\u0131k dosya sistemidir. Bu teknoloji, sunucular\u0131n a\u011f \u00fczerindeki istemcilere dizinleri ve dosyalar\u0131 sanki yerel disklermi\u015f gibi eri\u015fmelerini ve kullanmalar\u0131n\u0131 sa\u011flar. \u00d6zellikle birden fazla sunucu veya istemcinin ayn\u0131 verilere eri\u015fmesi gereken ortamlarda, merkezi bir depolama \u00e7\u00f6z\u00fcm\u00fc olarak NFS vazge\u00e7ilmez bir ara\u00e7t\u0131r. Ubuntu 12.04 LTS (Precise Pangolin), uzun s\u00fcreli destek sunan ve hala bir\u00e7ok \u00fcretim ortam\u0131nda kullan\u0131lan stabil bir i\u015fletim sistemi s\u00fcr\u00fcm\u00fcd\u00fcr. Bu makale, Ubuntu 12.04 \u00fczerinde bir NFS sunucusu kurma, dizinleri payla\u015fma ve ard\u0131ndan bir Ubuntu 12.04 istemcisinden bu payla\u015f\u0131mlara nas\u0131l eri\u015filece\u011fini ad\u0131m ad\u0131m detayl\u0131 bir \u015fekilde a\u00e7\u0131klamaktad\u0131r. Amac\u0131m\u0131z, hem yeni ba\u015flayanlar hem de deneyimli sistem y\u00f6neticileri i\u00e7in kapsaml\u0131 ve anla\u015f\u0131l\u0131r bir rehber sunmakt\u0131r.<\/p>\n<p>NFS&#8217;in temel amac\u0131, a\u011f \u00fczerindeki makinelerin dosya sistemlerini birbirleriyle payla\u015farak veri tutarl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak, y\u00f6netim y\u00fck\u00fcn\u00fc azaltmak ve kaynak verimlili\u011fini art\u0131rmakt\u0131r. \u00d6rne\u011fin, bir web sunucusu k\u00fcmesindeki t\u00fcm sunucular\u0131n ayn\u0131 statik i\u00e7erik dosyalar\u0131na eri\u015fmesi gerekti\u011finde, her sunucuya ayr\u0131 ayr\u0131 kopyalamak yerine, merkezi bir NFS sunucusundan bu dosyalar\u0131 payla\u015fmak \u00e7ok daha mant\u0131kl\u0131 ve y\u00f6netilebilir bir yakla\u015f\u0131md\u0131r. Bu rehberde, bir NFS sunucusu kurmak i\u00e7in gerekli paketlerin kurulumundan, payla\u015f\u0131mlar\u0131n yap\u0131land\u0131r\u0131lmas\u0131na, g\u00fcvenlik duvar\u0131 ayarlar\u0131ndan, istemci taraf\u0131nda payla\u015f\u0131mlar\u0131n ba\u011flanmas\u0131na ve yayg\u0131n sorun giderme y\u00f6ntemlerine kadar her ad\u0131m\u0131 ele alaca\u011f\u0131z.<\/p>\n<h3>NFS Nedir ve Neden Kullan\u0131l\u0131r?<\/h3>\n<p>NFS (Network File System), Sun Microsystems taraf\u0131ndan geli\u015ftirilen ve a\u011f \u00fczerindeki bilgisayarlar\u0131n, sanki kendi yerel disklerindeymi\u015f gibi uzaktaki dosyalara eri\u015fmesini sa\u011flayan bir protokold\u00fcr. NFS, istemci-sunucu modeline dayan\u0131r: bir NFS sunucusu, belirli dizinleri &#8220;d\u0131\u015fa aktar\u0131r&#8221; (export eder) ve bu dizinlere eri\u015fim izni verirken, NFS istemcisi bu d\u0131\u015fa aktar\u0131lan dizinleri kendi dosya sistemine &#8220;ba\u011flar&#8221; (mount eder). Bu sayede, istemci uzaktaki dosyalara okuma, yazma, \u00e7al\u0131\u015ft\u0131rma gibi i\u015flemleri yapabilir.<\/p>\n<h4>NFS&#8217;in Temel \u00c7al\u0131\u015fma Prensibi<\/h4>\n<p>NFS, Uzak Yordam \u00c7a\u011fr\u0131s\u0131 (Remote Procedure Call &#8211; RPC) mekanizmas\u0131n\u0131 kullanarak \u00e7al\u0131\u015f\u0131r. \u0130stemci, bir dosyaya eri\u015fmek istedi\u011finde, bu iste\u011fi RPC arac\u0131l\u0131\u011f\u0131yla sunucuya g\u00f6nderir. Sunucu, iste\u011fi i\u015fler, gerekli dosya i\u015flemlerini yapar ve sonucu yine RPC arac\u0131l\u0131\u011f\u0131yla istemciye geri g\u00f6nderir. Bu s\u00fcre\u00e7, istemci i\u00e7in tamamen \u015feffaft\u0131r; dosyan\u0131n yerel mi yoksa uzak m\u0131 oldu\u011fu genellikle fark edilmez.<\/p>\n<h4>NFS Kullan\u0131m\u0131n\u0131n Avantajlar\u0131<\/h4>\n<p>1.  <strong>Merkezi Depolama:<\/strong> Birden fazla sunucunun ayn\u0131 verilere eri\u015fmesi gereken durumlarda (\u00f6rne\u011fin, web sunucusu k\u00fcmeleri, geli\u015ftirme ortamlar\u0131), verileri merkezi bir NFS sunucusunda tutmak, veri tutarl\u0131l\u0131\u011f\u0131n\u0131 ve yedeklemeyi kolayla\u015ft\u0131r\u0131r.<br \/>\n2.  <strong>Kolay Dosya Payla\u015f\u0131m\u0131:<\/strong> Kullan\u0131c\u0131lar veya uygulamalar aras\u0131nda dosya payla\u015f\u0131m\u0131n\u0131 basitle\u015ftirir. Her kullan\u0131c\u0131n\u0131n kendi yerel kopyas\u0131na sahip olmas\u0131 yerine, merkezi bir depodan verilere eri\u015fim sa\u011flan\u0131r.<br \/>\n3.  <strong>Kaynak Verimlili\u011fi:<\/strong> Disk alan\u0131 israf\u0131n\u0131 \u00f6nler. Ayn\u0131 verinin birden fazla kopyas\u0131n\u0131 tutmak yerine, tek bir merkezi kopyadan t\u00fcm istemciler faydalanabilir.<br \/>\n4.  <strong>Y\u00f6netim Kolayl\u0131\u011f\u0131:<\/strong> Yaz\u0131l\u0131m g\u00fcncellemeleri, yap\u0131land\u0131rma dosyalar\u0131 veya ortak k\u00fct\u00fcphaneler gibi \u00f6\u011feleri merkezi bir konumda y\u00f6netmek, her makineye ayr\u0131 ayr\u0131 m\u00fcdahale etmekten \u00e7ok daha kolayd\u0131r.<br \/>\n5.  <strong>Performans:<\/strong> A\u011f \u00fczerinde do\u011frudan dosya eri\u015fimi sa\u011flayarak, dosyalar\u0131n her seferinde kopyalanmas\u0131 ihtiyac\u0131n\u0131 ortadan kald\u0131r\u0131r. Do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda y\u00fcksek performans sunabilir.<br \/>\n6.  <strong>Esneklik:<\/strong> \u00c7e\u015fitli i\u015fletim sistemleri aras\u0131nda dosya payla\u015f\u0131m\u0131na olanak tan\u0131r (Linux, UNIX, macOS).<\/p>\n<h4>NFS Kullan\u0131m\u0131n\u0131n Dezavantajlar\u0131 ve Dikkat Edilmesi Gerekenler<\/h4>\n<p>1.  <strong>G\u00fcvenlik:<\/strong> \u00d6zellikle NFSv3, zay\u0131f kimlik do\u011frulama ve \u015fifreleme eksiklikleri nedeniyle g\u00fcvenli olmayan a\u011flarda dikkatli kullan\u0131lmal\u0131d\u0131r. Eri\u015fim kontrolleri genellikle IP tabanl\u0131d\u0131r ve bu, IP sahtekarl\u0131\u011f\u0131na kar\u015f\u0131 savunmas\u0131z olabilir. NFSv4 bu konuda daha iyi g\u00fcvenlik mekanizmalar\u0131 sunar ancak Ubuntu 12.04 varsay\u0131lan olarak NFSv3&#8217;e odaklan\u0131r.<br \/>\n2.  <strong>A\u011f Ba\u011f\u0131ml\u0131l\u0131\u011f\u0131:<\/strong> NFS&#8217;in performans\u0131 ve kullan\u0131labilirli\u011fi tamamen a\u011f ba\u011flant\u0131s\u0131n\u0131n kalitesine ba\u011fl\u0131d\u0131r. A\u011f kesintileri veya yava\u015flamalar\u0131, NFS payla\u015f\u0131mlar\u0131na eri\u015fimi do\u011frudan etkiler.<br \/>\n3.  <strong>UID\/GID E\u015fle\u015fmesi:<\/strong> \u0130stemci ve sunucu aras\u0131ndaki kullan\u0131c\u0131 ve grup kimliklerinin (UID\/GID) e\u015fle\u015fmemesi, izin sorunlar\u0131na yol a\u00e7abilir. B\u00fcy\u00fck ortamlarda bu, merkezi kimlik do\u011frulama (LDAP gibi) ile y\u00f6netilmelidir.<\/p>\n<h3>\u00d6n Haz\u0131rl\u0131klar<\/h3>\n<p>NFS kurulumuna ba\u015flamadan \u00f6nce, sorunsuz bir deneyim i\u00e7in baz\u0131 temel haz\u0131rl\u0131klar\u0131 yapmam\u0131z gerekmektedir. Bu rehber i\u00e7in en az iki adet Ubuntu 12.04 i\u015fletim sistemi kurulu sanal veya fiziksel makineye ihtiyac\u0131m\u0131z olacak: biri NFS sunucusu olarak, di\u011feri ise NFS istemcisi olarak g\u00f6rev yapacak.<\/p>\n<p>1.  <strong>\u0130ki Adet Ubuntu 12.04 Makine:<\/strong><br \/>\n    *   <strong>NFS Sunucusu:<\/strong> Payla\u015f\u0131lacak dizinleri bar\u0131nd\u0131racak ve a\u011f \u00fczerinden eri\u015fime a\u00e7acak makine.<br \/>\n    *   <strong>NFS \u0130stemcisi:<\/strong> Sunucunun payla\u015ft\u0131\u011f\u0131 dizinlere eri\u015fecek ve bunlar\u0131 kendi dosya sistemine ba\u011flayacak makine.<\/p>\n<p>2.  <strong>G\u00fcncel Sistemler:<\/strong> Her iki makinenin de en g\u00fcncel paketlere sahip oldu\u011fundan emin olun. Bu, olas\u0131 g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapatacak ve yaz\u0131l\u0131m \u00e7ak\u0131\u015fmalar\u0131n\u0131 \u00f6nleyecektir.<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\n    sudo apt-get upgrade<\/code><\/pre>\n<p>3.  <strong>Sabit IP Adresleri veya DNS \u00c7\u00f6z\u00fcm\u00fc:<\/strong> NFS&#8217;in d\u00fczg\u00fcn \u00e7al\u0131\u015fabilmesi i\u00e7in sunucu ve istemcinin birbirlerini a\u011f \u00fczerinde bulabilmeleri gerekir.<br \/>\n    *   <strong>Sabit IP Adresleri:<\/strong> Her iki makineye de statik IP adresi atamak en basit ve g\u00fcvenilir y\u00f6ntemdir.<br \/>\n        *   \u00d6rnek Sunucu IP: <code>192.168.1.100<\/code><br \/>\n        *   \u00d6rnek \u0130stemci IP: <code>192.168.1.101<\/code><br \/>\n    *   <strong>DNS \u00c7\u00f6z\u00fcm\u00fc:<\/strong> E\u011fer ortam\u0131n\u0131zda bir DNS sunucusu varsa, sunucu ve istemcinin ana bilgisayar adlar\u0131n\u0131n (hostname) do\u011fru bir \u015fekilde \u00e7\u00f6z\u00fcld\u00fc\u011f\u00fcnden emin olun. <code>\/etc\/hosts<\/code> dosyas\u0131n\u0131 d\u00fczenleyerek de ge\u00e7ici bir \u00e7\u00f6z\u00fcm sa\u011flayabilirsiniz.<br \/>\n        *   Sunucuya istemcinin IP&#8217;sini ve hostname&#8217;ini ekleyin: <code>sudo nano \/etc\/hosts<\/code><\/p>\n<pre><code class=\"language-\">192.168.1.101 istemci.example.com istemci<\/code><\/pre>\n<p>        *   \u0130stemciye sunucunun IP&#8217;sini ve hostname&#8217;ini ekleyin: <code>sudo nano \/etc\/hosts<\/code><\/p>\n<pre><code class=\"language-\">192.168.1.100 sunucu.example.com sunucu<\/code><\/pre>\n<p>4.  <strong>G\u00fcvenlik Duvar\u0131 Ayarlar\u0131 (UFW):<\/strong> Ubuntu 12.04&#8217;te varsay\u0131lan olarak Uncomplicated Firewall (UFW) bulunur. NFS trafi\u011fine izin vermek i\u00e7in gerekli kurallar\u0131n tan\u0131mlanmas\u0131 gerekecektir. Kurulum ad\u0131mlar\u0131nda bu konuya de\u011finece\u011fiz.<\/p>\n<p>5.  <strong>Root veya Sudo Yetkisi:<\/strong> Kurulum ve yap\u0131land\u0131rma ad\u0131mlar\u0131 i\u00e7in <code>sudo<\/code> komutunu kullanabilen bir kullan\u0131c\u0131ya veya <code>root<\/code> kullan\u0131c\u0131s\u0131na eri\u015fiminiz olmal\u0131d\u0131r.<\/p>\n<p>Bu \u00f6n haz\u0131rl\u0131klar tamamland\u0131ktan sonra, NFS sunucusunu kurmaya ba\u015flayabiliriz.<\/p>\n<h3>NFS Sunucusu Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>NFS sunucusunun kurulumu, payla\u015f\u0131lacak dizinin haz\u0131rlanmas\u0131, <code>\/etc\/exports<\/code> dosyas\u0131n\u0131n yap\u0131land\u0131r\u0131lmas\u0131 ve g\u00fcvenlik duvar\u0131 ayarlar\u0131n\u0131n yap\u0131lmas\u0131n\u0131 i\u00e7erir.<\/p>\n<h4>Ad\u0131m 1: Gerekli Paketlerin Kurulumu<\/h4>\n<p>NFS sunucusu i\u015flevselli\u011fini sa\u011flamak i\u00e7in <code>nfs-kernel-server<\/code> paketini kurmam\u0131z gerekiyor. Bu paket, NFS servislerini ve ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 (\u00f6rne\u011fin <code>rpcbind<\/code> veya <code>portmap<\/code>) otomatik olarak kuracakt\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get install nfs-kernel-server<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, NFS servisleri otomatik olarak ba\u015flayacakt\u0131r. Servis durumunu kontrol etmek i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo service nfs-kernel-server status<\/code><\/pre>\n<h4>Ad\u0131m 2: Payla\u015f\u0131lacak Dizin Olu\u015fturma<\/h4>\n<p>\u015eimdi, NFS istemcileriyle payla\u015fmak istedi\u011fimiz bir dizin olu\u015ftural\u0131m. Bu dizin herhangi bir yerde olabilir, ancak genellikle <code>\/srv\/nfs<\/code> veya <code>\/export<\/code> gibi standart yerler tercih edilir. Bu \u00f6rnekte <code>\/srv\/nfs\/share<\/code> dizinini kullanaca\u011f\u0131z.<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/srv\/nfs\/share<\/code><\/pre>\n<p>Dizini olu\u015fturduktan sonra, NFS istemcilerinin bu dizine yazabilmesi i\u00e7in uygun izinleri ayarlamam\u0131z gerekebilir. Genellikle, <code>nobody:nogroup<\/code> sahipli\u011fi verilir ve istemciden gelen kullan\u0131c\u0131lar bu kimlikle e\u015fle\u015ftirilir (e\u011fer <code>no_root_squash<\/code> veya <code>all_squash<\/code> kullan\u0131lm\u0131yorsa).<\/p>\n<pre><code class=\"language-bash\">sudo chown nobody:nogroup \/srv\/nfs\/share\nsudo chmod 777 \/srv\/nfs\/share # Ge\u00e7ici olarak tam izin verilebilir, daha sonra k\u0131s\u0131tlanabilir<\/code><\/pre>\n<p><em>Not: <code>chmod 777<\/code> tam eri\u015fim sa\u011flar ve g\u00fcvenlik a\u00e7\u0131s\u0131ndan \u00f6nerilmez. Ger\u00e7ek bir \u00fcretim ortam\u0131nda, belirli kullan\u0131c\u0131lar veya gruplar i\u00e7in daha k\u0131s\u0131tl\u0131 izinler (<code>chown nfsuser:nfsgroup \/srv\/nfs\/share<\/code> ve <code>chmod 770<\/code> gibi) kullanmal\u0131s\u0131n\u0131z.<\/em><\/p>\n<h4>Ad\u0131m 3: Dizinleri Payla\u015fma (<code>\/etc\/exports<\/code> dosyas\u0131)<\/h4>\n<p>NFS sunucusu hangi dizinleri, hangi istemcilere ve hangi se\u00e7eneklerle payla\u015faca\u011f\u0131n\u0131 <code>\/etc\/exports<\/code> dosyas\u0131ndan okur. Bu dosyay\u0131 d\u00fczenleyelim:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/exports<\/code><\/pre>\n<p>Dosyan\u0131n i\u00e7ine a\u015fa\u011f\u0131daki gibi bir sat\u0131r ekleyin (kendi IP adreslerinizle de\u011fi\u015ftirin):<\/p>\n<pre><code class=\"language-\">\/srv\/nfs\/share    192.168.1.101(rw,sync,no_subtree_check)<\/code><\/pre>\n<p>Veya t\u00fcm yerel a\u011fa izin vermek isterseniz:<\/p>\n<pre><code class=\"language-\">\/srv\/nfs\/share    192.168.1.0\/24(rw,sync,no_subtree_check)<\/code><\/pre>\n<p>Bu sat\u0131r\u0131n anlam\u0131 \u015fudur:<br \/>\n*   <code>\/srv\/nfs\/share<\/code>: Payla\u015f\u0131lacak dizinin yolu.<br \/>\n*   <code>192.168.1.101<\/code> (veya <code>192.168.1.0\/24<\/code>): Bu dizine eri\u015fim izni verilecek istemcinin IP adresi veya IP aral\u0131\u011f\u0131. Ana bilgisayar adlar\u0131 (hostname) da kullan\u0131labilir, ancak DNS \u00e7\u00f6z\u00fcmlemesi veya <code>\/etc\/hosts<\/code> dosyas\u0131 do\u011fru yap\u0131land\u0131r\u0131lm\u0131\u015f olmal\u0131d\u0131r.<br \/>\n*   <code>(rw,sync,no_subtree_check)<\/code>: Parantez i\u00e7indeki se\u00e7enekler, istemcinin payla\u015f\u0131ma nas\u0131l eri\u015fece\u011fini belirler:<br \/>\n    *   <code>rw<\/code>: (Read\/Write) \u0130stemcinin payla\u015f\u0131ma hem okuma hem de yazma izni oldu\u011funu belirtir. Sadece okuma izni i\u00e7in <code>ro<\/code> kullan\u0131n.<br \/>\n    *   <code>sync<\/code>: NFS&#8217;in senkronize modda \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar. Bu, bir yazma iste\u011fi al\u0131nd\u0131\u011f\u0131nda, verinin diske yaz\u0131lmas\u0131n\u0131 bekler ve sonra i\u015flemi tamamlar. Bu, veri tutarl\u0131l\u0131\u011f\u0131n\u0131 art\u0131r\u0131r ancak performans\u0131 d\u00fc\u015f\u00fcrebilir. Daha h\u0131zl\u0131 ancak daha az g\u00fcvenli bir yazma i\u00e7in <code>async<\/code> kullan\u0131labilir (veri kayb\u0131 riski ta\u015f\u0131r).<br \/>\n    *   <code>no_subtree_check<\/code>: Alt dizin kontrol\u00fcn\u00fc devre d\u0131\u015f\u0131 b\u0131rak\u0131r. Bu, NFS&#8217;in daha h\u0131zl\u0131 \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flayabilir ancak baz\u0131 g\u00fcvenlik riskleri ta\u015f\u0131yabilir (\u00f6zellikle bir alt dizin ayr\u0131 ayr\u0131 payla\u015f\u0131l\u0131yorsa). \u00c7o\u011fu durumda \u00f6nerilir.<br \/>\n    *   <code>no_root_squash<\/code>: Sunucudaki root kullan\u0131c\u0131s\u0131n\u0131n, istemciden gelen root kullan\u0131c\u0131s\u0131 olarak kabul edilmesini sa\u011flar. Bu, istemcideki root kullan\u0131c\u0131s\u0131na sunucudaki root yetkilerini verir ve <strong>b\u00fcy\u00fck bir g\u00fcvenlik riski ta\u015f\u0131r<\/strong>. Yaln\u0131zca tamamen g\u00fcvenilir ortamlarda kullan\u0131lmal\u0131d\u0131r.<br \/>\n    *   <code>root_squash<\/code>: (Varsay\u0131lan) \u0130stemciden gelen root kullan\u0131c\u0131 isteklerini <code>nobody<\/code> veya <code>nfsnobody<\/code> kullan\u0131c\u0131s\u0131na e\u015fle\u015ftirir. Bu, g\u00fcvenlik i\u00e7in iyi bir uygulamad\u0131r.<br \/>\n    *   <code>all_squash<\/code>: T\u00fcm istemci kullan\u0131c\u0131lar\u0131n\u0131 (root dahil) <code>nobody<\/code> veya <code>nfsnobody<\/code> kullan\u0131c\u0131s\u0131na e\u015fle\u015ftirir.<br \/>\n    *   <code>anonuid=<UID><\/code> ve <code>anongid=<GID><\/code>: <code>all_squash<\/code> veya <code>root_squash<\/code> kullan\u0131ld\u0131\u011f\u0131nda, e\u015fle\u015ftirilen <code>nobody<\/code> kullan\u0131c\u0131s\u0131 yerine belirli bir UID ve GID&#8217;ye e\u015fle\u015ftirme yapmak i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p>Dosyay\u0131 kaydedin ve kapat\u0131n (Ctrl+O, Enter, Ctrl+X).<\/p>\n<h4>Ad\u0131m 4: NFS Servisini Yeniden Ba\u015flatma ve D\u0131\u015fa Aktar\u0131lan Dizinleri Kontrol Etme<\/h4>\n<p><code>\/etc\/exports<\/code> dosyas\u0131nda yapt\u0131\u011f\u0131m\u0131z de\u011fi\u015fikliklerin etkili olmas\u0131 i\u00e7in NFS servisini yeniden ba\u015flatmal\u0131 veya <code>exportfs -a<\/code> komutunu \u00e7al\u0131\u015ft\u0131rmal\u0131y\u0131z.<\/p>\n<pre><code class=\"language-bash\">sudo service nfs-kernel-server restart<\/code><\/pre>\n<p>Veya sadece de\u011fi\u015fiklikleri uygulamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo exportfs -a<\/code><\/pre>\n<p>D\u0131\u015fa aktar\u0131lan dizinleri ve ilgili se\u00e7enekleri kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo exportfs -v<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131, payla\u015f\u0131lan dizini ve izin verilen istemcileri g\u00f6stermelidir.<\/p>\n<h4>Ad\u0131m 5: G\u00fcvenlik Duvar\u0131 Ayarlar\u0131 (UFW)<\/h4>\n<p>Ubuntu 12.04&#8217;te UFW (Uncomplicated Firewall) genellikle varsay\u0131lan g\u00fcvenlik duvar\u0131d\u0131r. NFS&#8217;in \u00e7al\u0131\u015fabilmesi i\u00e7in belirli portlar\u0131n a\u00e7\u0131lmas\u0131 gerekmektedir. NFS, RPC (Remote Procedure Call) servisleri \u00fczerinden \u00e7al\u0131\u015ft\u0131\u011f\u0131 i\u00e7in, <code>rpcbind<\/code> (port 111) ve <code>nfsd<\/code> (port 2049) gibi temel servis portlar\u0131na eri\u015fim sa\u011flanmal\u0131d\u0131r. Di\u011fer NFS ile ilgili servisler (mountd, nlockmgr, statd) dinamik portlar kullanabilir, bu y\u00fczden genellikle <code>ufw allow nfs<\/code> komutu bu servisler i\u00e7in gerekli kurallar\u0131 otomatik olarak ekler.<\/p>\n<p>\u00d6nce UFW&#8217;nin etkin olup olmad\u0131\u011f\u0131n\u0131 kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo ufw status<\/code><\/pre>\n<p>E\u011fer UFW etkinse ve kurallar listeleniyorsa, a\u015fa\u011f\u0131daki komutlar\u0131 kullanarak NFS trafi\u011fine izin verin. <code>192.168.1.101<\/code> yerine istemcinizin IP adresini veya a\u011f aral\u0131\u011f\u0131n\u0131 kullan\u0131n.<\/p>\n<pre><code class=\"language-bash\"># NFS servisi i\u00e7in izin ver (genellikle 2049\/tcp ve udp)\nsudo ufw allow from 192.168.1.101 to any port nfs\n\n<h2>RPC portu i\u00e7in izin ver (111\/tcp ve udp)<\/h2>\nsudo ufw allow from 192.168.1.101 to any port 111\n\n<h2>Mount daemon i\u00e7in izin ver (genellikle 20048\/tcp ve udp, ama dinamik olabilir)<\/h2>\n<h2>NFS'in portlar\u0131 dinamik olarak de\u011fi\u015febilece\u011fi i\u00e7in, \"ufw allow nfs\" genellikle yeterlidir.<\/h2>\n<h2>Ancak, daha spesifik olmak isterseniz:<\/h2>\n<h2>sudo ufw allow from 192.168.1.101 to any port 20048<\/h2>\n\n<h2>G\u00fcvenlik duvar\u0131n\u0131 etkinle\u015ftirin (e\u011fer etkin de\u011filse)<\/h2>\n<h2>sudo ufw enable<\/code><\/pre>\n<\/h2>\n<p>Kurallar\u0131 ekledikten sonra, UFW durumunu tekrar kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo ufw status<\/code><\/pre>\n<p>Art\u0131k NFS sunucumuz yap\u0131land\u0131r\u0131lm\u0131\u015f ve istemci ba\u011flant\u0131lar\u0131 i\u00e7in haz\u0131r.<\/p>\n<h3>NFS \u0130stemcisi Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>\u015eimdi, NFS sunucusunun payla\u015ft\u0131\u011f\u0131 dizinlere eri\u015fmek i\u00e7in NFS istemcisini yap\u0131land\u0131raca\u011f\u0131z.<\/p>\n<h4>Ad\u0131m 1: Gerekli Paketlerin Kurulumu<\/h4>\n<p>NFS istemcisi i\u015flevselli\u011fi i\u00e7in <code>nfs-common<\/code> paketini kurmam\u0131z gerekiyor. Bu paket, NFS payla\u015f\u0131mlar\u0131n\u0131 ba\u011flamak i\u00e7in gerekli ara\u00e7lar\u0131 i\u00e7erir.<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get install nfs-common<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, istemci makinesi NFS payla\u015f\u0131mlar\u0131na eri\u015fmeye haz\u0131r olacakt\u0131r.<\/p>\n<h4>Ad\u0131m 2: NFS Payla\u015f\u0131m\u0131n\u0131 Ba\u011flama (Manuel Ba\u011flama)<\/h4>\n<p>NFS payla\u015f\u0131m\u0131n\u0131 ba\u011flamadan \u00f6nce, istemci makinesinde bir ba\u011flama noktas\u0131 (mount point) olu\u015fturmal\u0131y\u0131z. Bu, NFS payla\u015f\u0131m\u0131n\u0131n yerel dosya sisteminde nerede g\u00f6r\u00fcnece\u011fini belirler.<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/mnt\/nfs_share<\/code><\/pre>\n<p>\u015eimdi, NFS payla\u015f\u0131m\u0131n\u0131 olu\u015fturdu\u011fumuz ba\u011flama noktas\u0131na ba\u011flayabiliriz. <code>192.168.1.100<\/code> yerine NFS sunucunuzun IP adresini kullan\u0131n.<\/p>\n<pre><code class=\"language-bash\">sudo mount -t nfs 192.168.1.100:\/srv\/nfs\/share \/mnt\/nfs_share<\/code><\/pre>\n<p>Ba\u011flama i\u015flemi ba\u015far\u0131l\u0131 olursa, herhangi bir \u00e7\u0131kt\u0131 almazs\u0131n\u0131z. Ba\u011flant\u0131n\u0131n ba\u015far\u0131l\u0131 oldu\u011funu do\u011frulamak i\u00e7in <code>df -h<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">df -h<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da <code>\/mnt\/nfs_share<\/code> ba\u011flama noktas\u0131n\u0131n NFS sunucunuzdan geldi\u011fini g\u00f6rmelisiniz.<\/p>\n<pre><code class=\"language-\">Filesystem                Size  Used Avail Use% Mounted on\n...\n192.168.1.100:\/srv\/nfs\/share   98G  7.9G   85G   9% \/mnt\/nfs_share<\/code><\/pre>\n<p>Ayr\u0131ca, <code>mount<\/code> komutuyla da NFS payla\u015f\u0131mlar\u0131n\u0131 kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">mount | grep nfs<\/code><\/pre>\n<p>NFS ba\u011flama se\u00e7enekleri:<br \/>\n*   <code>rw<\/code>: Okuma\/yazma eri\u015fimi.<br \/>\n*   <code>ro<\/code>: Sadece okuma eri\u015fimi.<br \/>\n*   <code>hard<\/code>: Sunucu yan\u0131t vermedi\u011finde istemci yeniden denemeye devam eder. Bu, veri tutarl\u0131l\u0131\u011f\u0131 i\u00e7in iyidir ancak sunucu \u00e7\u00f6kerse istemci tak\u0131l\u0131 kalabilir.<br \/>\n*   <code>soft<\/code>: Sunucu yan\u0131t vermedi\u011finde istemci belirli bir s\u00fcre sonra hata d\u00f6nd\u00fcr\u00fcr. Daha az g\u00fcvenli ancak istemcinin tak\u0131l\u0131 kalmas\u0131n\u0131 \u00f6nler.<br \/>\n*   <code>intr<\/code>: <code>hard<\/code> se\u00e7ene\u011fiyle birlikte kullan\u0131ld\u0131\u011f\u0131nda, NFS i\u015flemlerinin kesintiye u\u011framas\u0131na (Ctrl+C gibi) izin verir.<br \/>\n*   <code>rsize=<boyut><\/code> ve <code>wsize=<boyut><\/code>: Okuma ve yazma blok boyutlar\u0131n\u0131 belirler (\u00f6rne\u011fin <code>rsize=8192,wsize=8192<\/code>). Performans\u0131 etkileyebilir.<\/p>\n<h4>Ad\u0131m 3: Otomatik Ba\u011flama (<code>\/etc\/fstab<\/code> dosyas\u0131)<\/h4>\n<p>Sistem yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda NFS payla\u015f\u0131m\u0131n\u0131n otomatik olarak ba\u011flanmas\u0131n\u0131 sa\u011flamak i\u00e7in <code>\/etc\/fstab<\/code> dosyas\u0131n\u0131 d\u00fczenlemeliyiz. Bu dosya, sistemin a\u00e7\u0131l\u0131\u015f\u0131nda hangi dosya sistemlerinin nereye ba\u011flanaca\u011f\u0131n\u0131 belirler.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/fstab<\/code><\/pre>\n<p>Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyin (kendi sunucu IP adresiniz ve ba\u011flama noktan\u0131zla de\u011fi\u015ftirin):<\/p>\n<pre><code class=\"language-\">192.168.1.100:\/srv\/nfs\/share \/mnt\/nfs_share nfs defaults,_netdev 0 0<\/code><\/pre>\n<p>Bu sat\u0131r\u0131n anlam\u0131:<br \/>\n*   <code>192.168.1.100:\/srv\/nfs\/share<\/code>: NFS sunucusunun IP adresi ve payla\u015f\u0131lan dizin.<br \/>\n*   <code>\/mnt\/nfs_share<\/code>: \u0130stemcideki ba\u011flama noktas\u0131.<br \/>\n*   <code>nfs<\/code>: Dosya sistemi t\u00fcr\u00fc.<br \/>\n*   <code>defaults,_netdev<\/code>: Ba\u011flama se\u00e7enekleri.<br \/>\n    *   <code>defaults<\/code>: <code>rw<\/code>, <code>suid<\/code>, <code>dev<\/code>, <code>exec<\/code>, <code>auto<\/code>, <code>nouser<\/code>, <code>async<\/code> se\u00e7eneklerinin birle\u015fimidir.<br \/>\n    *   <code>_netdev<\/code>: Bu se\u00e7enek \u00e7ok \u00f6nemlidir. Sistemin a\u011f servisleri ba\u015flat\u0131lmadan bu dosya sistemini ba\u011flamaya \u00e7al\u0131\u015fmamas\u0131n\u0131 sa\u011flar. Bu, a\u011f tabanl\u0131 dosya sistemleri i\u00e7in sistemin a\u00e7\u0131l\u0131\u015fta tak\u0131l\u0131 kalmas\u0131n\u0131 \u00f6nler.<br \/>\n*   <code>0 0<\/code>: Son iki rakam <code>dump<\/code> ve <code>fsck<\/code> se\u00e7enekleridir. NFS payla\u015f\u0131mlar\u0131 i\u00e7in genellikle <code>0 0<\/code> olarak b\u0131rak\u0131l\u0131r.<\/p>\n<p>Dosyay\u0131 kaydedin ve kapat\u0131n. <code>\/etc\/fstab<\/code> dosyas\u0131nda bir hata yaparsan\u0131z sisteminiz a\u00e7\u0131lmayabilir. Bu y\u00fczden, yeniden ba\u015flatmadan \u00f6nce <code>sudo mount -a<\/code> komutuyla fstab&#8217;daki t\u00fcm girdileri ba\u011flamay\u0131 deneyerek de\u011fi\u015fiklikleri test etmek iyi bir uygulamad\u0131r:<\/p>\n<pre><code class=\"language-bash\">sudo mount -a<\/code><\/pre>\n<p>E\u011fer bu komut hata vermeden \u00e7al\u0131\u015f\u0131rsa, <code>\/etc\/fstab<\/code> girdiniz muhtemelen do\u011frudur. Art\u0131k sistemi yeniden ba\u015flatt\u0131\u011f\u0131n\u0131zda NFS payla\u015f\u0131m\u0131 otomatik olarak ba\u011flanacakt\u0131r.<\/p>\n<h4>Ad\u0131m 4: G\u00fcvenlik Duvar\u0131 Ayarlar\u0131 (UFW)<\/h4>\n<p>\u0130stemci taraf\u0131nda genellikle \u00f6zel bir g\u00fcvenlik duvar\u0131 kural\u0131na ihtiya\u00e7 duyulmaz \u00e7\u00fcnk\u00fc istemci giden ba\u011flant\u0131lar\u0131 ba\u015flat\u0131r ve \u00e7o\u011fu g\u00fcvenlik duvar\u0131 varsay\u0131lan olarak giden trafi\u011fe izin verir. Ancak, a\u011f politikan\u0131z \u00e7ok kat\u0131ysa veya NFS sunucusunun yan\u0131tlar\u0131n\u0131 alabilmek i\u00e7in belirli portlara izin vermeniz gerekebilir. Bu nadir bir durumdur ve genellikle istemci taraf\u0131nda UFW yap\u0131land\u0131rmas\u0131 gerektirmez.<\/p>\n<h3>Yayg\u0131n Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h3>\n<p>NFS kurulumu s\u0131ras\u0131nda veya sonras\u0131nda kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve bunlar\u0131n \u00e7\u00f6z\u00fcmleri a\u015fa\u011f\u0131da listelenmi\u015ftir:<\/p>\n<h4>1. Ba\u011flant\u0131 Sorunlar\u0131<\/h4>\n<p>*   <strong>Sorun:<\/strong> <code>mount.nfs: Connection refused<\/code>, <code>mount.nfs: access denied by server<\/code>, veya <code>mount.nfs: No route to host<\/code>.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n    *   <strong>G\u00fcvenlik Duvar\u0131:<\/strong> Hem NFS sunucusunda hem de istemcide g\u00fcvenlik duvar\u0131 (UFW veya iptables) ayarlar\u0131n\u0131 kontrol edin. NFS portlar\u0131na (111, 2049, mountd, nlockmgr, statd) izin verildi\u011finden emin olun. Sunucudaki <code>\/etc\/exports<\/code> dosyas\u0131nda istemcinin IP adresine veya a\u011f aral\u0131\u011f\u0131na do\u011fru bir \u015fekilde izin verildi\u011finden emin olun.<br \/>\n    *   <strong>A\u011f Ba\u011flant\u0131s\u0131:<\/strong> Sunucudan istemciye ve istemciden sunucuya ping atarak temel a\u011f ba\u011flant\u0131s\u0131n\u0131 kontrol edin.<br \/>\n    *   <strong>IP Adresleri\/Ana Bilgisayar Adlar\u0131:<\/strong> <code>\/etc\/exports<\/code> dosyas\u0131ndaki IP adresinin veya ana bilgisayar ad\u0131n\u0131n do\u011fru oldu\u011fundan emin olun. E\u011fer ana bilgisayar ad\u0131 kullan\u0131l\u0131yorsa, DNS \u00e7\u00f6z\u00fcmlemesinin veya <code>\/etc\/hosts<\/code> dosyas\u0131n\u0131n do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131ndan emin olun.<br \/>\n    *   <strong>NFS Servisi:<\/strong> Sunucuda <code>sudo service nfs-kernel-server status<\/code> komutuyla NFS servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun.<br \/>\n    *   <strong>D\u0131\u015fa Aktar\u0131lan Dizinler:<\/strong> Sunucuda <code>sudo exportfs -v<\/code> komutuyla dizinlerin do\u011fru bir \u015fekilde d\u0131\u015fa aktar\u0131ld\u0131\u011f\u0131n\u0131 kontrol edin. \u0130stemciden <code>showmount -e <NFS_SUNUCU_IP><\/code> komutunu kullanarak sunucunun hangi dizinleri d\u0131\u015fa aktard\u0131\u011f\u0131n\u0131 g\u00f6rebilirsiniz.<br \/>\n    *   <strong>RPC Servisleri:<\/strong> Sunucuda <code>rpcinfo -p<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak NFS ile ilgili t\u00fcm RPC servislerinin (portmapper\/rpcbind, mountd, nfs, nlockmgr, statd) \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun.<\/p>\n<h4>2. \u0130zin Sorunlar\u0131<\/h4>\n<p>*   <strong>Sorun:<\/strong> NFS payla\u015f\u0131m\u0131na yazma veya okuma izni yok, veya dosyalar\u0131 olu\u015fturam\u0131yor\/de\u011fi\u015ftiremiyor.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n    *   <strong><code>\/etc\/exports<\/code> Se\u00e7enekleri:<\/strong> Sunucudaki <code>\/etc\/exports<\/code> dosyas\u0131nda <code>rw<\/code> (okuma\/yazma) se\u00e7ene\u011finin bulundu\u011fundan emin olun.<br \/>\n    *   <strong>Dizin \u0130zinleri:<\/strong> Payla\u015f\u0131lan dizinin (\u00f6rne\u011fin <code>\/srv\/nfs\/share<\/code>) sunucudaki dosya sistemi izinlerini kontrol edin. <code>sudo chown nobody:nogroup \/srv\/nfs\/share<\/code> ve <code>sudo chmod 777 \/srv\/nfs\/share<\/code> (veya daha k\u0131s\u0131tl\u0131 ama uygun izinler) ile do\u011fru izinlerin ayarland\u0131\u011f\u0131ndan emin olun.<br \/>\n    *   <strong>UID\/GID E\u015fle\u015fmeleri:<\/strong> NFS, dosya sahipli\u011fini ve izinlerini UID (Kullan\u0131c\u0131 Kimli\u011fi) ve GID (Grup Kimli\u011fi) kullanarak y\u00f6netir. \u0130stemci ve sunucu \u00fczerindeki kullan\u0131c\u0131lar\u0131n ve gruplar\u0131n UID\/GID&#8217;leri farkl\u0131ysa, izin sorunlar\u0131 ya\u015fanabilir.<br \/>\n        *   <code>root_squash<\/code> (varsay\u0131lan) istemcideki root kullan\u0131c\u0131s\u0131n\u0131 sunucuda <code>nobody<\/code> olarak e\u015fle\u015ftirir. E\u011fer root yetkisiyle i\u015flem yapman\u0131z gerekiyorsa, <code>\/etc\/exports<\/code> dosyas\u0131nda <code>no_root_squash<\/code> se\u00e7ene\u011fini kullanman\u0131z gerekebilir, ancak bu bir g\u00fcvenlik riskidir.<br \/>\n        *   <code>all_squash<\/code> t\u00fcm kullan\u0131c\u0131lar\u0131 <code>nobody<\/code> olarak e\u015fle\u015ftirir.<br \/>\n        *   <code>anonuid<\/code> ve <code>anongid<\/code> se\u00e7enekleriyle belirli bir UID\/GID&#8217;ye e\u015fle\u015ftirme yapabilirsiniz.<br \/>\n    *   <strong>SELinux\/AppArmor:<\/strong> Ubuntu 12.04&#8217;te AppArmor varsay\u0131lan olarak etkindir. Nadiren de olsa, AppArmor&#8217;un NFS i\u015flemlerini k\u0131s\u0131tlamas\u0131 m\u00fcmk\u00fcnd\u00fcr. <code>sudo aa-status<\/code> ile AppArmor durumunu kontrol edebilir ve gerekirse kurallar\u0131 d\u00fczenleyebilirsiniz.<\/p>\n<h4>3. Performans Sorunlar\u0131<\/h4>\n<p>*   <strong>Sorun:<\/strong> NFS payla\u015f\u0131m\u0131na eri\u015fim yava\u015f.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n    *   <strong><code>sync<\/code> vs <code>async<\/code>:<\/strong> Sunucudaki <code>\/etc\/exports<\/code> dosyas\u0131nda <code>sync<\/code> se\u00e7ene\u011fi veri g\u00fcvenli\u011fi i\u00e7in iyidir ancak performans\u0131 d\u00fc\u015f\u00fcr\u00fcr. E\u011fer veri kayb\u0131 riski kabul edilebilir ve daha y\u00fcksek performans isteniyorsa <code>async<\/code> se\u00e7ene\u011fi kullan\u0131labilir.<br \/>\n    *   <strong><code>rsize<\/code> ve <code>wsize<\/code>:<\/strong> \u0130stemci taraf\u0131nda <code>mount<\/code> komutunda veya <code>\/etc\/fstab<\/code>&#8216;ta <code>rsize<\/code> (okuma boyutu) ve <code>wsize<\/code> (yazma boyutu) se\u00e7eneklerini ayarlayarak performans\u0131 optimize edebilirsiniz (\u00f6rne\u011fin, <code>rsize=32768,wsize=32768<\/code>). Genellikle 8192 veya 16384 gibi de\u011ferler kullan\u0131l\u0131r.<br \/>\n    *   <strong>A\u011f:<\/strong> A\u011f bant geni\u015fli\u011fi, gecikme s\u00fcresi ve paket kayb\u0131 gibi fakt\u00f6rler NFS performans\u0131n\u0131 do\u011frudan etkiler. A\u011f altyap\u0131n\u0131z\u0131 kontrol edin.<br \/>\n    *   <strong>Sunucu Y\u00fck\u00fc:<\/strong> NFS sunucusunun disk I\/O&#8217;su veya CPU y\u00fck\u00fc y\u00fcksekse, bu da performans\u0131 etkileyebilir.<\/p>\n<h4>4. <code>\/etc\/fstab<\/code> Hatalar\u0131<\/h4>\n<p>*   <strong>Sorun:<\/strong> Sistem a\u00e7\u0131l\u0131\u015fta tak\u0131l\u0131 kal\u0131yor veya NFS payla\u015f\u0131m\u0131 otomatik olarak ba\u011flanm\u0131yor.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n    *   <strong>S\u00f6zdizimi Hatas\u0131:<\/strong> <code>\/etc\/fstab<\/code> dosyas\u0131ndaki NFS girdisinin s\u00f6zdizimini dikkatlice kontrol edin. K\u00fc\u00e7\u00fck bir yaz\u0131m hatas\u0131 bile sistemi a\u00e7\u0131lmayacak hale getirebilir.<br \/>\n    *   <strong><code>_netdev<\/code> Se\u00e7ene\u011fi:<\/strong> A\u011f tabanl\u0131 dosya sistemleri i\u00e7in <code>_netdev<\/code> se\u00e7ene\u011finin kullan\u0131ld\u0131\u011f\u0131ndan emin olun. Bu, a\u011f servisleri ba\u015flamadan \u00f6nce NFS payla\u015f\u0131m\u0131n\u0131n ba\u011flanmaya \u00e7al\u0131\u015fmas\u0131n\u0131 engeller.<br \/>\n    *   <strong>Kurtarma Modu:<\/strong> E\u011fer sisteminiz <code>\/etc\/fstab<\/code> hatas\u0131 nedeniyle a\u00e7\u0131lmazsa, kurtarma moduna (recovery mode) girerek <code>\/etc\/fstab<\/code> dosyas\u0131n\u0131 d\u00fczenleyebilir ve hatay\u0131 d\u00fczeltebilirsiniz.<\/p>\n<p>Bu sorun giderme ad\u0131mlar\u0131, NFS kurulumunuz s\u0131ras\u0131nda veya sonras\u0131nda kar\u015f\u0131la\u015fabilece\u011finiz \u00e7o\u011fu problemi \u00e7\u00f6zmenize yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h3>G\u00fcvenlik Hususlar\u0131<\/h3>\n<p>NFS, \u00f6zellikle eski s\u00fcr\u00fcmleri (NFSv3), modern g\u00fcvenlik standartlar\u0131na g\u00f6re baz\u0131 zay\u0131fl\u0131klara sahiptir. Ubuntu 12.04&#8217;\u00fcn varsay\u0131lan olarak NFSv3&#8217;\u00fc kullanmas\u0131 nedeniyle, g\u00fcvenlik konular\u0131na \u00f6zel dikkat g\u00f6stermek \u00f6nemlidir.<\/p>\n<p>1.  <strong>Kimlik Do\u011frulama ve \u015eifreleme Eksikli\u011fi:<\/strong> NFSv3, kullan\u0131c\u0131 kimlik do\u011frulamas\u0131 i\u00e7in genellikle IP adreslerine veya UNIX UID\/GID e\u015fle\u015fmelerine g\u00fcvenir. Veri aktar\u0131m\u0131 \u015fifrelenmez, bu da a\u011fdaki dinleme (sniffing) sald\u0131r\u0131lar\u0131na kar\u015f\u0131 savunmas\u0131z oldu\u011fu anlam\u0131na gelir. Hassas veriler i\u00e7in NFSv3 kullanmaktan ka\u00e7\u0131nmal\u0131 veya VPN gibi ek \u015fifreleme katmanlar\u0131 kullanmal\u0131s\u0131n\u0131z.<br \/>\n2.  <strong>G\u00fcvenilir A\u011flarda Kullan\u0131m:<\/strong> NFS payla\u015f\u0131mlar\u0131n\u0131 yaln\u0131zca g\u00fcvenilir ve izole edilmi\u015f a\u011f segmentlerinde (\u00f6rne\u011fin, i\u00e7 a\u011flar, VLAN&#8217;lar) kullan\u0131n. \u0130nternet \u00fczerinden do\u011frudan NFS eri\u015fimi a\u00e7mak kesinlikle \u00f6nerilmez.<br \/>\n3.  <strong>G\u00fcvenlik Duvar\u0131 ile Eri\u015fimi K\u0131s\u0131tlama:<\/strong> NFS sunucunuzdaki g\u00fcvenlik duvar\u0131n\u0131 (UFW) kullanarak, NFS portlar\u0131na yaln\u0131zca belirli, bilinen istemci IP adreslerinden veya a\u011f aral\u0131klar\u0131ndan eri\u015fime izin verin. Geni\u015f IP aral\u0131klar\u0131na veya <code>any<\/code> se\u00e7ene\u011fine izin vermekten ka\u00e7\u0131n\u0131n.<br \/>\n4.  <strong><code>no_root_squash<\/code> Kullan\u0131m\u0131n\u0131n Riskleri:<\/strong> <code>\/etc\/exports<\/code> dosyas\u0131ndaki <code>no_root_squash<\/code> se\u00e7ene\u011fi, istemcideki root kullan\u0131c\u0131s\u0131n\u0131n sunucuda da root yetkilerine sahip olmas\u0131n\u0131 sa\u011flar. Bu, istemci tehlikeye at\u0131l\u0131rsa, sald\u0131rgan\u0131n NFS sunucusu \u00fczerinde tam kontrol sahibi olabilece\u011fi anlam\u0131na gelir. Bu se\u00e7enekten m\u00fcmk\u00fcn oldu\u011funca ka\u00e7\u0131n\u0131lmal\u0131 veya yaln\u0131zca \u00e7ok \u00f6zel ve g\u00fcvenli ortamlarda kullan\u0131lmal\u0131d\u0131r. Varsay\u0131lan <code>root_squash<\/code> se\u00e7ene\u011fi, root yetkilerini <code>nobody<\/code> veya <code>nfsnobody<\/code> kullan\u0131c\u0131s\u0131na e\u015fleyerek bu riski azalt\u0131r.<br \/>\n5.  <strong>Dizin \u0130zinleri:<\/strong> Payla\u015f\u0131lan dizinlerin dosya sistemi izinlerini do\u011fru bir \u015fekilde ayarlay\u0131n. \u0130stemcilerin ihtiya\u00e7 duydu\u011fundan daha fazla izin vermeyin. Gereksiz yere <code>chmod 777<\/code> kullanmaktan ka\u00e7\u0131n\u0131n. Belirli kullan\u0131c\u0131lar ve gruplar i\u00e7in en az ayr\u0131cal\u0131k ilkesini uygulay\u0131n.<br \/>\n6.  <strong>UID\/GID E\u015fle\u015fmesi:<\/strong> B\u00fcy\u00fck ortamlarda, merkezi bir kimlik do\u011frulama sistemi (LDAP, NIS) kullanarak istemci ve sunucu aras\u0131ndaki UID\/GID&#8217;lerin tutarl\u0131 olmas\u0131n\u0131 sa\u011flamak, izin sorunlar\u0131n\u0131 ve g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olur.<br \/>\n7.  <strong>NFSv4:<\/strong> Ubuntu 12.04&#8217;te NFSv3 daha yayg\u0131n olsa da, NFSv4 daha iyi g\u00fcvenlik \u00f6zellikleri (Kerberos kimlik do\u011frulamas\u0131 gibi) sunar. E\u011fer g\u00fcvenlik kritik bir endi\u015feyse, daha yeni bir Ubuntu s\u00fcr\u00fcm\u00fcne y\u00fckseltmeyi ve NFSv4 kullanmay\u0131 d\u00fc\u015f\u00fcnmelisiniz.<\/p>\n<p>Bu g\u00fcvenlik hususlar\u0131na dikkat ederek, NFS kurulumunuzu daha g\u00fcvenli hale getirebilirsiniz.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu makalede, Ubuntu 12.04 i\u015fletim sistemi \u00fczerinde bir NFS sunucusu kurma ve bir NFS istemcisinden bu payla\u015f\u0131mlara eri\u015fme s\u00fcrecini ad\u0131m ad\u0131m detayl\u0131 bir \u015fekilde inceledik. NFS&#8217;in ne oldu\u011funu, neden kullan\u0131ld\u0131\u011f\u0131n\u0131, kurulum i\u00e7in gerekli \u00f6n haz\u0131rl\u0131klar\u0131, sunucu ve istemci taraf\u0131nda yap\u0131lmas\u0131 gereken yap\u0131land\u0131rmalar\u0131 ve kar\u015f\u0131la\u015fabilece\u011finiz yayg\u0131n sorunlara y\u00f6nelik \u00e7\u00f6z\u00fcmleri ele ald\u0131k. Ayr\u0131ca, NFS kullan\u0131m\u0131nda dikkat edilmesi gereken \u00f6nemli g\u00fcvenlik hususlar\u0131na da de\u011findik.<\/p>\n<p>NFS, a\u011f \u00fczerinden dosya payla\u015f\u0131m\u0131 ve merkezi depolama i\u00e7in g\u00fc\u00e7l\u00fc ve esnek bir \u00e7\u00f6z\u00fcmd\u00fcr. \u00d6zellikle Ubuntu 12.04 gibi uzun s\u00fcreli desteklenen sistemlerde, belirli legacy uygulamalar veya ortamlar i\u00e7in hala ge\u00e7erli ve etkili bir y\u00f6ntemdir. Do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda, NFS sistem y\u00f6neticilerine veri y\u00f6netiminde b\u00fcy\u00fck kolayl\u0131klar sa\u011flar ve kaynak verimlili\u011fini art\u0131r\u0131r.<\/p>\n<p>Ancak, modern a\u011f ortamlar\u0131nda g\u00fcvenlik her zaman en \u00f6nemli \u00f6ncelik olmal\u0131d\u0131r. NFSv3&#8217;\u00fcn do\u011fal g\u00fcvenlik s\u0131n\u0131rlamalar\u0131 g\u00f6z \u00f6n\u00fcne al\u0131nd\u0131\u011f\u0131nda, hassas verilerle \u00e7al\u0131\u015f\u0131rken ek g\u00fcvenlik \u00f6nlemleri (g\u00fcvenlik duvar\u0131 k\u0131s\u0131tlamalar\u0131, VPN t\u00fcnelleri, yaln\u0131zca g\u00fcvenilir a\u011flarda kullan\u0131m) almak b\u00fcy\u00fck \u00f6nem ta\u015f\u0131r. Daha yeni NFS s\u00fcr\u00fcmleri (\u00f6zellikle NFSv4), Kerberos gibi daha g\u00fc\u00e7l\u00fc kimlik do\u011frulama mekanizmalar\u0131 sunarak bu g\u00fcvenlik eksikliklerinin \u00e7o\u011funu gidermi\u015ftir.<\/p>\n<p>Umar\u0131z bu kapsaml\u0131 rehber, Ubuntu 12.04 \u00fczerinde NFS kurulumu ve y\u00f6netimi konusunda size yol g\u00f6stermi\u015ftir. Unutmay\u0131n ki her ortam\u0131n kendine \u00f6zg\u00fc ihtiya\u00e7lar\u0131 ve g\u00fcvenlik politikalar\u0131 vard\u0131r; bu nedenle, bu rehberdeki ad\u0131mlar\u0131 kendi \u00f6zel durumunuza g\u00f6re uyarlamaktan \u00e7ekinmeyin.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber\nGiri\u015f\nA\u011f Dosya Sistemi (Network File System &#8211; NFS), UNIX tabanl\u0131 sistemler aras\u0131nda","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-32243","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber\" \/>\n<meta property=\"og:description\" content=\"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber Giri\u015f A\u011f Dosya Sistemi (Network File System - NFS), UNIX tabanl\u0131 sistemler aras\u0131nda\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-19T08:41:09+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"22 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber\",\"datePublished\":\"2025-10-19T08:41:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/\"},\"wordCount\":3850,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/\",\"name\":\"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-19T08:41:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber","og_description":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber Giri\u015f A\u011f Dosya Sistemi (Network File System - NFS), UNIX tabanl\u0131 sistemler aras\u0131nda","og_url":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-19T08:41:09+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"22 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber","datePublished":"2025-10-19T08:41:09+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/"},"wordCount":3850,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/","name":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-19T08:41:09+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/nfs-mount-kurulumu-ubuntu-12-04-uzerinde-adim-adim-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"NFS Mount Kurulumu: Ubuntu 12.04 \u00dczerinde Ad\u0131m Ad\u0131m Rehber"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32243","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=32243"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32243\/revisions"}],"predecessor-version":[{"id":32244,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32243\/revisions\/32244"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=32243"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=32243"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=32243"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}