Linux Çekirdek Yönetimi-4.1
- Huseyin Şahan
- 28 Şub
- 7 dakikada okunur
Güncelleme tarihi: 17 Mar
Bu blog yazımızda Linux çekirdek yönetimi 4 blogunun devamı olarak dosya ssitemlerini ve diskinizi nasıl bölümlendirebileceğinizi göstereceğiz.Unutmayın bu bölümde disk bölümlendirme işlemleri tüm diskinizdeki verileri silebilir! Eğer gerçekten önemli verileriniz varsa verilerinizi bir buluta yada başka bir diske aktarın!
Disk Bölümlendirme
Linux sistemlerinde dosya sistemlerini yönetmek için öncelikle depolama aygıtlarını uygun şekilde bölümlemek gerekir. Bir disk üzerinde bölümleme işlemi, sistemin disk alanını verimli kullanmasını ve gerektiğinde birden fazla işletim sistemiyle çalışmasını sağlar. Bu yazıda, fdisk komutunu kullanarak nasıl disk bölümü oluşturabileceğinizi adım adım anlatacağım.fdisk komutunu kullanabilmek için süper kullanıcı olmanız gereklidir ve bu komuttan sonra bölümlendirmek istediğiniz aygıtın adını gireceksiniz.Aygıt adını bilmiyorsanız ve aygıtlar hakkında fazla bilgi sahibi değilseniz önceki blog yazımızı inceleyin:
İlk önce bensanal makinama bir usb bellek bağlayacağım. Bu usb belleğin nasıl bölümlendirildiği ve hangi dosya sistemini kullanacağını seçeceğiz.
İlk olarak terminale gidin ve bağlı aygıtları görüntüleyin.İşte komutumuz:
root@debian:~# lsblk
komutumuzu girdik ve işte aygıtımız görünüyor.

Diskimizin adı /dev/sdb1 aygıtlarımızın /dev dizininde tutulduğunu önceki blogumuzda söylemiştik.Eğer hangi dizinde tutulduğunu karıştırıyorsanız işte size yeni bir komut:
root@debian:~# fdisk -l
Bu komut size daha detaylı olarak blok aygıtları hakkında bilgi verecektir. İşte çıktımız:

Burada Sektör boyutunu, aygıtın hangi tür dosya sistemi kullandığını görebilirsiniz.Burada W95 FAT 32 kullanıyor. Buradaki ifadelerin ne olduğunu bilmiyorsanız önceki blogumuzdaki dosya sistemleri blogunu okuyun:
Şimdi bu çıktıdaki en son lısma bakalım ve kısaca ne anlama geldiğini anlayalım:
Sütun | Anlamı |
Aygıt (/dev/sdb1) | Bölümün bulunduğu disk aygıtı (/dev/sdb diskinin ilk bölümü). |
Açılış (*) | Bu bölümün önyüklenebilir (bootable) olduğunu gösterir. Eğer bu USB bellekten önyükleme yapmak istiyorsanız, bu işaret gerekir. |
Başlangıç (2048) | Bölümün başladığı sektör numarasıdır. |
Son (30031871) | Bölümün bittiği sektör numarasıdır. |
Sektör (30029824) | Bu bölümde toplam kaç sektör olduğu (Son - Başlangıç + 1). |
Boyut (14,3G) | Bölümün toplam boyutu (14.3 GB). |
Id (c) | Bölüm türünün ID numarasıdır. Burada c, FAT32 (LBA) dosya sistemini temsil ediyor. |
Türü (W95 FAT32 (LBA)) | Bölümün dosya sistemi ve türüdür. Burada Windows 95 FAT32 (LBA) olarak belirtilmiş. LBA (Logical Block Addressing), BIOS'un diskleri yönetmesini kolaylaştıran bir yöntemdir. |
Burada açılış kısmı mevcut yani bu usb bellek ile bir işletim sistemi yüklerken bu bayrağın olup olmamasına bakılır. Bilgisayar açılırken BIOS veya UEFI, boot flag'e sahip bölümü tarar ve buradaki önyükleyici (bootloader) yazılımını çalıştırır. Eğer depolama aygıtınızı bootloader için kullanmayacaksanız bu kısmın olmasına gerek yok. Bu işareti nasıl kaldırırsınız buna bakalım. Öncelikle şu komutu girin:
root@debian:~# fdisk /dev/sdb
Ama bu komutu girdiğinizde şu gibi bir hata verecektir:

