Merhaba Next.web.tr Misafiri! Forum Sitemize Hoşgeldin.

Sitemize üye olarak ayrıcalıklarımızdan yararlanabilirsiniz.

or Kayıt ol

Dosya sistemlerinin sırları!

Mehmetkarahanlı

0
Özel Üye
19 Haz 2016
8,533
146
63
Dosya sistemlerinin sırları!

FAT, NTFS, ZFS ve diğerleri... Farklı dosya sistemleri ve birbirlerinden farkları mercek altındı

gaotd20130606100000.jpg


Dosyalarınızı okurken veya yazarken, sabit disklerinizin nasıl çalıştığını biliyor musunuz? Sabit diskler artık çok büyük miktarda verileri depolayabiliyorlar. Elbette bu dev depolama alanı, çok iyi bir organizasyonu da gerekli kılıyor. Sabit disklerin çalışma şekillerini organize etmek için de dosya sistemleri kullanılıyor. Bu dosya sistemleri ise, bilgisayarın kurulumu aşamasında, işletim sistemi tarafından çalışmaya hazır hale getiriliyor.
Ancak, bildiğiniz gibi, birden fazla dosya sistemi bulunuyor. Bunlar ne yapar, nasıl yapar ve farklı nelerdir? İşte en çok bilinen ve kullanılan dosya sistemleri...
FAT
FAT dosya sistemi, dünyadaki en yaygın dosya sistemidir. Tam ismi, File Allocation Table olan FAT sistemi Microsoft tarafından geliştirilmiştir. Çok uzun zamandır kullanılan bu sistemin teknolojideki gelişimle beraber FAT16 ve FAT32 edisyonları da çıktı. Ancak genel olarak tüm bu sistemlere, FAT ismi verilir.
FAT'ın avantajı çok basit ve hızlı bir dosya sistemi olmasıdır. Ancak dosyaların en fazla 4 GB büyüklüğünde olmasına izin verir. Microsoft çok uzun yıllar önce bu dosya sistemini tasarlarken, günün birinde 4GB'dan daha büyük dosyaların var olabileceğine ihtmal vermediği için bu dosya sisteminde açabileceğiniz dosyaların maksimum büyüklüğü 4GB'dır. Şimdilerde sabit disklerde çok nadir görülen bu eski dosya sistemi USB sürücüler veya SD kartlarda çok daha yoğun olarak kullanılıyor zira neredeyse her işletim sisteminin FAT desteği bulunuyor. Bu da mobil depolama sistemlerinin her sistem tarafından okunabilmesini sağlıyor.

NTFS

2012071613392431078.jpg


NTFS'in açık ismi, New Technology File System'dir. FAT'ın artık ihtiyaçları karşılamadığını düşünen Mİcrosoft tarafından geliştirilmiştir.
NTFS'in yapısı çok daha karmaşıktır ve Windows XP ile kullanılmaya başlanmıştır. Bu aynı zamanda "günlükçü" bir işletim sistemidir çünkü bilgsayarda gerçekleştirilen her işlemin kayıtlarını tutar. Böylece yaşanan sorunların ne zaman ve nasıl ortaya çıktığı anlaşılabilir ve geriye dönük kurtarmalar mümkün olabilir.

Dosya sistemi 16 TB boyutuna kadar dosyaları işleyebilir. Ayrıca 256 TB boyutuna kadar diskleri de destekler. Elbette bu boyutlar FAT ile mümkün değildir. NTFS de, pek çok büyük işletim sistemi tarafından kolayca okunabilir. NTFS'in en çok kullanıldığı donanımlar, taşınabilir olmayan sabit disklerdir ancak isteyenler taşınabilir depolama cihazlarını da NTFS ile formatlayabilir.

HFS+

dosya-sistemlerinin-sirlari.jpg


HFS+, Apple tarafındna geliştirilmiş bir sistemdir.Macintosh bilgisayarların kullanımı için hazırlanmıştır.
NTFS ile benzer bir yapı kullanır ancak iki sistem birbiriyle uyumlu değildir. HFS bir milyon TB boyutuna kadar dosyaları destekleyebildiği için gelecekte çok daha avantajlı olacaktır. Ayrıca NTFS gibi, günlük tutar.
Mac OS X işletim sisteminde kullanılabildiği gibi bu sistemi Linux ile kullanmak da mümkündür. Ancak Microsoft işletim sistemleriyle çalışmaz.


ext4

201307261700158018.jpg


Linux'un en çok kullanılan dosya sistemidir. Öncülleri ext2 ve ext3 gibi başarılı ve onların gelişmiş bir versiyonudur.
Kullandığı teknikler sayesinde bilgsayarda performans artışını sağlar. Bu yüzden Linux sistemlerinin daha hızlı çalışması mümkündür. ext4 sabit diskler düşünülerek tasarlanmış bir sistem olduğu için taşınabilir disklerde kullanılmaz. 16 TB boyutuna kadar dosyaları destekler.
ext4 ne yazık ki eski ext3 sistemiyle uyumlu değil ancak bunun sayesinde daha hızlı işlem yapabilen bir algoritma geliştirilmesi mümkün olmuş. Windows kullanıcıları Ext2Read özeliği sayesinde bu sistemleri okuma şansına sahipler.


