Linux Dizin Yapısı

Dosyalarımız fiziksel depolama alanları üzerinde tutulur.Bu alanlar bilgisayarımızdaki dahili harddisk ,harici hard diskimiz ,CD/DVD ROM,SAN,NAS.. gibi biçimlerde olabilir. Peki bu alanlardaki bilgilere nasıl erişiriz sorusunun cevabı File System(Dosya Sistemi) oluyor arkadaşlar. File System olmadan depolama alanına ne bir şey kopyalayabiliriz, ne paylaştırabiliriz, ne güvenlik ve erişimini sağlayabiliriz ne de herhangi bir şekilde kullanabiliriz. İşletim sistemimizin verilere erişimi için yine onun bileceği bir biçimde diski biçimlendirmeliyiz. Nasıl ki Windows ortamlarında diskimizi biçimlendirirken NTFS dosya sistemini kullanıyorsak, Linux vari işletim sistemlerinde de ext2,ext3,ext4 gibi dosya sistemlerini kullanıyoruz. Linux işletim sistemi birden fazla dosya sistemine destek verir.

Bir işletim sisteminin dosya sisteminin performansı, hızı ve buna benzer çeşitli özellikleri sistemin verimli ve kararlı çalışması üzerinde doğrudan etkisi vardır. Linux dizin yapısının geliştirilmesinde FSSTND (file system standard) grubunun çalışmalarının payı çok büyük oldu. Programcılardan oluşan grup, standartların belirlenmesinde ve uygulama aşamasında Linux ile ilgilenenlere yardım etti. 1993 yılında Olaf Kirsh, Linux haber grubuna yazdığı bir e-postasında Linux dosya sistemi üzerindeki çalışmaların tamamlandığını haber verdi.

Bir Linux dağıtımından diğerine dosya sistemi yapısı bakımında küçük farklılıklar olabilir ancak genel yapı aynıdır. Bu maddede Linux dağıtımlarının kullandığı ortak dosya sistemi yapısı, dizinlerin ne anlama geldikleri ve Windows’taki bazı dosya ve dizinlerin Linux’taki karşılıkları konularında temel ve ileri düzeyde bilgi alabilirsiniz.

Dosya sistemi, işletim sisteminin bir disk veya bölüm üzerindeki dosyaları takip edebilmesi için oluşturulmuş yöntem ve veri yapıları bütünüdür. Linux’da, Unix’de olduğu gibi “Tekil Hiyerarşik Klasör Yapısı”nı benimsemiştir. Her şey / simgesiyle ifade edilen kök dizinden başlayarak dallanıp budaklanır. Kök dizin altındaki dizinler, geçmişte Linux Dosya Sistem Hiyerarşisi (kısaca FSSTND) denilen bir standart ile belirlenmiş klasörlerdir. Günümüzde Linux dağıtımlarının büyük çoğunluğunun FSSTND standartında belirlenmiş klasörlerin dışında kök dizine bir iki klasör daha ekledikleri ya da nadiren bu yapıdan bir klasörü çıkardıkları görülmektedir.

Herhangi bir dizin ya da dosyanın sistemdeki adresi önce kök dizinden başlar sonra o dosya ya da dizine ulaşmak için geçilmesi gereken dizinler arasına yine / yazılarak elde edilir. Örneğin /home/ahmet yolu, kök dizininde, home isimli dizin içindeki ahmet dizininin konumunu belirtir. Bu ifadede en baştaki / işareti kök dizini belirtmektedir.

Windows’ta dosya adreslerinde \ (ters slaş) işareti kullanılırken Linux’ta / işareti kullanılır. Linux’ta bu kullanımın nedeni Linux’un Unix geleneğini takip etmesindendir. Ayrıca bu geleneğe uygun olarak küçük büyük harf duyarlılığı önemli bir konudur. Örneğin; Windows’ta KLASOR_ADI ve klasor_adi aynı şeydir; fark etmez. Linux’ta ise bunlar farklı klasörlerdir.