Burada diskinizin sistemdeki bir klasöre bağlı olduğu ve kullanıldığını gösteriyor.Bunu çözmek için aygıtımızı umount edeceğiz.umount ve mount komutlarının ne anlama geldiğini bilmiyorsanız:
Şimdi terminalimizden bu aygıtı umount etmemiz gerekir.Merak etmeyin hata durumlarını ve çözümlerinide ele alacağız.İşte komutumuz:
root@debian:~# umount /dev/sdb1
Disk üzerinde lsblk komutu ile bağlantı noktaları görürseniz.Örneğin disk birden fazla bölümlenmiş ve bağlanmış olabilir.Hepsini tek tek umount etmeniz gereklidir.Yoksa fdisk aracı çalışmaz.Örneğin /dev/sdb5 varsa onuda umount edin.
Bu komut ile hangi dosyaya bağlandı ise sistem o bağlantıyı kesecektir.Aygıtı boşa almış oluyoruz.Ancak bazen "busy" uyarısı verebilir.Bunu nedeni dosyanın bir yerlerde açık olmasıdır.Bu işlemleri kapatmak için:
root@debian:~# sudo fuser -k /dev/sdb1
Veya başka yönetm ise öncelikle aygıtın hangi işlemlerde kullanıldığına bakın:
root@debian:~# lsof /dev/sdb1
Daha sonra işlemin PID değerini bulun ve şu komutu çalıştırarak işlemi sonlandırın.
root@debian:~# kill -9 <PID>
Tamam artık bu işlemlerden sonra umount komutunu tekrarlayın ve diski boşa alın bu aygıtımız üzerinde değişiklik yapmak çin gereklidir.
Tamam artık bu bootloader bayrağını nasıl kapatabileceğimizi görelim.İşte eğer bayrak açıksa yani * işareti varsa şu komutu gir
root@debian:~# fdisk /dev/sdb
Daha sonra a yazın ve enter tuşuna basın. Ancak değişiklerin kayıt edilebilmesi için w tuşuna basın ve enter tuşuna basın bu yaptığınız değişiklikleri kayıt edecektir.İşte ekran görüntüsü:

Burada artık bootloader bayrağı kaldırıldı.Bunu kontrol etmek için fdisk -l komutunu tekrardan girin ve orada açılış kısmında artık * görmeyeceksiniz.Bu bootlader için kullanılamayacağı anlamına gelecektir.İşte ekran görüntüsü:

Görüldüğü gibi açılış kısmında * işareti yoktur.
Ancak eğer fdisk komutu çalışmazsa şu komutu deneyebilirsiniz.Bu komutta aynı işlevi görecektir:
root@debian:~# parted /dev/sdb set 1 boot off
Bu komut bayrağı kapatacak ve bu komut:
root@debian:~# parted /dev/sdb set 1 boot on
bayrağı geri açacaktır. Buradaki 1 kafanızı karıştırmasın bu /dev/sdb nin 1. bölümü yani /dev/sdb1 anlamına gelir biz bu bölümdeki bayrağı kaldırmaya çaılşıyorduk. Eğer /dev/sdb2 deki bayrağı değiştirmek istiyorsanız 2 ile değiştirin. Bu kısım tamamen bölüm numarasını temsil edecektir. Eğer yine cihaz umount edilmemiş ise yukarıdaki yöntemleri inceleyin.
Şimdi ise asıl konumuz olan disk bölümlendirmeye gelelim. Bu konuda komutları hataları ve çözümleri ele alıp yazımızı bitireceğiz.
Disk Bölümlendirme ve Temel Komutları
İlk olarak bildiğimiz komut olan fdisk komutu üzerinden gidelim.Terminalinize gidin ve
root@debian:~# fdisk /dev/sdb
komutu girdiğinizde karşınıza çeşitli komutları çalıştıran harfler girmenizi isteyecektir.İşte tüm harflerin bir listesi.Bu tabloya bakarak işlemlerinizi yapabilirsiniz:
Komut | Açıklama |
a | Bir bölümün önyüklenebilir (bootable) olup olmadığını değiştirir (toggle). |
b | BSD Unix sistemlerinde kullanılan disk etiketini düzenler. |
c | DOS uyumluluk bayrağını açar veya kapatır. |
d | Seçilen bölümü siler. |
l | Kullanılabilir bölüm türlerini listeler. |
m | Kullanılabilir komut seçeneklerini gösterir. |
n | Yeni bir bölüm ekler. |
o | Yeni bir DOS bölüm tablosu oluşturur. |
p | Mevcut bölüm tablosunu görüntüler. |
q | Değişiklikleri kaydetmeden çıkar. |
s | Sun Unix sistemleri için yeni bir disk etiketi oluşturur. |
t | Bir bölümün sistem kimliğini değiştirir. |
u | Kullanılan depolama birimlerini değiştirir. |
v | Bölüm tablosunu doğrular. |
w | Yapılan değişiklikleri diske yazar ve çıkar. |
x | Gelişmiş (advanced) seçenekleri gösterir. |
Biz daha önce zaten "a" komutu ile bootlader açıp kapatabilmiştik.Burada öncelikle disk bölümlendirmek için n,p ve w gibi temel komutları göreceğiz.
!!
Önemi bir uyarı yapmak istiyorum.fdisk komutunu kullanırken lütfen diskin adını verin fdisk /dev/sdb gibi lütfen bölüm adı vermeyin. fdisk /dev/sdb1 hatalı olacaktır.
burada şunu belirtmek istiyorum.Bizim diskimizdeki blüm /dev/sdb1 kısmı zaten belleğin tamamını kapsadığı yani boş alan kalmadığı için ikinci bir bölüm oluşturamazsınız.Yani eğer fdisk /dev/sdb komutunu girer ve n yazarak yeni bir bölüm oluşturmak isterseniz şu çıktıyı alabilirsiniz.İşte ekran görüntüsü:

