3. Donanımlara erişim/yapılandırma ve disk yapılandırması
Labaratuar içersinde bilgisayar donanımlarına erişim, durumları ile ilgili bilgi almak, bölümleme, dosya sistemleri, kurulum sırasında dosya sistemlerinin tanımları.
Linux101 - Ana Sayfa
Bölüm içersinde aşağıdaki konular işlenecektir:
Kullanım İpuçları:
Eğitim içersinde, komut satırı bilgileri aşağıdaki üç farklı şekilde belirtilmiştir.
-
şunun
gibi görünen komut betimleri şeklinde gösterilmler daha çok örnekler ve yazılması gereken komutları tanımlamak için kullanılır. - Aşağıdaki gibi kutu içersinde gördüğünüz kodlar üzerine tıkladığınızda, kopyala yapıştır yapmanıza gerek kalmadan terminal içersinde çalıştırılacaktır:
uname -a
- Aşağıda gördüğünüz gibi bir pencere içersinde yazılmış olan kod betimleri sizin klavyeden yazmanız gereken kod betimleridir.
Genellikle benzersiz bir ID veya başka bir değişken girmeniz gerekiyordur. Buradaki benzersiz veri eğitim sırasında kullandığınız ortam içersinden bulunabilir.
<> içersinde bulunan maddeler sizin değiştirmeniz gereken verinin yerini göstermektedir.
hostnamectl set <sunucu adı>
1. Donanım ve Bilgisayarın başlaması
tüm işletim sistemleri donanım üzerinde çalışır ve bu donanım işletim sistemlerinin nasıl çalıştığını etkiler. Donanım hızlı veya yavaş, güvenilir veya güvenilmez olabilir. Daha ayrıntılı bakacak olursak, işletim sistemleri donanımı yapılandırmak ve bunlara erişmek için çeşitli araçlar sağlar - örneğin, sabit diskleri bölümleme ve harici (USB) cihazlarından veri okuma. Etkili olabilmek için Linux’un donanım ortamıyla nasıl etkileşime girdiğinin en azından temellerini anlamalısınız.

Donanımların ayarlanması
Tüm bilgisayarlar bir dizi temel donanımla birlikte gelirler bundan daha önce bahsetmiştik. Genellikle hesaplama işinin çoğunu yapan bir merkezi işlem birimi (CPU) ve verileri tutan rastgele erişim belleği (RAM) vardır. Birçok ek temel özellik, her şeyi birbirine yapıştırmaya yardımcı olur ve bunlardan bazıları Linux içinde ve dışında yapılandırılabilir. Bu donanımların çoğunun merkezinde, yapılandırma araçları sağlayan ve işletim sistemi önyükleme sürecini başlatan firmware vardır. Firmware erişimi donanım sağlayıcılar tarafından BIOS üzerinden veya kendilerine özgü geliştirilmiş arayüzler aracılığı ile olur.