Windows’ta bir program yüklediğinizde, programa ait dosyaların büyük çoğunluğu Program Files içindeki kendi klasörüne yüklenir. Linux’ta ise durum farklıdır; programın, örneğin belgelendirmeleri /usr/share/doc/program_adi/ altına atılır, man(ual) dosyaları, /usr/share/man/man altına atılır, info dosyaları /usr/share/info altına atılır. Bu şekilde aradığınız bir yerelleştirme dosyasını yani programın Türkçe çalışması için yapılmış çeviri dosyasını, programın kullandığı kütüphane dosyasını yani Windows’taki (.dll) Linux’daki (.so) dosyası ve bunun gibi belirli bir amaç için kullanılan dosyaları yerleştirilmiş oldukları kendine özgü klasörün içinde bulabilirsiniz. Kısacası Linux’ta, sistem hiyerarşisine gömülen bir yapı söz konusudur. Yüklenen herhangi bir program, işletim sisteminin muhtelif yerlerine yerleşmektedir.

Linux'ta Dosya Sistemi Yapısı (devamı..)

366 total views, no views today


LVM (Logical Volume Manager)


LVM, modüler disk veri kümesi veya kümeleri oluşturulmasını, böylelikle de istenildiğinde mevcut disk alanı üzerinde  istenilen boyutlandırmanın yeniden yapabilmesini sağlar. Disk alanının yetersiz kaldığı durumlarda LVM ile oluşturulan disk veri kümesine kolaylıkla yeni disk veya disk bölümleri ilave edebilir, ihtiyaca göre disk alanı şekillendirilebilir. Özellikle büyük disk alanı ihtiyacı olan sistemlerde LVM ile disk veri kümeleri oluşturularak ya da sisteme yeni bir disk daha eklenerek toplam disk boyutu arttırılabilir veya sistemde pasif durumda olan bir disk bölümü aktif disk kümesine dahil edilebilir. Aynı zamanda mevcut disk bölümlerinin boyutları değiştirilebilir. Yapılacak fiziksel veri alanı değişikliklerinden sistemin mevcut haritası hiçbir şekilde etkilenmez ve yeni tanımlar yapmaya gerek kalmaz.

LVM ile bir ya da birden fazla olan disklerinizi tek bir disk havuzuymuş gibi gösterip, partitions ile karmaşık disk alanı hesaplamalarını sizin yerinize soyutlayıp yapıyor.

Özellikler;

LVM’in en önemli özelliği online (on-the-fly) disk üzerinde işlem yapmamıza olanak sağlamaktadır.

