{"id":6753,"date":"2022-10-03T13:54:34","date_gmt":"2022-10-03T10:54:34","guid":{"rendered":"https:\/\/softcand.com\/?p=6753"},"modified":"2022-10-03T13:54:34","modified_gmt":"2022-10-03T10:54:34","slug":"ram-tabanli-dosya-sistemi-nedir-2022","status":"publish","type":"post","link":"https:\/\/softcand.com\/tr\/ram-tabanli-dosya-sistemi-nedir-2022\/","title":{"rendered":"RAM tabanl\u0131 dosya sistemi nedir? 2022"},"content":{"rendered":"<p><br>Ram tabanl\u0131 dosya sistemi nedir? Bu yaz\u0131m\u0131zda Linux\u2019ta sistem haf\u0131zas\u0131 (<strong>RAM<\/strong>) \u00fczerinde \u00e7al\u0131\u015fan dosya sistemlerini ve kullan\u0131m alanlar\u0131n\u0131 anlataca\u011f\u0131z.<\/p>\n\n\n\n<p>\u0130\u015fletim sistemleri, kendi dosyalar\u0131 ve kullan\u0131c\u0131 dosyalar\u0131n\u0131n sabit diskte organize bir bi\u00e7imde tutulmas\u0131 i\u00e7in dosya sistemleri (<strong>File System<\/strong>) sunarlar. Kal\u0131c\u0131 depolama sa\u011flayan diskler ise SSD (<strong>Solid State Drive<\/strong>) ad\u0131 verilen yeni nesil diskler de dahil olmak \u00fczere bilgisayar sistemindeki en yava\u015f bile\u015fenlerden biridir. Diskler sunduklar\u0131 kal\u0131c\u0131 depolaman\u0131n yan\u0131 s\u0131ra bir performans penalt\u0131s\u0131 ile birlikte gelirler. Sistem haf\u0131zas\u0131ndan (<strong>RAM<\/strong>) meydana getirilen okuma\/yazma en h\u0131zl\u0131 <strong>SSD<\/strong> diskten yap\u0131lan okuma\/yazmadan bile 5-10 kat daha h\u0131zl\u0131d\u0131r. <\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>SSD<\/strong> disklerin yeni \u00e7\u0131kt\u0131\u011f\u0131nda nas\u0131l bir fark olu\u015fturdu\u011funuz biliyorsunuz. SATA diskler ile aras\u0131ndaki boyut ge\u00e7i\u015fi herkesi olduk\u00e7a \u015fa\u015f\u0131rtm\u0131\u015f ve etkilemi\u015fti. \u015euan neredeyse t\u00fcm cihazlarda <strong>SSD<\/strong> diskler kullan\u0131lmakta. H\u0131z optimizeli olmas\u0131 ad\u0131na. Fakat belirtmi\u015f oldu\u011fumuz h\u0131z <strong>RAM<\/strong> lerde 5 ile 10 kat aras\u0131nda daha fazla. Ne denli bir h\u0131zdan bahsetti\u011fimizi anlam\u0131\u015f olmal\u0131s\u0131n\u0131z.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ram Tabanl\u0131 Dosya Sistemi<\/h2>\n\n\n\n<p>Bir\u00e7ok durumda dosya sistemi \u00fcst\u00fcndeki dosyalar\u0131n kal\u0131c\u0131 olmas\u0131n\u0131 istesek de dosyalar\u0131n saklanmas\u0131n\u0131n l\u00fczumlu olmad\u0131\u011f\u0131 durumlarda performans art\u0131\u015f\u0131 sa\u011flamak i\u00e7in yada dosyalar\u0131n diskte saklanmas\u0131n\u0131 direkt olarak istemedi\u011fimiz (g\u00fcvenlik vb sebeplerle) durumlarda dosyalar\u0131 <strong>RAM\u2019de<\/strong> tutmak isteyebiliriz. <strong>Linux\u2019ta<\/strong> tmpfs ve ramfs RAM \u00fczerinde \u00e7al\u0131\u015fan dosya sistemleridir. Bu iki dosya sisteminde yarat\u0131lan dosyalar bilgisayar\u0131n g\u00fcc\u00fc kesildi\u011finde veya bilgisayar yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda <strong>RAM&#8217;de<\/strong> bulunan \u00f6teki bilgilerle birlikte kaybolurlar.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Baz\u0131 <strong>Linux<\/strong> da\u011f\u0131t\u0131mlar\u0131nda<strong> \/tmp, tmpfs <\/strong>dosya sistemi ile a\u00e7\u0131lan bir RAM diski kullan\u0131r. Sistemde \u00e7al\u0131\u015ft\u0131r\u0131lan uygulamalar \/tmp klas\u00f6r\u00fc alt\u0131nda ge\u00e7ici olarak kullanmak istedikleri dosyalar\u0131 a\u00e7ar, yazar ve okurlar. Olu\u015fturulan dosyalar en ge\u00e7 sistem kapand\u0131\u011f\u0131nda silinir. Yan not olarak, <strong>\/tmp<\/strong> klas\u00f6r\u00fc baz\u0131 kurulumlarda RAM yerine kal\u0131c\u0131 disk \u00fcst\u00fcnde bulunur.<strong> \/tmp<\/strong> alt\u0131ndaki dosyalar periyodik olarak temizlenir. Bu sayede <strong>\/tmp<\/strong> klas\u00f6r\u00fcn\u00fc kullanan uygulamalar yaratt\u0131klar\u0131 dosyalar\u0131n diski doldurmas\u0131 kayg\u0131s\u0131 olmadan diski kullan\u0131rlar.<\/p>\n\n\n\n<p>Tmpfs dosya sistemi temel olarak <strong>RAM&#8217;i<\/strong> kullanmakla birlikte <strong>RAM&#8217;de<\/strong> yer kalmad\u0131\u011f\u0131 zaman diski RAM olarak (swap) kullanabilir. <strong>Ramfs<\/strong>, <strong>tmpfs<\/strong> ile benzer i\u015flevleri yerine getirir ama ramfs swap kullanmaz. <strong>Ramfs<\/strong> ile a\u00e7\u0131lan diske toplam kapasitesinden daha fazla dosya yaz\u0131ld\u0131\u011f\u0131 zaman <strong>tmpfs<\/strong> ve di\u011fer dosya sistemlerinin aksine disk, sistemdeki RAM bitene kadar b\u00fcy\u00fcmeye s\u00fcrer. <strong>Ramfs<\/strong> i\u00e7eri\u011fini <strong>swap<\/strong> yapmay\u0131p devaml\u0131 <strong>RAM&#8217;de<\/strong> kalm\u0131\u015f olarak performans garantisi sunmas\u0131na kar\u015f\u0131n kontrols\u00fcz olarak b\u00fcy\u00fcmesi sistem stabilitesini tehlikeye atar.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ram Tabanl\u0131 Dosya Sistemi Kullan\u0131m Alanlar\u0131<\/h2>\n\n\n\n<p>\u015eimdi bu dosya sistemlerinin kullan\u0131m alanlar\u0131n\u0131 inceleyelim. CI (<strong>Continuous Integration<\/strong>) esnas\u0131nda ko\u015fan entegrasyon ve u\u00e7tan uca testlerde veri taban\u0131n\u0131n s\u00fcrekli olarak yine yarat\u0131lmas\u0131 ve migrate edilmesi gerekebilir. Testler esnas\u0131nda veri taban\u0131n\u0131n olu\u015fturuldu\u011fu disk tmpfs olarak se\u00e7ilirse testler h\u0131zland\u0131r\u0131l\u0131p testlerin s\u00fcresi k\u0131salt\u0131l\u0131r. <strong>Tmpfs<\/strong> dosya sistemi ile a\u00e7\u0131lan ve bir\u00e7ok Linux da\u011f\u0131t\u0131m\u0131nda bulunan \/dev\/shm, prosesler aras\u0131 ileti\u015fimde (<strong>IPC &#8211; Inter-Process Communication<\/strong>) kullan\u0131l\u0131r.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><a href=\"https:\/\/softcand.com\/tr\/\" target=\"_blank\" data-type=\"page\" data-id=\"4412\" rel=\"noreferrer noopener\">Uygulaman\u0131n<\/a> performans-tehlikeli sonu\u00e7 b\u00f6l\u00fcmlerindeki loglaman\u0131n uygulama performans\u0131n\u0131 etkilememesi i\u00e7in logu yitirme riski al\u0131narak tmpfs kullan\u0131labilir. Log dosyalar\u0131 belirli aral\u0131klarla merkezi log sistemine (<strong>logstash<\/strong>, vb ile) g\u00f6nderilebilir ya da kal\u0131c\u0131 diske ta\u015f\u0131nabilir.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Yukar\u0131daki kullan\u0131m senaryolar\u0131na ayr\u0131ca emniyet amac\u0131 ile de tmpfs kullan\u0131labilir. Pop\u00fcler konteyner \u00e7\u00f6z\u00fcm\u00fc Docker, konteyner dosya sistemine trojan ve vir\u00fcslerin enjekte edilmesini \u00f6nlemek i\u00e7in konteynerlerin read-only modda \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131na izin vermektedir. Read-only modda ba\u015flat\u0131lan konteynerler\u0131n i\u015flevini yerine getirebilmesi i\u00e7in emek harcama zaman\u0131nda birtak\u0131m dosyalar yaratmas\u0131 gerekebilir. Konteynerlerin yarataca\u011f\u0131 dosyalar\u0131n bulundu\u011fu klas\u00f6rler tmpfs ile <strong>RAM&#8217;de<\/strong> olu\u015fturularak trojan\u0131n restartlarda temizlenmesi sa\u011flanabilir.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Yine konteynerlerde host ve konteyner dosya sistemine kaydedilmesi istenmeyen hassas bilgiler (gizyaz\u0131, token, vb) tmpfs ile a\u00e7\u0131lan diske konarak konteynere iletilir, konteyner durduruldu\u011funda yada yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda bu k\u0131r\u0131lgan bilgiler otomatikman silinmi\u015f olur.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/softcand.com\/paths\/2022\/10\/ram-tabanli-dosya-sistemi-2022-1024x610.png\" alt=\"RAM Tabanl\u0131 Dosya Sistemi\" class=\"wp-image-6754\"\/><figcaption>RAM Tabanl\u0131 Dosya Sistemi<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Tmpfs&#8217;in performans\u0131n\u0131 \u00f6rneklemek amac\u0131yla 2GB b\u00fcy\u00fckl\u00fc\u011f\u00fcndeki tmpfs&#8217;e 1MB b\u00fcy\u00fckl\u00fc\u011f\u00fcnde 1500 dosya yaz\u0131lm\u0131\u015ft\u0131r. Ayn\u0131 muamele dura\u011fan disk \u00fczerinde bulunan dosya sisteminde tekrarlanarak performans kar\u015f\u0131la\u015ft\u0131r\u0131lm\u0131\u015f ve tmpfs&#8217;in 5.6 kat daha h\u0131zl\u0131 oldu\u011fu g\u00f6sterilmi\u015ftir.<\/p>\n\n\n\n<p>G\u00f6r\u00fcld\u00fc\u011f\u00fc \u015feklinde tmpfs sabit disklere gore yazma i\u015flemlerinde y\u00fcksek performans g\u00f6stermektedir. Ayn\u0131 performans fark\u0131 okuma i\u015flemleri i\u00e7in ise \u00e7o\u011funlukla ge\u00e7erli de\u011fildir \u015fundan dolay\u0131 disk ve i\u015fletim sistemindeki cache&#8217;ler okuma performans\u0131n\u0131 olduk\u00e7a art\u0131rmaktad\u0131r.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>kaynak : <a href=\"https:\/\/medium.com\/@gokhansengun\/ram-tabanl%C4%B1-dosya-sistemi-nedir-ve-nerelerde-kullan%C4%B1l%C4%B1r-b32b20afbcbc\" target=\"_blank\" data-type=\"URL\" data-id=\"https:\/\/medium.com\/@gokhansengun\/ram-tabanl%C4%B1-dosya-sistemi-nedir-ve-nerelerde-kullan%C4%B1l%C4%B1r-b32b20afbcbc\" rel=\"noreferrer noopener\">G\u00f6khan \u015eeng\u00fcn<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Ram tabanl\u0131 dosya sistemi nedir? Bu yaz\u0131m\u0131zda Linux\u2019ta sistem haf\u0131zas\u0131 (RAM) \u00fczerinde \u00e7al\u0131\u015fan dosya sistemlerini ve kullan\u0131m alanlar\u0131n\u0131 anlataca\u011f\u0131z. \u0130\u015fletim sistemleri, kendi dosyalar\u0131 ve kullan\u0131c\u0131 dosyalar\u0131n\u0131n sabit diskte organize bir bi\u00e7imde tutulmas\u0131 i\u00e7in dosya sistemleri (File System) sunarlar. Kal\u0131c\u0131 depolama sa\u011flayan diskler ise SSD (Solid State Drive) ad\u0131 verilen yeni nesil diskler de dahil olmak [&hellip;]<\/p>","protected":false},"author":1,"featured_media":6755,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[58],"tags":[151,21,152,153],"class_list":["post-6753","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-genel","tag-tmp","tag-linux","tag-ram-tabanli-dosya","tag-ram-tabanli-dosya-sistemi"],"acf":[],"_links":{"self":[{"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/posts\/6753","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/comments?post=6753"}],"version-history":[{"count":0,"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/posts\/6753\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/softcand.com\/tr\/wp-json\/"}],"wp:attachment":[{"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/media?parent=6753"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/categories?post=6753"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/softcand.com\/tr\/wp-json\/wp\/v2\/tags?post=6753"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}