btrfs

20091013133630.jpg


btrfs, "B-Tree FS" olarak okunuyor. Linux için hazırlanan yeni bir dosya sistemidir. Sistem, günlük özelliğine sahiptir.
16 EB'ta kadar dosya ve disk sistemlerini destekleyebilir, ayrıca veri havuzu da oluşturabilir. Bu havuz sayesinde birden çok sabit diski aynı anda işlemek mümkün oluyor. Şu anda kararsız sürümde bulunan dosya sistemi tamamlandığında Linux'un mevcut ext4 sisteminin yerini almasına kesin gözüyle bakılıyor.


ZFS

20080716133047.jpg


ZFS, Unix dünyasının dosya sistemidir. 16 EB'a kadar dosya ve disk boyutlarını destekleyen ZFS performans olarak ön plana çıkmasa ad bazı çok önemli yetenekleri ile göz dolduruyor.
Bu yeteneklerin arasında veri bozulmalarını önleme, çeşitli sistemlerin desteklenmesi, veri şifrelemesi,veri çiftlemesinin önlenmesi ve veri havuzu gibi özellikler bulunuyor. 2005'ten beri kullanılan sistem, Mac OSX 10,5 Server, Linux ve diğer Unix-benzeri sistemlerde çalışabiliyor.
btrfs ile ortak özellikleri olmasına rağmen btrfs kadar hızlı olmayan ZFS daha çok kurumsal alanda tercih edilen bir sistem.


--------------------

Linux sistemler üzerinde en çok rastladığımız dosya sistemlerinden biride “Ext” dosya sistemidir. Ayrıca ext dosya sistemi linux için oluşturulmuş ilk özel dosya sistemidir ve 4 adet düzeltme içermektedir. Fakat şuanda ext1 dosya sistemi neredeyse hiçbir linux dağımı tarafından desteklenmemekte olup artık yerini ext2, ext3 ve ext4 ‘e bırakmıştır.

Bu yazıda;

1- Ext2 dosya sistemini Ext3 dosya sistemine dönüştürme
2- Ext2 dosya sistemini Ext4 dosya sistemine dönüştürme
3- Ext3 dosya sistemini Ext4 dosya sistemine dönüştürme

işlemlerinin nasıl yapılacağından bahsedilmektedir. Bu işlemler sistem online iken ve herhangi bir veri kaybı yaşanmadan yapılabilmektedir. Fakat bu tür, disk üzerinde yapacağınız işlemler öncesi her ihtimale karşı veri kaybı yaşanabileceği ihtimali düşünülerek verilerinizi olabildiğince yedeklemenizde fayda bulunmaktadır. Ayrıca bu makalede yapılan disk işlemleri “CentOS release 6.5 (Final)” işletim sistemi sürümünde denenmiş olup herhangibir sorun gözlemlenmemiştir. Gerçek sistemler üzerinde yapılacak işlemlerden doğabilecek sorunlar için sorumluluk kabul edilmemektedir. Zira günümüzde “veri” çok önemlidir.

Öncelikle ext dosya sistemlerinin özelliklerinden kısaca bahsetmekte fayda var.

Ext1: 1992 yılında geliştirilmeye başlandı. Ext’nin ilk sürümü Minixdosya sisteminde yapılan büyük çaplı bir güncellemeydi ama bugünün bilgisayarlarının temel ihtiyaçlarını karşılamadığı için artık kullanılmamaktadır.

Ext2: 1993 yılında geliştirilmeye başlandı. İleriye dönük kolay geliştirilebilen bir dosya sistemi olarak tasarlanmıştır. Dolayısıyla yeni sürümü, dosya sistemi kodlarını, kurulu bir sisteme uygulamak için yeni ayarlar yapmayı gerektirmez. Günlükleme desteği sunmamaktadır.

NOT : Günlükleme nedir? Günlüklemeli bir dosya sistemi, sistemde olan bitenin kaydını veya günlüğünü tutar. Bir sistem çökmesi durumunda ya da bilgisayarın fişinin aniden çıkarılması durumunda; günlükleme sistemi kaydedilmemiş veya zarar görmüş verilerin kurtarılmasını sağlarlar. Böylece, veri kayıpları oldukça aşağıya çekilmiş olur.
Ext3: 1999 yılında geliştirilmeye başlanmıştır. Ext2’nin bütün özelliklerine sahip bir dosya sistemidir. Ext dosya sisteminde ext3’ten itibaren günlükleme desteği sunulmaktadır.

Ext4: 2006 yılında geliştirilmeye başlanmıştır. Ext3 dosya sistemine yapılan bir takım ölçeklenirlik, performans ve güvenilirlik geliştirmelerini içerir. İlk ext4 desteği 2.6.19 linux çekirdeği ile birlikte verilmiştir.

--------------------

1- Ext2 dosya sistemini Ext3 dosya sistemine dönüştürme
-Mevcut disklerinizi ve disklerinizin dosya sistemlerini kontrol ediniz. Aşağıda göreceğiniz üzere “sdb1” bölümü ext2 dosya sistemine sahip.