Donanım Yazılımını (Firmware) Anlamak
Pek çok donanım aygıtında sabit yazılım bulunur, bu nedenle herhangi bir bilgisayarda pek çok ürün yazılımı yüklü olabilir - ana kart için, takılabilir disk denetleyicisi için, modemler için vb. Yine de en önemli Donanım yazılımı(firmware) bilgisayarın ana kartına yüklenir. Bu firmware, anakartın donanımını başlatır ve önyükleme sürecini kontrol eder. Geçmişte, x86 ve x86-64 tabanlı bilgisayarların büyük çoğunluğu Temel Giriş/Çıkış Sistemi (BIOS) olarak bilinen bir firmware türü kullanıyordu. 2011’den başlayarak, yeni bilgisayarlarda , Genişletilebilir Ürün Yazılımı Arabirimi (EFI) veya Birleşik EFI (UEFI) olarak bilinen yeni bir firmware yazılımı türü, neredeyse standart hale geldi. Bazı eski bilgisayarlar da EFI kullanır. EFI’nin teknik olarak bir BIOS olmadığı gerçeğine rağmen, çoğu üretici belgelerinde ona bu adla atıfta bulunur.
Bilgisayarın donanımsal başlangıcı (Sınav/iş görüşmesi sorusu)
BIOS, donanımın yazılımla ilk kez buluştuğu ve tüm önyükleme işleminin başladığı yerdir. BIOS kodu, genellikle EEPROM adı verilen ve büyük ölçüde donanıma özgü olan PC’nizin ana kartında yer alır. BIOS, bir bütün olarak donanımla arabirim oluşturan en düşük düzeydeki yazılımdır ve bu arabirim sayesinde, önyükleyici ve işletim sistemi çekirdeği donanımla iletişim kurabilir ve donanımı kontrol edebilir. BIOS’a standartlaştırılmış çağrılar (bilgisayar sözlüğünde “IRQ”) yoluyla, işletim sistemi BIOS’u diski okuyup yazması ve diğer donanım bileşenleriyle arabirim oluşturması için kullanır.
Bilgisayarınız ilk açıldığında çok şey olur. PC’nin elektrik bileşenleri, başlangıçta bilgisayarınızı hayata döndürmekten sorumludur ve akımı PSU’dan anakarta yönlendiren bir anahtarı tetikleyerek PC’nizin tüm bileşenlerine elektrik verir.
POST Süreci
Bilgisayarınız açıldıktan sonra, BIOS POST (Açılışta Kendi Kendine Test) işleminin bir parçası olarak çalışmaya başlar. BIOS PC’nizin tüm parçalarını birbirine bağlar ve bunlar arasında gerektiği şekilde arabirim oluşturur.
Ekranınız için VGA’yı kabul edecek ve ekranda gösterecek şekilde ayarlar, bellek bankalarını başlatır ve CPU’nuzun tüm donanıma erişimini sağlar. IO veriyollarını bağlı donanım için tarar ve bilgisayarınıza bağladığınız sabit disklere erişimi tanımlar ve eşler. Yeni anakartlardaki BIOS, harici sürücüler ve USB fareler gibi USB aygıtlarını bile tanıyacak ve tanımlayacak kadar akıllıdır.
POST prosedürü sırasında, mümkün olan yerlerde hızlı testler gerçekleştirilir ve uyumsuz donanım, bağlantısı kesilmiş cihazlar veya arızalı bileşenlerin neden olduğu hatalar genellikle yakalanır. “Klavye hatası veya klavye yok” gibi çeşitli hata mesajlarından veya uyumsuz/tanınmayan bellekle ilgili uyarılardan sorumlu olan BIOS’tur.
Bu noktada, BIOS’un çalışmasının çoğu tamamlandı ve önyükleme işleminin bir sonraki aşamasına geçmeye neredeyse hazır. Geriye kalan tek şey, “Eklenti ROM’lar” olarak adlandırılanları çalıştırmaktır: Anakarta bağlı video kartı veya RAID denetleyicileri gibi donanımlar, başlatılmasının tamamlanması için kullanıcı müdahalesi gerektirebilir.
Bilgisayarın ve ekranının kontrolünü üstlenirler ve RAID dizilerini kurma veya bilgisayar gerçekten açılmadan önce ekran ayarlarını yapılandırma gibi şeyler yapmanıza izin verir. Yürütmeyi tamamladıklarında, bilgisayarın denetimini tekrar BIOS’a aktarırlar ve bilgisayar, kullanılabilir bir duruma girer ve başlamaya hazırdır.
BIOS Önyükleme Aktarımı
Bilgisayarınızın temel giriş ve çıkış aygıtlarını yapılandırdıktan sonra, BIOS artık bilgisayarınızın kontrolünün hala elinde olduğu son aşamaya geçer.
Bu noktada, normal olarak, donanım ayarlarını yapılandırabileceğiniz ve bilgisayarınızın nasıl önyükleneceğini kontrol edebileceğiniz BIOS kurulumuna girmek için bir tuşa hızlıca basma seçeneği sunulur. Hiçbir şey seçmezseniz, BIOS, varsayılan ayarları kullanarak PC’nizi gerçekten “önyükleme” nin ilk adımına başlayacaktır.
IRQ Interrupts Kesmeler
Bir kesme isteği (IRQ) veya kesinti, CPU’ya gönderilen ve mevcut aktivitesini askıya alması ve klavye girişi gibi bazı harici olayları işlemesi talimatını veren bir sinyaldir. Açık x86 platformunda, IRQ’lar 0 ile 15 arasında numaralandırılmıştır. x86-64 sistemleri dahil daha modern bilgisayarlar bu 16 kesintiden fazlasını sağlar.
Bazı kesmeler, klavye ve gerçek zamanlı saat gibi belirli amaçlar için ayrılmıştır; diğerlerinin ortak kullanımları vardır (ve bazen aşırı kullanılır) ancak yeniden atanabilir; ve bazıları sisteme eklenebilecek ekstra cihazlar için kullanılabilir durumda bırakılır. Alttaki tabloda IRQ’ları ve x86 sistemindeki kullanım amaçlarını görebilirsiniz.
IRQ 0 - sistem zamanlayıcı (değiştirilemez)
IRQ 1 - klavye denetleyicisi (değiştirilemez)
IRQ 2 - IRQ'lar 8–15'ten gelen basamaklı sinyaller (IRQ 2'yi kullanmak için yapılandırılmış tüm cihazlar aslında IRQ 9'u kullanacaktır)
IRQ 3 - seri bağlantı noktası 2 için seri bağlantı noktası denetleyicisi (varsa, seri bağlantı noktası 4 ile paylaşılır)
IRQ 4 - seri bağlantı noktası 1 için seri bağlantı noktası denetleyicisi (varsa seri bağlantı noktası 3 ile paylaşılır)
IRQ 5 - paralel bağlantı noktası 2 ve 3 veya ses kartı
IRQ 6 - disket denetleyicisi
IRQ 7 - paralel bağlantı noktası 1. Yazıcılar için veya yazıcı yoksa herhangi bir paralel bağlantı noktası için kullanılır. Bağlantı noktasının dikkatli yönetimi ile potansiyel olarak ikincil bir ses kartı ile paylaşılabilir.
IRQ 8 - gerçek zamanlı saat (RTC)
IRQ 9 - Intel yonga setlerinde Gelişmiş Yapılandırma ve Güç Arabirimi (ACPI) sistem kontrol kesintisi. [2] Diğer yonga seti üreticileri bu amaç için başka bir kesme kullanabilir veya onu çevre birimlerinin kullanımına sunabilir (IRQ 2 kullanmak için yapılandırılmış herhangi bir cihaz aslında IRQ 9 kullanıyor olacaktır)
IRQ 10 - Kesinti, çevre birimlerinin kullanımı için açık bırakılır (açık kesme / kullanılabilir, SCSI veya NIC)
IRQ 11 - Kesinti, çevre birimlerinin kullanımı için açık bırakılır (açık kesme / kullanılabilir, SCSI veya NIC)
IRQ 12 - PS / 2 konektöründe fare
IRQ 13 - CPU ortak işlemcisi veya entegre kayan nokta birimi veya işlemciler arası kesinti (kullanım işletim sistemine bağlıdır)
IRQ 14 - birincil ATA kanalı (ATA arabirimi genellikle sabit disk sürücülerine ve CD sürücülerine hizmet eder)
IRQ 15 - ikincil ATA kanalı
Linux işletim sisteminiz üzerinde bunları görüntülemek isterseniz /proc/interrupts dosyasına bakabilirsiniz.
cat /proc/interrupts
Donanım çakışması diye bahsedilen şey, donanım üreticilerinin aynı IRQ adresini kullanmaları yüzünden olmaktadır, bu durumda donanımın IRQ adresini veya bulunduğu PCI konumunu değişitrmeniz farklı bir IRQ kullanmasına sebep olacaktır ve çakışmayı çözebilirsiniz. Linux kernel bu konuda size olduça açıklayıcı bir bilgi verecektir.
I/O adresleri
Rezerve edilmiş bazı memory adresleri vardır, bunlar direkt olarak CPU ile iletişim sağlarlar. Bunları linux altında listelemek için aşağıdaki komutu yazabilirsiniz.
cat /proc/ioports
Donanıma Erişim komutları
Normal kullanım şartları altında donanımlar otomatik(auto-loader) olarak başlangıçta algılanıp gerekli Linux modülleri yüklenecektir. Firmware ile tanımlanmış olan donanım özellikleri, linux üzerinde yüklenen modüller ile konuşarak Grafik arabim /Network kartı gibi donanımlarla konuşurlar.
Linux, çekirdek modüllerini iki programla yüklemenizi sağlar: insmod
ve modprobe
. insmod programı çekirdeğe tek bir modül ekler. Bu işlem, yüklediğiniz modülün dayandığı tüm modülleri önceden yüklemiş olmanızı gerektirir. Bunun aksine modprobe programı, bağlı modülleri otomatik olarak yükler ve bu nedenle genellikle modül yüklemek için modprobe tercih edilir.
lsmod donanımlar için yüklenmiş kernel modüllerini gösterir.
insmod dosya olarak verilen modülü yükler
modinfo modül ile ilgili bilgi verir
rmmod modül kaldırma
modprobe standart lokasyondan modül yükler
Örnek senaryo, wifi kartımızı sunucu çalışırken takmış olalım, ve kernel algılamamış olsun. Aşağıdaki şekilde driver yüklenebilir..
sudo lsmod|grep rtl8187
sudo modinfo /lib/modules/3.10.0-1127.19.1.el7.x86_64/kernel/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8187.ko.xz
sudo modins /lib/modules/3.10.0-1127.19.1.el7.x86_64/kernel/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8187.ko.xz
lsmod|grep rtl8187
yukarıdaki senaryoda önce kernel modülü yüklenmişmi diye kontrol ediyoruz rtl8187
, sonrasında modinfo
ile modül içeriğine bakıyoruz ve modins
ile yükleyip, lsmod
ile yüklenmenin gerçekleşip gerçekleşmediğini kontrol ediyoruz.
2. Donanımlarımızı listelemek
Donanımlarımız listelemek için en çok tercih edilen komutlar dmidecode, hwlist komutlarıdır, aşağıda kullanımlarını görebilirsiniz.
dmidecode
dmidecode, sisteminizin donanım bileşenlerinin yararlı bilgilerini insan tarafından okunabilir biçimde almak için kullanılan bir komuttur. Dmidecode, Linux benzeri tüm sistemler (RHEL, CentOS, Debian ve SUSE) için mevcuttur. Dmidecode, DMI (Masaüstü Yönetim Arayüzü) tablo kod çözücüsünün kısaltmasıdır, çünkü adından da anlaşılacağı gibi DMI tablosundaki verileri okur ve bize insan tarafından okunabilir formatta çıktı üretir. DMI tablosu, BIOS, Seri Numarası, RAM (DIMM’ler) ve CPU ayrıntıları vb. Gibi donanım ayrıntılarını verir.
Kullanım örnekleri,
Öncesinde dmidecode yazılımını kuruyoruz
apt-get update && apt-get install dmidecode -y
dmidecode uzun bir liste getirecektir, o yüzden more
veya less
ile birlikte kullanmanızı tavsiye ederim
dmidecode | more
vaya
dmidecode | less
sadece belli bir donanım ile ilgili bilgi almak için -t
parametresini kullanabilirsiniz
dmidecode -t memory
dmidecode -t processor
dmidecode -t system
lshw
lshw komutu, donanım bilgilerini almanızı sağlar. aşağıda bazı örnekler var.
Öncesinde yazılımı kuruyoruz
apt-get update && apt-get install lshw -y
kısa bir özet almak için
lshw -short
belli donanımlar için çıktı alabilmek için
lshw -businfo
veya çıktınızı HTML formatında almak istiyorsanız.
lshw -html
Sunuculara bağlandığınızda genellikle hangi donanımlara sahip oldukları ile ilgili sorular sorabilirsiniz, ne kadar RAM ve CPU olduğu ve ne hızda sonuç üretebildiği gibi. Yukarıdaki komutlar özellikle bu durumlar için çok kullanışlıdırlar. `TOP` komutu ile sunucunun performansını inceleyebilirsiniz fakat donanım kaynaklarına mutlaka bakarak bu bilgileri birlikte değerlendirmelisiniz.
3. Disk kullanımı ve bölümleme (partitions)
Sabit Disk kurgulamak
Sisteminiz ister SATA, ister SCSI diskler kullanıyor olsun, Linux için bir disk düzeni tasarlamalısınız. Önceden Linux yüklenmiş bir sistem kullanıyorsanız, bu görevle hemen ilgilenmeniz gerekmeyebilir; ancak er ya da geç Linux’u yeni bir bilgisayara veya mevcut bir işletim sistemine sahip bir bilgisayara yüklemeniz veya sabit diskinizi yükseltmeniz gerekecektir.
Bu bölümde, x86 sunucularda bölümleme yöntemlerini, Linux bağlama noktalarını ve bir Linux bölümleme şeması için genel seçenekler işlenmiştir. Daha sonra “Bölümler ve Dosya Sistemleri Oluşturma” konusunu işleyeceğiz.
s
Bölümleme neden gereklidir ? (partitioning)
Bölümlemeyle ilgili ilk sorun, bunu neden yapmanız gerektiği sorusudur. Cevap, bölümlemenin aşağıdakiler gibi çeşitli avantajlar sağlamasıdır:
Çoklu İşletim Sistemi Desteği Bölümleme, farklı işletim sistemleri için verileri ayrı tutmanıza olanak tanır. Aslında, birçok işletim sistemi, birbirlerinin birincil dosya sistemlerini desteklemedikleri için aynı bölümde bir arada var olamazlar. Bu özellik, özellikle bilgisayarın birden çok işletim sistemini başlatmasını istiyorsanız çok önemlidir. Ayrıca, bir acil durum sisteminin kurulması için bölümleme çok kullanışlı olabilir — sorun çıkması durumunda ilk kurulum için acil durum bakım aracı olarak ikinci kurulumu kullanarak tek bir işletim sistemini iki kez kurabilirsiniz. Windows/Mac bu tip bir bölümleme yapmaktalar.
Farklı Dosya Sistemi Diskinizi bölümlere ayırarak, her bölümdeki farklı dosya sistemlerini (bir bölümdeki tüm dosyaları tutmak için tasarlanmış veri yapıları) kullanabilirsiniz. Belki bir dosyasistemi diğerinden daha hızlıdır ve bu nedenle zaman açısından kritik veya sık erişilen dosyalar için önemlidir, ancak bir başkası, kullanıcıların veri dosyaları için kullanmak istediğiniz hesaplama veya yedekleme özelliklerini sağlayabilir. örn. Btrfs,xfs,ext4,glusterfs için ayrı bölümler yaratabilirsiniz.
Disk Alanı Yönetimi Diskinizi bölümlere ayırarak, belirli dosya kümelerini sabit bir alanda kilitleyebilirsiniz. Örneğin, kullanıcıları bir veya iki bölümde dosya depolamakla sınırlarsanız, sistem bölümleri gibi diğer bölümlerde sorun yaratmadan bu bölümleri doldurabilirler. Bu özellik, alan biterse sisteminizin çökmesini önlemeye yardımcı olabilir. Fakat unutmayın, bölüm boyutlarını yanlış ayarlarsanız, yalnızca bir bölümdeki disk alanınız dolar ve bölüm çok hızlı bir şekilde dolar. istesenizde diğer bölümlere taşıyamazssınız.
Disk Hatası Disklerde bazen sorunlar ortaya çıkar. Bu sorunlar, kötü donanımdan veya dosya sistemlerine sızan hatalardan kaynaklanabilir. Her iki durumda da, bir diski bölümlere ayırmak, bu tür sorunlara karşı bir miktar koruma sağlar. Bir bölümdeki veri yapıları bozulursa, bu hatalar yalnızca o bölümdeki dosyaları etkiler. Bu ayrım, bu nedenle diğer bölümlerdeki verileri koruyabilir ve verileri yedeklemeniz için size alternatif alan sunar.
Güvenlik Farklı bölümlerde güvenlikle ilgili farklı montaj seçeneklerini kullanabilirsiniz. Örneğin, kritik sistem dosyalarını salt okunur tutan ve kullanıcıların o bölüme yazmasını engelleyen bir bölüm bağlayabilirsiniz. tmp
için execution hakkı olmayan bir partition yaratabilirsiniz, hayat kurtarıcı olacaktır. Linux’un dosya güvenlik seçenekleri de benzer koruma sağlamaktadır, ancak Linux dosya sistemi bağlama seçeneklerini doğru ayarlamanız gerekir(/etc/fstab için).
Yedekleme Bazı yedekleme araçları bölümleme ile çok iyi çalışırlar. Bölümleri küçük tutarak, bölümleriniz büyük olmasına kıyasla daha kolay yedekleme yapabilirsiniz.
Uygulamada, çoğu Linux bilgisayar birkaç bölüm kullanır, ancak sistemin tam olarak nasıl bölümlendiği bir bilgisayardan diğerine değişir. Aşağıda daha ayrıntılı bir şekilde değişik kullanımlar için bölümlemeler konusundaki tercihlerimi görebilirsiniz.
Disk Bölümleri nasıl yapılır?

Bölümler, sabit diskin belirli bölümlerine yazılan veri yapılarıyla tanımlanır. Bu bölümleri tanımlamak için birkaç rakip sistem mevcuttur. X86 ve x86-64 donanımında, 2010 yılına kadar en yaygın yöntem Ana Önyükleme Kaydı (MBR) bölümleme sistemiydi, bu sistem verilerini MBR olarak da bilinen diskin ilk sektöründe depoladığı için. Bununla birlikte, MBR sistemi, en azından neredeyse evrensel sektör boyutu olan 512 bayt kullanılırken, 2 tebibayt (TiB; 1TiB 240 bayttır) bölümler ve bölüm yerleşimi ile sınırlıdır. MBR’nin halefi, çok daha yüksek sınırlara ve bazı başka avantajlara sahip olan GUID Bölümleme Tablosu (GPT) bölümleme sistemidir. MBR ve GPT disklerini değiştirmeye yönelik araçlar ve yöntemler, önemli ölçüde örtüşme olsa da, birbirinden farklıdır.
Burada çok güzel bir anlatım var, izleyebilirsiniz.
MBR ve GPT kıyaslamasını aşağıda bulabilirsiniz.
MBR (Master Boot Record) GPT (GUID Partition Table)
Specification None UEFI
Max.No primary partitions 4 Unlimited (dependent on OS; Windows: 128)
Maximum partition size 2 terabytes 18 exabytes
Maximum hard drive size 2 terabytes 18 exabytes
Security Data sector no checksum Datasector CRC32 checksum GUID table backup
Partition name Stored in the partition Unique GUID ID plus a 36-character name
Multiboot support Poor Good (boot loader entries in separate partition)
Daha önce vermiş olduğum disk büyüklükleri ile ilgili tablo aşağıdaki gibidir.
Hipervizör Kurulumu KVM
En az 64GB hafıza
disk yapısı
swap partition 4GB (bilgisayarın hafızasına göre karar vermenize gerek yok) 500M /boot 10GB / kök dizin 5GB /home 1GB /tmp 500GB /srv/data01 (data dizini, sanal sunucu diskleri için, kaynaklarınıza göre karar verin)
Docker Sunucu kurulumu (CENTOS)
en az 8 GB hafıza, mutlaka I/O yüksek disk
disk yapısı
0 swap (swap partition olmasın!!) 500M /boot 10GB / kök dizin 5GB /home 1GB /tmp 20GB /src/data01 (data dizini, sonradan ihtiyacınıza göre arttırırsınız)
Web Sunucu Kurulumu (DEBIAN), php veya Java uygulamaları çalıştıracak sunucu
backend sunucusu(php,java,ruby)
genelde 8,16 GB ve 4-6 vCPU yeterli olacaktır (vCPU sanal CPU demektir)
frontend sunucularda (nginx/apache/Haproxy)
cache yapmayacaksanız 1GB ram 2 vCPU yeterli olacaktır. (vCPU sanal CPU demektir)
disk yapısı
swap partition 1GB (bilgisayarın hafızasına göre karar vermenize gerek yok) 500M /boot 10GB / kök dizin 5GB /home 1GB /tmp
Disk bölümleme nasıl yapılır?
Disk bölümleme için geleneksel Linux aracı fdisk olarak adlandırılır. Bu aracın adı sabit diskin kısaltmasıdır ve adı, aynı görevi gerçekleştiren bir DOS ve Windows aracıyla aynıdır. Hem DOS’un FDISK’ı hem de Linux’un fdisk’i, benzer hedeflere ulaşmak için kullanılan metin tabanlı araçlarıdır, ancak ikisi operasyonel ayrıntılarda çok farklıdır. Fdisk geleneksel araç olmasına rağmen, başka birkaçı da mevcuttur. Bunlardan biri, yalnızca fdisk’in işleyebileceği MBR’yi değil, birkaç farklı bölümleme tablosu türünü işleyebilen GNU Parted’dir. Fdisk’i GNU Parted’e tercih ediyorsanız ancak GPT kullanmanız gerekiyorsa, GPT fdisk’i kullanabilirsiniz.
Bölümleme için kullanılan komutlardan başlıcaları:
fdisk
cfdisk
cgdisk
gpart
Burada sadece fdisk ile bölümleme konusunda birkaç örnek vereceğiz, diğer yazılımlar da benzer işleri farklı şekilde yapıyorlar. Diğer programları mutlaka denemenizi tavsiye ederim.
fdisk /dev/sdc
Geçerli Bölüm Tablosunu Görüntüleyin p Geçerli bölüm tablosunu görüntüleyerek başlamak isteyebilirsiniz. Bunu yapmak için p
yazın. Yalnızca geçerli bölüm tablosunu görüntülemek istiyorsanız, fdisk’in etkileşimli moduna girmek yerine bir komut istemine fdisk -l /dev/sdc
(veya başka bir donanım yolu /dev/sde gibi) yazabilirsiniz. Bu komut bölüm tablosunu görüntüler ve ardından çıkar.
Bölüm Oluşturma n Bir bölüm oluşturmak için n
yazın.
1. bölüm hakkında bilgi isteyen bir dizi bilgi istenecektir primary
birincil, extended
genişletilmiş veya logical
mantıksal bölüm tercihi yapmanız gerekir.
2.bölümün başlangıç silindiri
3.bölümün bitiş silindiri veya boyutu
gibi sorular gelecektir, varsayılan değer olarak yeni bir disk için başlangıç ve bitiş silindirleri bilgisi gelir.
Bölümü Silme Bir bölümü silmek için d
yazın. Birden fazla bölüm varsa, program girmeniz gereken bölüm numarasını isteyecektir.
Bölümün Türünü Değiştirme Bir bölüm oluşturduğunuzda, fdisk ona bir Linux dosya sistemine karşılık gelen 0x83 tür kodunu atar. Bir Linux takas bölümü veya başka bir işletim sistemi için bir bölüm oluşturmak istiyorsanız, bir bölüm türü kodunu değiştirmek için t
yazabilirsiniz. Program daha sonra sizden bir bölüm numarası ve bir tür kodu girmenizi ister.
Bölüm Türlerini Listeleme Birkaç düzine bölüm türü kodu mevcuttur, bu nedenle bunların ne olduğunu unutmak kolaydır. En yaygın olanların listesini görmek için ana fdisk komut istemine l
(list, kısaltması küçük L harfi) yazın.
Bir Bölümü Önyüklenebilir Olarak işaretleme DOS ve Windows gibi bazı işletim sistemleri, önyükleme yapmak için özel önyüklenebilir (flag)bayraklara sahip bölümler kullanır. Bu bayrağı a
yazarak ayarlayabilirsiniz, bunun üzerine fdisk bölüm numarasını sorar.
Yardım Alma m
veya ?
ana fdisk komutlarının bir özetini görmek için.
Çıkış Linux’un fdisk’i iki çıkış modunu destekler. Öncelikle programdan çıkmak için q
yazabilirsiniz herhangi bir değişikliği kaydetmeden proram sonlanır. Programla yaptığınız her şey kaybolur. Bu seçenek, bir hata yaptıysanız özellikle yararlıdır. İkinci olarak, w
yazmak, değişikliklerinizi diske yazar ve programdan çıkar.
aşağıda örnek bir senaryo ile çalışan bir sunucuya bir disk içinde bölüm oluşturuyoruz. ilk listelememiz sırasında bize /dev/vda /dev/vdb ve /dev/vdc isimli 3 disk gösteriliyor, vda ve vdb diskleri üzerinde linux bölümleri(partition) mevcut /dev/vda1 ve /dev/vdb1. Biz yeni eklenen /dev/vdc diski ile işlem yapacağız.
işlem sırasında yeni bir disk oluşturmak için fdisk programına sırasıyla n
-> p
-> enter(ilk silindir varsayılan) -> enter(ikinci silindir varsayılan) -> w
tuşlarına basılarak yeni bir bölüm yaratılır.
root@ops.nucleuss ~ # fdisk -l
Disk /dev/vda: 12 GiB, 12884901888 bytes, 25165824 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xdff22e71
Device Boot Start End Sectors Size Id Type
/dev/vda1 * 2048 25165823 25163776 12G 83 Linux
Disk /dev/vdb: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xd70e979e
Device Boot Start End Sectors Size Id Type
/dev/vdb1 2048 41943039 41940992 20G 83 Linux
Disk /dev/vdc: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
root@ops.nucleuss ~ # fdisk /dev/vdc
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xffc8c0e5.
Command (m for help): p
Disk /dev/vdc: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xffc8c0e5
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-41943039, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039):
Created a new partition 1 of type 'Linux' and of size 20 GiB.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
root@ops.nucleuss ~ # fdisk /dev/vdc
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/vdc: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xffc8c0e5
Device Boot Start End Sectors Size Id Type
/dev/vdc1 2048 41943039 41940992 20G 83 Linux
Command (m for help): q
Size sorulan şeyin ayrıntıları kısmen ekranda tanımlanmış olarak gelir. Örneğin fdisk, zaten varsa genişletilmiş bir bölüm oluşturmak isteyip istemediğinizi sormaz. Fdisk’in eski sürümleri, bölüm başlangıç ve bitiş noktalarını megabayt olarak değil, silindirlerde ölçer.
Bu x86 bölümleme tablosu tarafından kullanılan CHS ölçümlerinin bir parçasıdır. Fdisk’in son sürümleri, varsayılan ölçü birimi olarak sektörleri kullanır, ancak bir 20GiB
bölümü oluşturmak için +20G
‘de olduğu gibi bir bölümün boyutunu artı işareti, sayı ve birim kullanarak belirlemeniz gerekir.