Bu örnek içerisinde 1 Gbyte'lık SCSI sabit disk'e sahip bir makine
üzerinde LINUX için gerekli kısımların ayrılması adım adım incelenmiştir.
Sözkonusu sabit disk üzerinde kullanıcı önceden 400 Mbyte'lık bir
kullanıcı alanı tanımlamış ve geri kalan alanı LINUX için ayırmıştı.
Düşünülen dağılım:
- 400 Mbyte DOS
- 250 Mbyte LINUX işletim sistemi
- 60 Mbyte Takas alanı
ve geri kalan alan LINUX altında kullanıcı alanı.
fdisk programı çalışır çalışmaz ilk iş olarak mevcut
bölümler hakkında bilgi almak için p komutunu ( Print
Partition Info) kullanıyoruz.
Command (m for help): p
Disk /dev/sda: 34 heads, 61 sectors, 1017 cylinders
Units = cylinders of 2074 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/sda1 * 1 1 395 409584+ 6 DOS 16-bit >=32M
Bu tablo bize sadece tek bölüm ayrıldığını, ayrılan alanın DOS
biçeminde olduğunu, boot edecek bölüm olduğunu belirtiyor.
Bölümün adı /dev/sda1, yani ilk SCSI sabit disk
üzerinde tanımlanan ilk bölüm. İlk iş olarak LINUX işletim sistemi
için yeni bir bölüm yaratmalıyız.
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (396-1017): 396
Last cylinder or +size or +sizeM or +sizeK ([396]-1017): +250M
n komutu ile kendimize yeni bir bölüm yarattık. İlk seçenek temel bir
disk bölümümü yoksa gelişmiş bir disk bölümü üzerinde mi işlem
yapacağımızı sordu. Temel bir bölüm için p komutunu girdik. Daha
sonra hangi bölümü yaratacağımızı sordu. Halen mevcut 1 bölüm var,
bu bölüm ikinci bölüm olacak bu yüzden 2 yazdık.
Bölümün başlangıç adresini giriyoruz. Bu değer otomatik olarak bir
önceki bölümün bitiş değerinden hesaplanmaktadır. Sadece onaylıyoruz.
Daha sonra istediğimiz boyutu belirtiyoruz. +250M tanımı 250 Mbyte'lık
bir kısım istediğimizi belirtiyor. Yarattığımız bu bölümü p komutu ile
inceliyoruz
Command (m for help): p
Disk /dev/sda: 34 heads, 61 sectors, 1017 cylinders
Units = cylinders of 2074 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/sda1 * 1 1 395 409584+ 6 DOS 16-bit >=32M
/dev/sda2 396 396 642 256139 83 Linux native
fdisk yaratılan her bölümü otomatik olarak (LINUX native) olarak yaratmaktadır.
Şimdi takas alanı için 60 Mbyte'lık 3. temel bölümü tanımlayalım:
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (643-1017): 643
Last cylinder or +size or +sizeM or +sizeK ([643]-1017): +60M
Command (m for help): p
Disk /dev/sda: 34 heads, 61 sectors, 1017 cylinders
Units = cylinders of 2074 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/sda1 * 1 1 395 409584+ 6 DOS 16-bit >=32M
/dev/sda2 396 396 642 256139 83 Linux native
/dev/sda3 643 643 702 62220 83 Linux native
Dikkat edilecek olursa bu bölüm de LINUX native
olarak tanımlandı. LINUX tarafından takas bölümü olarak kullanılacak
olan bölümler farklı bir yapıya sahiptirler ve ayrıca tanımlanmaları
gerekmektedir. Bu amaçla t komutu ile herhangi bir bölümün tipini
değiştirmek mümkündür. (Tip değiştirmekle o bölümün yapısı (biçemi)
değişmiş olmuyor, biçemleme sonradan yapılan bir işlemdir)
Command (m for help): t
Partition number (1-4): 3
Hex code (type L to list codes): 82
Changed system type of partition 3 to 82 (Linux swap)
Command (m for help): p
Disk /dev/sda: 34 heads, 61 sectors, 1017 cylinders
Units = cylinders of 2074 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/sda1 * 1 1 395 409584+ 6 DOS 16-bit >=32M
/dev/sda2 396 396 642 256139 83 Linux native
/dev/sda3 643 643 702 62220 82 Linux swap
Yukarıda yapılan işlemle 3 numaralı bölümün tipini
Linux swap olarak değiştirmiş olduk. Şu anda üç
farklı türden alanımız mevcut. Son bölümü de yine n komutu ile ekleriz.
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 4
First cylinder (703-1017): 703
Last cylinder or +size or +sizeM or +sizeK ([703]-1017): 1017
Command (m for help): p
Disk /dev/sda: 34 heads, 61 sectors, 1017 cylinders
Units = cylinders of 2074 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/sda1 * 1 1 395 409584+ 6 DOS 16-bit >=32M
/dev/sda2 396 396 642 256139 83 Linux native
/dev/sda3 643 643 702 62220 82 Linux swap
/dev/sda4 703 703 1017 326655 83 Linux native
Bu örnekte boyut Mbyte cinsinden verilmedi. Zaten amaç kalan alanı tümüyle
kullanıcı alanı olarak ayırmaktı. Bu nedenle son silindirin numarasının
girilmesi yeterli oldu. Artık yapılması gereken bu bilginin diske
yazılmasıdır. Şu ana kadar yapılan hiç bir değişiklik sistem üzerinde
herhangi bir etki yapmamıştır. Ancak bölümleme bilgisi diske yazıldıktan
sonra geri dönüş yoktur. Lütfen yaptığınız değişiklikleri bir kez
daha gözden geçirin!
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
(Reboot to ensure the partition table has been updated.)
Syncing disks.
Reboot your system to ensure the partition table is updated.
Sabit diski bölümleme esnasında karşılaşılan bazı sorunlar vardır.
Bunlarn en önemlisi Linux'un nasıl çalıştırılacağı ile ilgilidir.
Linux açmak için belli başlı üç yöntem vardır:
- LILO ile bir boot menüsünden
- DOS altından LOADLIN isimli bir yazılımla
- Yüklemek için yapıldığı gibi bir boot diskiyle
Son iki yöntem herhangi bir sınırlama getirmezken ilk yöntemin bir
sınırlaması vardır. LILO isimli yazılım ile kullanıldığı zaman
bilgisayar açıldığı zaman minik bir yazılım çalıştırır ve gerektiğinde
Linux çekirdeğini yükler. Ancak çekirdek yüklenmesine kadar geçen süre
içerisinde sistemin BIOS komutları çalışır. Bu komutların önemli bir
sınırlaması bir disk üzerindeki bir yazılımı belirleyen üç parametreden
(silindir sayısı, kafa numarası, sektör numarası) silindir sayısının
en fazla 1024 ile sınırlı olmasıdır. Bu bakımdan LILO kullanılacaksa
Linux çekirdeğinin yer alacağı bölüm bu 1024 numaralı silindir sınırının
altında kalmalıdır. Bu sınırlama tamamıyla DOS'un kullandığı BIOS'un
bir sınırlamasıdır. Yeni BIOS'lar bu sınırlamadan kurtulmak için LBA
adı verilen bir yöntem kullanırlar. Bu yöntemin temelinde BIOS'ta kafa
sayısı için gereksiz yere ayrılan kısımların silindir sayısını belirtmek
için kullanılmasıdır. (BIOS, bir sabit disk için 64'e kadar kafa kabul
edebilmektedir. Pratik olarak 15 kafadan fazla sabit diskin üretilmesi
çok zor olduğu için yapılan kafa sayısını iki veya dört ile çarparak,
silindir sayısını iki veya dörde bölmektir.) Böylelikle 1654 silindirli
16 kafalı bir sabit disk, LBA olarak 827 silindirli ve 32 kafalı olarak
tanımlanabilmektedir. İkinci durumda bu disk üzerinde tanımlanabilecek
her bölümün yukarıda belirtilen sınırlama içerisinde kalacağına dikkat
ediniz.