-Değişiklik yapmak istediğiniz disk bölümünüzü umount yapınız.
[root@musab ~]# umount /dev/sdb1-tune2fs aracı ve –j parametresi ile ext2’den ext3’e geçiş işlemini tamamlayınız.
–j parametresi : Journaling yani günlükleme anlamına gelmekte ve ext2’den ext3’e geçiş işleminde kullanılmaktadır.

[root@musab ~]# tune2fs -j /dev/sdb1
tune2fs 1.41.12 (17-May-2010)
Creating journal inode: done
This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.-Disk bölümünüzü sisteminize mount ediniz.
[root@musab ~]# mount /dev/sdb1 /mnt/disk2/-Değişiklik yaptığınız disk bölümünüzün dosya sistemini kontrol ediniz.

--------------------

2- Ext2 dosya sistemini Ext4 dosya sistemine dönüştürme
-Mevcut disklerinizi ve disklerinizin dosya sistemlerini kontrol ediniz.

-Değişiklik yapmak istediğiniz disk bölümünüzü umount yapınız.
[root@musab ~]# umount /dev/sdb1-tune2fs aracı ve aşağıdaki komutta göreceğiniz opsiyonları ile ext2’den ext4’e geçiş işlemini gerçekleştiriniz.
[root@musab ~]# tune2fs -O dir_index,has_journal,uninit_bg /dev/sdb1
tune2fs 1.41.12 (17-May-2010)
Please run e2fsck on the filesystem.
Creating journal inode: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.-Ext2’den ext4’e geçiş yapıldığı için dosya sisteminin kontrol edilmesi gerekmektedir. e2fsck aracı ile dosya sisteminizdeki bozuklukları tarayarak tamir etmeniz gerekmektedir.
-p parameteresi : Otomatik düzeltme yapar.
-f parametersi : Dosya sisteminizde hata olmasa bile kontrol eder.
[root@musab ~]# e2fsck -pf /dev/sdb1
NOT : Yukarıdaki komutu çalıştırdıktan sonra aşağıdaki şekilde uyarı alırsanız;
New_Volume: One or more block group descriptor checksums are invalid. FIXED.
New_Volume: Group descriptor 0 checksum is invalid.
New_Volume: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)İşlemi manuel yapmayı deneyiniz. Bu işlem için e2fsck komutuna herhangibir parametre vermeyiniz. Bulunan hataları düzeltmek için size “Fix<y>” şeklinde soru soracaktır. y tuşuna basarak hataların düzeltilmesini kabul ediniz.
[root@musab ~]# e2fsck /dev/sdb1
e2fsck 1.41.12 (17-May-2010)
One or more block group descriptor checksums are invalid. Fix<y>?-Disk bölümünüzü sisteminize mount ediniz.
[root@musab ~]# mount /dev/sdb1 /mnt/disk2/-Değişiklik yaptığınız disk bölümünüzün dosya sistemini kontrol ediniz.

--------------------

3- Ext3 dosya sistemini Ext4 dosya sistemine dönüştürme
-Mevcut disklerinizi ve disklerinizin dosya sistemlerini kontrol ediniz.

-Değişiklik yapmak istediğiniz disk bölümünüzü umount yapınız.
[root@musab ~]# umount /dev/sdb1-tune2fs aracı ve aşağıdaki komutta göreceğiniz opsiyonları ile ext2’den ext4’e geçiş işlemini gerçekleştiriniz.
[root@musab ~]# tune2fs -O extents,uninit_bg,dir_index /dev/sdb1
tune2fs 1.41.12 (17-May-2010)
Please run e2fsck on the filesystem.-Ext3’den ext4’e geçiş yapıldığı için dosya sisteminin kontrol edilmesi gerekmektedir. e2fsck aracı ile dosya sisteminizdeki bozuklukları tarayarak tamir etmeniz gerekmektedir.
-p parameteresi : Otomatik düzeltme yapar.
-f parametersi : Dosya sisteminizde hata olmasa bile kontrol eder.
[root@musab ~]# e2fsck -pf /dev/sdb1
NOT : Yukarıdaki komutu çalıştırdıktan sonra aşağıdaki şekilde uyarı alırsanız;
New_Volume: One or more block group descriptor checksums are invalid. FIXED.
New_Volume: Group descriptor 0 checksum is invalid.
New_Volume: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)İşlemi manuel yapmayı deneyiniz. Bu işlem için e2fsck komutuna herhangibir parametre vermeyiniz. Bulunan hataları düzeltmek için size “Fix<y>” şeklinde soru soracaktır. y tuşuna basarak hataların düzeltilmesini kabul ediniz.
[root@musab ~]# e2fsck /dev/sdb1
e2fsck 1.41.12 (17-May-2010)
One or more block group descriptor checksums are invalid. Fix<y>?-Disk bölümünüzü sisteminize mount ediniz.
[root@musab ~]# mount /dev/sdb1 /mnt/disk2/-Değişiklik yaptığınız disk bölümünüzün dosya sistemini kontrol ediniz.
 
Üst