Şimdi bu bölümü sileceğiz ve yeniden bir bölüm oluşturacağız.Lütfen işe yaramayacak bir disk üzerinde bu işlemleri yapın.Bir usb,hdd veya ssd olabilir.
Bölüm Silme ve Yeniden Oluşturma
İlk olarak fdisk /dev/sdb komutunu girerek fdisk aracını başlatın daha sonra d komutunu girin ve enter tuşuna basın.İşte komutu kendi terminalimde uyguladım ve sonuç.Ancak şunu unutmayın bu işlemler veri kaybına yol açacaktır.Eğer önemli verileriniz disk içindeyse lütfen bu yöntemleri uygulamayın:

Burada d komutu ile mevcut bölümü sildik ve w komutu ile değişiklikleri kayıt ettik.
Şimdi yaptıklarımız çalıştı mı? Kontrol etmek için terminalinize lsblk komutunu girin ve işte benim örnek terminal çıktım:

Örnek çıktıya bakın artık sdb1 bölümü yok çünkü onu sildim.Eğer veri kaybı yaşadıysanız bunu size söylemiştim.Hakaretleri duyar gibiyim :)
Şimdi tekrardan baştan yeni bir bölüm oluşturacağız.Terminalinize gidip fdisk /dev/sdb komutunu çalıştırın.Daha sonra n harfine tıklayıp çalıştırın burada sizden disk bölümü tipi isteyecektir.İki farklı bölüm türü var ve bunları açıklayalım:
p birincil (0 primary, 0 extended, 4 free)
e genişletilmiş (mantıksal disk bölümleri için konteyner)
Birincil bölüm disk üzerinde doğrudan veri saklayabilen bölümlerdir.Örneğin bizim önceki bölümümüz hani şu sildiğimiz /dev/sdb1 birincil bölümdü.Çünkü bu kısımda disk üzerinde doğrudan veri saklayabiliyoruz.Bir disk üzerinde max 4 adet birincil bölüm oluşturabiliyoruz.
Birincil Bölüm Oluşturma
Genişletilmiş bölüm ise disk üzerinde bir container görevi görürür.Yan disk üzerinde max 4 adet birincil olarak bölüm oluşturabiliyorduk.Ancak burada bu genişletilmiş bölüm içinde birden fazla mantıksal bölüm oluşturabiliriz.Ancak disk üzerinde sadece 1 adet genişletilmiş bölüm olabilir.Ancak biz ilk olarak birincil bölüm oluşturacağız.
fdisk komutundan sonra size sorulan disk bölümü tipini p yazarak seçin ve enter tuşuna basın.Daha sonra sizden disk bölümü numarası isteyecektir. 1 ve 4 arasında biz birinci bölümü sildiğimiz için ben burada 1 olarak seçeceğim.
Sizden ilk sektör boyutunu seçmenizi isteyecektir.Bu 2048 den başlayacaktır.Varsayılan olarak seçmek için enter tuşuna basın.Neden 2048 den başladığı sorusunun cevabı ise 2048 sektöründen başlamak, modern disklerin 4KB'lik hizalamayı desteklemesi ve diskin daha verimli kullanılması için yaygın bir uygulama olmasıdır.Eski sistemler 512 Bayt sektör kullanır ancak yeni sistemler 4kb'lık sektörler kullanır burada 2048 sektör x 512 bayt = 1Mb değerine denk gelir.Bu ise 4kb değerinin tam katı olacaktır.Yeni ve eski sistemin uyumluluğu sağlandı.
Şimdi ise son sektörü seçin yazıyor .Eğer enter tuşuna basarsanız bölüm diskin tümünü kullanacaktır.Ama biz sadece belirli bir kısmını kullanacağız ben 10 gb'lık bir kısım oluşturuyorum:

Burada son sektörü +10G oalrak 10 gigabayt oalrak verdim.Eğer 500M deseydim 500 megabayt olurdu.Burada kırmızı yazan ifadeye odaklanmayın.Blogun ilerleyen bölümlerinde nasıl bölümün kullandığı dosya sistemini değiştireceğinizi göstereceğim.Burada sadece diskin bölümlendirilmesine odaklanın.Şimdi lsblk komutu ile belleğin bölümüne bakalım işte benim terminal çıktım görünüşe göre işlem başarılı olmuş ve 10G bir bölüm oluşmuş.

Burada aynı işlemleri yaparak 2. bir bölüm oluşturabilirsiniz. Bunuda siz yapın eğer takıldığınız bir yer olursa blogun yorumlar kısmından bunu sorabilirsiniz. İşte 2. bölümü ben oluşturdum ve örnek:

Burada son sektörü istediğiniz boyutta belirleyebilirsiniz. Ben burada 4GB olarak belirledim.

Görüldüğü gibi sdb1 ve sdb2 adında iki tane bölümümüz oldu. Şimdi birincil bölümler oluşturduğumuza göre nasıl genişletilmiş bölüm oluşturacağız onu görelim.
Genişletilmiş Bölüm Oluşturma
Biraz önce disk bölümünü silmek için fdisk aracını başlatıp d komutunu girerek silmiştik.Burada ise diskimizin 2. bölümünü yani yukarıdaki ekran görüntüsündeki sdb2 kısmını sildim.Bu boş alana genişletilmiş bir bölüm oluşturmak istiyorum.fdisk aracını başlatın ve bölüm oluşturun. bu sefer p yerine e seçeceksiniz.Siz uğraşmayın diye işte size ekran görüntümü veriyorum:

Burada yeni bir genişletilmiş disk bölümü yaratıldı.lsblk komutu ile bunu görebilirsiniz.Eğer lsblk komutunda bölüm boyutunu 1kb olarak görüyorsanız bu konteyner boş olduğu içindir.Bunun içerisine henüz bir dosya sistemi bağlamadık.
Şimdi bu konteyner içerisine mantıksal bölüm ekleyeceğiz.İşte aşağıdaki örnek terminal komutlarımı inceleyin:

Burada fdisk aracı sizin konteyner oluşturduğunuzu ve bu konteyner içinde bir mantıksal bölüm oluşturmak istediğinizi bilecektir.Şimdi artık yeni bir mantıksal bölümümüz oluştu.Bunu yine lsblk komutu ile görebilirsiniz.Ancak henüz işlemimiz bitmedi.Bu mantıksal kısım için bir dosya sistemi oluşturmamız gereklidir.Yani bir dosya sistemini kullanması gerekir.
Şimdi terminalinizde gidin ve oluşturduğunuz bölümlerin hangi dosya sistemini kullandığını öğrenin.İşte komut:
darkside@debian:~/Masaüstü$ lsblk -f

Artık bölüm oluşturmayı öğrendik ve bu komut ile bölümlerimizin hangi dosya sisteminin kullandığını gördük. Peki sdb1 bölümünün kullandığı dosya sistemi türünü nasıl değiştirebiliriz.Bu konuya değinelim.
Bunun için aşağıdaki basit komutu girebilirsiniz.Biz dosya sistemi olarak ext4 dosya sistemini kullanacağız.Eğer dosya sistemleri hakkında bilginiz yoksa
Blogumuzu okuyun şimdi gelelim komutumuza:
root@debian:~# mkfs.ext4 /dev/sdb1
Burada dosya sistemini istediğiniz gibi yapabilirsiniz.Eğer bu bölüm için örneğin FAT32 kullanmak isterseniz:
root@debian:~# mkfs.fat -F 32 /dev/sdb1
Burada FAT32 dosya sistemini kullanacaktır.FAT32, genellikle 2 TB'den küçük disklerde ve 4 GB'den küçük dosya boyutları için idealdir.İşte ekran görüntümüz:

Şimdi lsblk -f ile çıktıya bakın:

Diğer bir yöntem ise fdisk aracı ile değiştirmektir.fdisk aracını başlatın ve şu harfi girin:
Komut (yardım için m): t
Disk bölümü numarası (1,2,5, varsayılan 5): 1
Hex code or alias (type L to list all): c
İşte ekran görüntüsü:

Tüm işlemleri bitirdiyseniz. İstediğiniz disk bölümünü mount ederek kullanabilirsiniz./dev/sdb1 yada /dev/sd5 kısmını. Nasıl yapılacağını bilmiyorsanız lütfen önceki bloglarımıza göz gezdirin.
Evet artık dosya sistemini değiştirme konusunu ve temel olarak disk bölümleme konusunu ele aldık ve detaylıca anlattık.Hata olduğunu düşündüğünüz yer olursa bildirin.
Linux çekirdek yönetimi konusunu bu blog ile kapattık.Belki ileride ilave bölümler eklenebilir.Hoşçakalın...
Comments