Bir birinden bağımsız kaynaklar (diskler den tek bir Volume oluşturabilmektedir.

LVM, hacim grubu (Volume Group – vp) ve bu grubun içinde fiziksel hacim (Physical Volume  – pv) ve mantıksal hacimlerden (Logical Volume – lv) oluşur.

  • Volume Group : Fiziksel (Physical) ve mantıksal (Logical) hacimleri (volume) içine alan üst düzey bir katmandır.
  • Physical Volume : Fiziksel hacim adından da anlaşılacağı üzere fiziksel aygıtlardan (disklerden) veya disk bölümlerinden oluşan kısımdır. Dikkat edilmesi gereken konu, oluşturulan partition (bölme) nin Linux LVM (8e) olarak tanımlanmış olması gerekmektedir! Partation yapısını fdisk veya parted disk yönetim araçları ile ilerleyen bolümde nasıl yapılacağı anlatılacaktır.
  • Logical Volume : Disk bölümlerinin karşılığıdır. Dosya sistemi içerir. Filesystem (Dosya işletim sistemleri) nin yapılandırıldığı katman olarak adlandırılabilir. Genel olarak Linux ext3, ext4 filesystem kullanmakta.

Ayrıca fiziksel hacim içerisinde fiziksel birimler (PE) ve aynı şekilde mantıksal hacim içerisinde bulunan mantıksal kümeler vardır. Bunların varsayılan değeri tüm dosya sistemlerinde aynı olup 4 MB’dır.

  • Fiziksel Birimler (PE): Fiziksel hacim her biri eşit uzunlukta (varsayılan değeri 4 MB) veri parçalarına bölünmüştür.
  • Mantıksal Birimler (LE): Mantıksal hacimlerde aynı şekilde her biri eşit uzunlukta (varsayılan değeri 4 MB) veri parçalarına bölünmüştür. Fiziksel birimler ve mantıksal birimler arasında da birebir ilişki vardır.

Linux LVM Logical Volume Manager 1

(devamı..)

288 total views, no views today


dd Komutu

dd komutu data duplicator anlamına gelir ve verilerin kopyalanması ve dönüştürülmesi için kullanılır.

  • Tüm sabit diski veya bölümü yedekleyin ve geri yükleyin.
  • MBR’nin Yedeklenmesi
  • Manyetik bant formatını kopyalayabilir ve dönüştürebilir, ASCII ve EBCDIC formatları arasında geçiş yapabilir, bayt baytları alabilir ve küçük harfleri büyük harfe çevirebilir.
  • Linux çekirdeği tarafından da kullanılabilir.

Yalnızca root ve sudo yekisi olanlar komutu çalıştırabilir, çünkü yanlış kullanımı nedeniyle büyük bir veri kaybıyla karşılaşabilirsiniz, bu nedenle çalışırken çok dikkatli olmalısınız. dd komutunun sintaksisi;

dd if=<kaynak dosya ismi> of=< kaynak dosya ismi > [Seçenekler]

if : Verileri kopyalamak istediğiniz yerden bir kaynaktır ve ‘if^’, ‘input file’ anlamına gelir.

of :Veriyi yazmak/yapıştırmak istediğiniz yerdir ve ‘of’, ‘output file’ anlamına gelir

Seçenekler : Seçenekler şunları içerir: verinin ne kadar hızlı yazılacağı, hangi format vb.

Sözdizimindeki giriş (kaynak dosya adı) ve Çıktı (hedef dosya adı), verileri yazmak ve okumak istediğiniz diskler, bölümler, dosyalar ve aygıtlardır. Örneklerde tartışacağımız birçok seçenek var.

  • Örnek 1: Bir sabit diski başka bir sabit diske kopyalayın. Bu, aynı yapılandırmaya sahip birçok makine inşa ettiğimizde yararlıdır. Tüm makinelere işletim sistemi kurmaya gerek yok. Sadece makineye işletim sistemini ve gerekli yazılımı yükleyin, ardından aşağıdaki örnekle kopyalayın.
dd if=/dev/sda of=/dev/sdb

(devamı..)

136 total views, no views today


iostat Komutu

Sysstat rpm paketi ile yüklenen çok kullanılan komutlardan birisidir.

Bu komutla network file systems ve disklere dair I/O ve CPU istatistiklerine erişilebilir. Parametre kullanılmadan çalıştırıldığında sistemin son açılmasından itibaren disk ve CPU kullanımı ile ilgili bilgi verir.

iostat komutuna verilecek ilk rakamsal parametre kaç saniyede bir rapor üretileceğini, 2. parametre ise ekrana kaç defa çıktı verileceğini belirtir. Eğer 2. parametre verilmezse istenen zaman aralığı için ekrana sürekli olarak sistem bilgisi basılacaktır, birçok işlemde olduğu gibi bu işlem de Ctrl+C ile sonlandırılabilir.

Parametre olarak diskin ismi de verilip özelleştirilmiş bir rapor alınabilir.

  • -d : Sadece disk kullanım bilgisi görülür.
  • -c : Sadece işlemci(CPU) kullanım bilgisi izlenir.
  • -k : istatistikleri blok cinsinden değil KB cinsinden verir
  • -m : istatistikleri MB cinsinden gösterir
  • -p : Belirli bir disk izlenebilir.
  • -x : Genişletilmiş istatistikler için
  • -n : Sadece NFS ile bağlı diskler ile ilgili bilgi verir
  • -t : İstatistik bilgisinin yanında ayrıntılı zaman bilgisinide verir.

(devamı..)

170 total views, no views today


Dosya Sistem Bakımı (tune2fs komutu)

Dosya sistemini oluşturduktan sonra sistem yöneticisi tarafından bazı bakımların yapılması gerekebilir. Bu bakım ve dosya sistemindeki bazı parametre değişiklikleri tune2fs komutu ile yapılabilmektedir.

Tune2fs komutu ext2,ext3 ve ext4 dosya sistemlerine kullanılabilmektedir. Tunefs ile yapılabilecek bazı değişiklikler:

  • Dosya sistemleri arası geçiş. Örn. Ext2’den ext3’e geçiş
  • fsck işleminin yapılması için geçmesi gereken zaman aralığı veya mount sayısını belirler (-c ve –i parametreleri)
  • Mevcut dosya sistemi hakkında bilgiler verir. (-l parametresi)

Linux tune2fs komutu

Modern dosya sistemleri hatalara karşı dayanıklılığı arttırmak için journal (günlük) tutarlar. Dosya sisteminde herhangi bir işlem yapılmadan önce günlüklere kaydedilir. Daha sonra yapılacak olan iş yerine getirilir. Dosya sisteminde herhangi bir hata meydana geldiğinde günlüklerdeki muamele girdileri konrol edilerek hata düzeltilmeye çalışılır. Günlüklü dosya sistemleri, günlüksüz olanlara göre çok daha hızlı bir dosya sistemi kurtarma işlemi gerçekleştirebilir. Örneğin ani güç kesilmesi durumunda fsck aracı dosya ve dizinleri teker teker kontrol etmek yerine günlük girdileri kontrol edilir. Böylece dosya sistemini bozulmadan önceki durumuna kolayca çevirebilir. Linux ext2 dosya sistemi günlüğe sahip değildir. Ext3 dosya sistemi ise günlük kullanır. Eğer dosya sisteminiz ext2 ise ve ext3 dosya sistemine terfi etmek istiyorsanız, bu terfi işlemini biçimlendirme (format) işlemine gerek kalmadan gerçekleştirebilirsiniz. Bunun için;

tune2fs -j /dev/hdd3

Mustafa Bektaş Tepe

İyi Çalışmalar

116 total views, no views today


Disk Bölümü Kontrolü (fsck komutu)

fsck, file system check , yani dosya sistemini kontrol etmek manasına gelen bir komuttur. Görevi, dosya sisteminiz üzerinde oluşan hataları denetler ve bunları gidermeye çalışır.

Bu komut parametre olarak disk bölümü adı veya disk bölümünün /etc/fstab dosyasında belirlenmiş bağlanma noktasını alır. Fsck komutu ek bir parametre kullanmadan çalıştırıldığında bulduğu her bir hatanın düzeltmesi için onay isteyecektir. Bu da büyük boyutlu dosya sistemlerinde çok zaman alabilmektedir. Tespit edilen tüm hataların düzeltilmesi için –y parametresi kullanılmalıdır. fsck komutu mutlaka okuma-yazma modunda bağlanmamış dosya sisteminde çalıştırılmalıdır.Eğer okuma ve yazmak için bağlanılmış bir dosya sisteminde çalıştırılısa beklenmedik hatalar oluşabilir.

Örneğin /dev/sdb1 disk bölümünün dosya sistemini düzeltmek için aşağıdaki komut verilir.

[root@oracle12c ~]# fsck -y /dev/sdb1
fsck from util-linux-ng 2.17.2
e2fsck 1.43-WIP (20-Jun-2013)
/dev/sdb1: clean, 16/327680 files, 58466/1309289 blocks
[root@oracle12c ~]#

Eğer aşağıdaki komutu yazarsanız, işletim sistemi bir fsck isteği ile yeniden başlayacak, ve açılırken diskleri mount etmeden hemen önce fsck işlemini yapacak.

shutdown -Fr now

Aşağıdakiler Fsck komutu için mümkün olan çıkış kodlarıdır.

  • 0 – Hata yok
  • 1 – Dosya sistemi hatası düzeltildi
  • 2 – Sistem yeniden başlatılmalıdır.
  • 4 – Dosya sistemi hataları düzeltilmedi.
  • 8 – Operasyon hatası
  • 16 – Kullanım yada sözdizimi (syntax) hatası
  • 32 – Fsck kullanıcı isteği ile iptal edildi.
  • 128 – Paylaşımlı kütüphane hatası

fsck dahili bir dosya kontrol işlemi için ilgili dosya denetleyicisi komutu kullanır. Bu fsck checker komutlar genellikle / sbin altında bulunur.

Aşağıdaki örnek, çeşitli olası fsck denetleyicisi komutları gösterir. (Örnek: fsck.ext2, fsck.ext3, fsck.ext4, vs….)

[root@oracle12c ~]# cd /sbin/
[root@oracle12c sbin]# ls fsck*
fsck  fsck.cramfs  fsck.ext2  fsck.ext3  fsck.ext4  fsck.ext4dev  fsck.msdos  fsck.vfat

Mustafa Bektaş Tepe

İyi Çalışmalar

114 total views, no views today


  • Sertifikasyon



  • Etiketler

  • Topluluklar

                     
                     
  • Live Traffic Feed

    Feedjit Widget
  • Copyright © 1996-2010 Mustafa Bektaş Tepe. All rights reserved.
    Türkçeleştirme Blogizma | AltyapıWordPress
    Takip Et

    Her yeni yazı için posta kutunuza gönderim alın.

    Diğer takipçilere katılın: