Anatomy of a Disk

Hard disk’ler partition’lara bölünebilir, bu da esasen birden fazla block device oluşturur. /dev/sda1 ve /dev/sda2 gibi örnekleri hatırlayın, /dev/sda tüm disk iken, /dev/sda1 o disk üzerindeki ilk partition’dır. Partition’lar veriyi ayırmak için son derece kullanışlıdır ve belirli bir filesystem’e ihtiyaç duyarsanız, tüm diski tek bir filesystem türü yapmak yerine kolayca bir partition oluşturabilirsiniz.

Partition Table

Her diskte bir partition table bulunur, bu tablo sisteme diskin nasıl partition edildiğini söyler. Bu tablo size partition’ların nerede başladığını ve bittiğini, hangi partition’ların bootable olduğunu, diskin hangi sektörlerinin hangi partition’a ayrıldığını vb. söyler. İki ana partition table şeması kullanılır: Master Boot Record (MBR) ve GUID Partition Table (GPT).

Partition

Diskler verilerimizi organize etmemize yardımcı olan partition’lardan oluşur. Bir disk üzerinde birden fazla partition olabilir ve bunlar birbirleriyle çakışamaz. Bir partition’a ayrılmamış alan varsa, bu free space olarak bilinir. Partition türleri partition table’ınıza bağlıdır. Bir partition içinde bir filesystem’e sahip olabilir veya bir partition’ı swap gibi diğer şeylere ayırabilirsiniz (buna yakında geleceğiz).

MBR

  • Geleneksel partition table, standart olarak kullanılmıştır

  • Primary, extended ve logical partition’lara sahip olabilir

  • MBR’ın dört primary partition limiti vardır

  • Ek partition’lar bir primary partition’ı extended partition’a çevirerek oluşturulabilir (bir disk üzerinde yalnızca bir extended partition olabilir). Daha sonra extended partition içinde logical partition’lar eklersiniz. Logical partition’lar diğer partition’lar gibi kullanılır. Aptalca biliyorum.

  • 2 terabyte’a kadar diskleri destekler

GPT

  • GUID Partition Table (GPT), disk partitioning için yeni standart haline geliyor

  • Yalnızca bir tür partition vardır ve bunlardan çok sayıda oluşturabilirsiniz

  • Her partition’ın global olarak benzersiz bir ID’si (GUID) vardır

  • Çoğunlukla UEFI tabanlı booting ile birlikte kullanılır (detaylara başka bir derste gireceğiz)

Filesystem Structure

Önceki dersimizden biliyoruz ki bir filesystem dosyalar ve dizinlerin organize edilmiş bir koleksiyonudur. En basit haliyle, dosyaları yönetmek için bir veritabanı ve dosyaların kendilerinden oluşur, ancak biraz daha detaya ineceğiz.

  • Boot block - Bu, filesystem’in ilk birkaç sektöründe bulunur ve gerçekten filesystem tarafından kullanılmaz. Bunun yerine işletim sistemini boot etmek için kullanılan bilgileri içerir. İşletim sistemi yalnızca bir boot block’a ihtiyaç duyar. Birden fazla partition’a sahipseniz, boot block’ları olacaktır, ancak bunların birçoğu kullanılmaz.

  • Super block - Bu, boot block’tan sonra gelen tek bir block’tur ve inode table’ın boyutu, logical block’ların boyutu ve filesystem’in boyutu gibi bilgiler içerir.

  • Inode table - Bunu dosyalarımızı yöneten veritabanı olarak düşünün (inod’lar hakkında tüm bir dersimiz var, endişelenmeyin). Her dosya veya dizin inode table’da benzersiz bir entry’ye sahiptir ve dosya hakkında çeşitli bilgiler bulunur.

  • Data blocks - Bu, dosyalar ve dizinler için gerçek veridir.

Farklı partition table’lara bir göz atalım. Aşağıda MBR partitioning table’ı (msdos) kullanan bir partition örneği verilmiştir. Makinede primary, extended ve logical partition’ları görebilirsiniz.

pete@icebox:~$ sudo parted -l

Model: Seagate (scsi)
Disk /dev/sda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system     Flags
 1      1049kB  6860MB  6859MB  primary   ext4            boot
 2      6861MB  21.5GB  14.6GB  extended
 5      6861MB  7380MB  519MB   logical   linux-swap(v1)
 6      7381MB  21.5GB  14.1GB  logical   xfs

Bu örnek GPT’dir ve partition’lar için yalnızca benzersiz bir ID kullanır.

Model: Thumb Drive (scsi)
Disk /dev/sdb: 4041MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size     File system  Name        Flags
 1      17.4kB  1000MB  1000MB                first
 2      1000MB  4040MB  3040MB                second

Last updated