Neler yeni

Yazılım Forum

Tüm özelliklerimize erişmek için şimdi bize katılın. Kayıt olduktan ve giriş yaptıktan sonra konu oluşturabilecek, mevcut konulara yanıt gönderebilecek, itibar kazanabilecek, özel mesajlaşmaya erişebilecek ve çok daha fazlasını yapabileceksiniz! Bu hizmetlerimiz ise tamamen ücretsiz ve kurallara uyulduğu sürece sınırsızdır, o zaman ne bekliyorsunuz? Hadi, sizde aramıza katılın!

Linux'ta Disk Yönetimi: Temel Kavramlardan İleri Seviye Uygulamalara Kapsamlı Rehber

Linux'ta Disk Yönetimi: Temel Kavramlardan İleri Seviye Uygulamalara Kapsamlı Rehber

Linux işletim sistemlerinde disk yönetimi, sistem kararlılığı, veri güvenliği ve performans açısından kritik bir rol oynar. Doğru yapılandırılmış bir disk düzeni, hem kişisel kullanıcılar hem de kurumsal sunucular için sorunsuz bir deneyim sunar. Bu rehberde, Linux'ta disk yönetiminin temel kavramlarından başlayarak, ileri seviye uygulamalara kadar geniş bir yelpazede bilgi edinecek, yaygın kullanılan araçları ve en iyi uygulamaları öğreneceksiniz.

1. Temel Disk Kavramları

Linux'ta disk yönetimine başlamadan önce bazı temel kavramları anlamak önemlidir:

  • Fiziksel Diskler (Physical Disks): Bilgisayarınıza takılı olan sabit diskler (HDD) veya katı hal sürücüleri (SSD) gibi depolama aygıtlarıdır. Genellikle `/dev/sda`, `/dev/sdb` gibi isimlerle temsil edilirler.
  • Bölümler (Partitions): Bir fiziksel diskin mantıksal olarak ayrılmış kısımlarıdır. Her bölüm, işletim sistemi için ayrı bir depolama alanı olarak işlev görebilir. Örneğin, `/dev/sda1`, `/dev/sda2`.
  • Dosya Sistemleri (Filesystems): Verilerin bir disk bölümünde nasıl organize edildiğini ve saklandığını tanımlayan yapıdır. Linux'ta yaygın olarak kullanılan dosya sistemleri arasında ext4, XFS, Btrfs ve ZFS bulunur. Swap alanı için de özel bir dosya sistemi vardır.
  • Takma (Mounting): Bir dosya sistemini (yani bir disk bölümünü) işletim sisteminin dizin hiyerarşisine bağlama işlemidir. Bir disk bölümü takılmadığı sürece erişilemez. Genellikle `/mnt` veya `/media` gibi dizinler altına takılırlar.

2. Disk Bölümlendirme: MBR ve GPT

Diskleri kullanmadan önce bölümlendirmeniz gerekir. Günümüzde iki ana bölümlendirme şeması bulunmaktadır:

A. Master Boot Record (MBR):
Eski ve daha sınırlı bir standarttır.
  • Maksimum 2 TB disk boyutunu destekler.
  • En fazla 4 adet birincil (primary) bölüm veya 3 birincil + 1 genişletilmiş (extended) bölüm (içinde mantıksal bölümler barındırabilir) destekler.
  • Çoğu eski sistemle uyumludur.

B. GUID Partition Table (GPT):
Modern ve daha esnek bir standarttır. UEFI tabanlı sistemlerde varsayılan olarak kullanılır.
  • Neredeyse sınırsız disk boyutunu destekler (9.4 ZB'ye kadar).
  • Varsayılan olarak 128 adede kadar bölüm destekler.
  • Her bölüm için benzersiz bir küresel tanımlayıcı (GUID) kullanır.
  • Daha sağlam veri bütünlüğü için bölüm tablosunun bir yedek kopyasını disk sonunda tutar.

3. Yaygın Disk Yönetim Araçları

Linux'ta disk yönetimi için birçok güçlü komut satırı aracı bulunur:

  • fdisk: MBR tabanlı diskler için popüler bir bölümlendirme aracıdır.
    Kod:
    fdisk -l
    Bu komut, sisteminizdeki tüm diskleri ve bölümlerini listeler.
    Kod:
    sudo fdisk /dev/sda
    Bu komut, `/dev/sda` diski üzerinde fdisk etkileşimli modunu başlatır.
  • parted: Hem MBR hem de GPT tabanlı diskler için daha modern ve esnek bir bölümlendirme aracıdır. Büyük disklerle çalışmak için tercih edilir.
    Kod:
    sudo parted /dev/sdb print
    Bu, `/dev/sdb` diskindeki bölümleme şemasını ve bölümleri gösterir.
    Kod:
    sudo parted -a opt /dev/sdc mklabel gpt mkpart primary ext4 0% 100%
    Bu örnek, `/dev/sdc` üzerinde GPT etiketli yeni bir bölüm tablosu oluşturur ve diskin tamamını kaplayan bir ext4 bölümü oluşturur.
  • gdisk: GPT bölümlendirme için tasarlanmış fdisk benzeri bir araçtır.
    Kod:
    sudo gdisk /dev/sdX
  • mkfs (make filesystem): Bir bölüm üzerinde dosya sistemi oluşturmak için kullanılır. Çeşitli dosya sistemleri için alt komutları vardır (örn. `mkfs.ext4`, `mkfs.xfs`).
    Kod:
    sudo mkfs.ext4 /dev/sdb1
    Bu komut, `/dev/sdb1` bölümünü ext4 dosya sistemi ile biçimlendirir.
    Kod:
    sudo mkswap /dev/sdb2
    Bu komut, `/dev/sdb2` bölümünü takas alanı olarak biçimlendirir.
  • mount: Bir dosya sistemini dosya sistemi hiyerarşisine bağlamak için kullanılır.
    Kod:
    sudo mount /dev/sdb1 /mnt/yenidisk
    Bu komut, `/dev/sdb1` bölümünü `/mnt/yenidisk` dizinine bağlar. Dizin yoksa, önceden oluşturulmalıdır (`sudo mkdir /mnt/yenidisk`).
  • umount: Takılı bir dosya sistemini ayırmak için kullanılır.
    Kod:
    sudo umount /mnt/yenidisk
    Önemli Not: Bir dosya sistemi kullanımdaysa (açık dosyalar veya dizinler varsa) `umount` işlemi başarısız olur.
  • df (disk free): Takılı dosya sistemlerinin disk alanı kullanımını gösterir.
    Kod:
    df -h
    Okunabilir formatta disk kullanımını gösterir.
  • du (disk usage): Belirli bir dizin veya dosyanın disk kullanımını gösterir.
    Kod:
    du -sh /home/kullanici/Belgeler
    Belgeler dizininin toplam boyutunu gösterir.
  • lsblk (list block devices): Blok cihazlarını (diskler, bölümler, LVM mantıksal birimleri vb.) ağaç yapısında listeler. Oldukça faydalıdır.
    Kod:
    lsblk -f
    Dosya sistemlerini, UUID'leri ve bağlama noktalarını da gösterir.

4. Diskleri Otomatik Bağlama: /etc/fstab

Sistemin her başlatılışında belirli disk bölümlerinin otomatik olarak takılmasını sağlamak için `/etc/fstab` dosyası kullanılır. Bu dosya, her satırda bir disk bölümü için bağlama noktası, dosya sistemi tipi, bağlama seçenekleri ve diğer parametreleri tanımlar.

Dosya sistemlerini `/etc/fstab`'a eklerken, diskin cihaza göre ismi (`/dev/sdb1` gibi) yerine UUID'sini kullanmak en iyi uygulamadır. Çünkü disk isimleri sistem açılışında değişebilirken, UUID'ler sabittir ve bu da sistemin daha güvenilir çalışmasını sağlar.

UUID'leri bulmak için `blkid` komutunu kullanabilirsiniz:
Kod:
blkid /dev/sdb1
Veya tüm blok cihazlarının UUID'lerini listelemek için:
Kod:
lsblk -f

`/etc/fstab` dosyasında tipik bir giriş şu şekilde görünür:
Kod:
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/veriler ext4 defaults,nofail 0 2
Bu örnekte:
* `UUID=...`: Disk bölümünün benzersiz kimliği.
* `/mnt/veriler`: Bağlama noktası.
* `ext4`: Dosya sistemi tipi.
* `defaults,nofail`: Bağlama seçenekleri. `nofail` seçeneği, eğer disk bulunamazsa sistemin yine de başlatılmasını sağlar (özellikle harici diskler için faydalıdır).
* `0`: Dosya sistemi yedeklemesi için kullanılır (genellikle 0).
* `2`: Dosya sistemi kontrol sırası (öncelik). Kök dosya sistemi (/) 1, diğerleri 2 veya 0'dır.

Dikkat: `/etc/fstab` dosyasında yapılan yanlış bir yapılandırma, sistemin başlatılamamasına neden olabilir. Değişiklik yaptıktan sonra her zaman `sudo mount -a` komutuyla yeni girdileri test edin. Bu komut, fstab'daki tüm girdileri bağlamaya çalışır ve hataları gösterir.

5. Mantıksal Birim Yönetimi (LVM)

LVM, Linux'ta depolama yönetimini daha esnek ve güçlü hale getiren bir soyutlama katmanıdır. Fiziksel disklerin doğrudan yönetilmesi yerine, LVM mantıksal birimler oluşturarak depolamayı dinamik olarak yönetmenizi sağlar.

LVM'in Avantajları:
  • Esneklik: Mantıksal birimleri çevrimiçi olarak (sistemi kapatmadan) yeniden boyutlandırabilirsiniz.
  • Büyüme: Mevcut depolama alanınıza kolayca yeni diskler ekleyerek mantıksal birimleri genişletebilirsiniz.
  • Anlık Görüntü (Snapshot): Bir mantıksal birimin belirli bir anını yakalayabilir ve bu anlık görüntüden geri dönebilirsiniz. Bu, yedekleme veya güvenli test ortamları için idealdir.
  • Disk Birleştirme: Birden fazla fiziksel diski tek bir depolama havuzu (volume group) altında birleştirebilirsiniz.

LVM Bileşenleri:
  • Fiziksel Birim (Physical Volume - PV): LVM tarafından yönetilen bir fiziksel disk veya disk bölümüdür (örn. `/dev/sdb1`).
    Kod:
    sudo pvcreate /dev/sdb1
  • Birim Grubu (Volume Group - VG): Bir veya daha fazla fiziksel birimin bir araya gelmesiyle oluşan bir depolama havuzudur. Mantıksal birimler bu havuzdan oluşturulur.
    Kod:
    sudo vgcreate benim_vg /dev/sdb1 /dev/sdc1
    Bu örnek, `benim_vg` adında, `/dev/sdb1` ve `/dev/sdc1` fiziksel birimlerinden oluşan bir birim grubu oluşturur.
  • Mantıksal Birim (Logical Volume - LV): Bir birim grubundan oluşturulan ve tıpkı bir disk bölümü gibi kullanılabilen bir birimdir (örn. `/dev/benim_vg/veriler_lv`).
    Kod:
    sudo lvcreate -L 10G -n veriler_lv benim_vg
    Bu, `benim_vg` birim grubundan 10 GB boyutunda `veriler_lv` adında bir mantıksal birim oluşturur.

LVM ile Örnek İş Akışı:
1. Diskleri hazırlayın (bölüm oluşturmaya gerek yok, doğrudan diskin tamamını PV yapabilirsiniz).
2.
Kod:
sudo pvcreate /dev/sdd1 /dev/sde1
(Fiziksel Birimleri oluştur)
3.
Kod:
sudo vgcreate server_vg /dev/sdd1 /dev/sde1
(Birim Grubunu oluştur)
4.
Kod:
sudo lvcreate -L 500G -n ana_depo server_vg
(Mantıksal Birim oluştur)
5.
Kod:
sudo mkfs.ext4 /dev/server_vg/ana_depo
(Dosya sistemini oluştur)
6.
Kod:
sudo mkdir /mnt/data
(Bağlama noktası oluştur)
7.
Kod:
sudo mount /dev/server_vg/ana_depo /mnt/data
(Mantıksal birimi bağla)
8. `/etc/fstab`'a eklemeyi unutmayın.

Daha fazla bilgi için LVM Wikipedia sayfasını ziyaret edebilirsiniz.

6. RAID (Redundant Array of Independent Disks)

RAID, birden fazla fiziksel diski bir araya getirerek performansı artırma, veri yedekliliği sağlama veya her ikisini birden başarma yöntemidir. Linux'ta yazılımsal RAID (
Kod:
mdadm
aracı ile) yaygın olarak kullanılır.

  • RAID 0 (Striping): Verileri birden fazla diske dağıtarak performansı artırır. Yedeklilik sağlamaz, bir disk arızası tüm verilerin kaybına yol açar.
  • RAID 1 (Mirroring): Verileri en az iki diske kopyalayarak yüksek yedeklilik sağlar. Performans artışı düşüktür, disk alanının yarısı boşa gider.
  • RAID 5 (Striping with Parity): Verileri ve hata düzeltme (parity) bilgilerini disklere dağıtır. Bir disk arızasına dayanıklıdır ve iyi bir performans/yedeklilik dengesi sunar (en az 3 disk gerekir).
  • RAID 10 (Nested RAID 1+0): RAID 1 ve RAID 0'ın birleşimidir. Hem yüksek performans hem de yüksek yedeklilik sağlar (en az 4 disk gerekir).
Kod:
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdd1 /dev/sde1
Bu komut, `/dev/sdd1` ve `/dev/sde1` bölümlerinden oluşan bir RAID 1 dizisi oluşturur.

7. Disk Sağlığı ve Bakımı

Diskler, mekanik veya elektronik arızalar nedeniyle bozulabilir. Disk sağlığını izlemek, olası veri kaybını önlemek için hayati öneme sahiptir.

  • S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology): Modern disklerin çoğu, kendi kendine izleme, analiz ve raporlama teknolojisine sahiptir. Bu teknoloji, diskin sağlık durumunu gösteren çeşitli parametreleri kaydeder.
    Kod:
    sudo smartctl -a /dev/sda
    Bu komut, `/dev/sda` diskinin tüm S.M.A.R.T. bilgilerini gösterir. `smartmontools` paketini yüklemeniz gerekebilir.
  • fsck (file system check): Bir dosya sistemindeki hataları kontrol etmek ve onarmak için kullanılır. Genellikle sistem başlatılırken otomatik olarak çalışır, ancak manuel olarak da çalıştırılabilir.
    Kod:
    sudo fsck -f /dev/sdb1
    Uyarı: `fsck` komutunu çalıştırmadan önce ilgili dosya sisteminin takılı olmadığından emin olun. Takılı bir dosya sistemi üzerinde çalıştırmak veri kaybına yol açabilir.

8. Önemli İpuçları ve En İyi Uygulamalar

  • Yedekleme: Disk yönetimi ne kadar iyi olursa olsun, donanım arızaları veya insan hataları her zaman mümkündür. Verilerinizi düzenli olarak yedeklemek en önemli kuraldır.
  • Dikkatli Olun: Disk yönetimi komutları yıkıcı olabilir. Yanlış bir komut, tüm verilerinizi silebilir. Her zaman ne yaptığınızı bildiğinizden ve doğru diski/bölümü hedeflediğinizden emin olun.
  • Dokümantasyon Okuyun: Herhangi bir aracı veya komutu kullanmadan önce ilgili man sayfalarını (`man fdisk`) veya çevrimiçi dokümantasyonu okuyun.
  • Test Ortamı Kullanın: Özellikle LVM veya RAID gibi karmaşık yapılandırmaları öğrenirken, sanal makineler üzerinde test ortamları kurmak, gerçek sisteminizde hata yapma riskini azaltır.

Sonuç

Linux'ta disk yönetimi, geniş bir bilgi ve pratik beceri gerektiren bir alandır. Temel bölümlendirme ve dosya sistemi oluşturma işlemlerinden, LVM ve yazılımsal RAID gibi ileri düzey konulara kadar birçok aracı ve tekniği kapsar. Bu rehberde öğrendiğiniz bilgilerle, Linux sistemlerinizdeki depolama alanını daha etkin ve güvenli bir şekilde yönetebilir, olası sorunlara karşı hazırlıklı olabilirsiniz. Unutmayın, pratik yapmak ve sürekli öğrenmek bu alandaki ustalığın anahtarıdır.
 
shape1
shape2
shape3
shape4
shape5
shape6
Üst

Bu web sitenin performansı Hazal Host tarafından sağlanmaktadır.

YazilimForum.com.tr internet sitesi, 5651 sayılı Kanun’un 2. maddesinin 1. fıkrasının (m) bendi ve aynı Kanun’un 5. maddesi kapsamında Yer Sağlayıcı konumundadır. Sitede yer alan içerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır.

YazilimForum.com.tr, kullanıcılar tarafından paylaşılan içeriklerin doğruluğunu, güncelliğini veya hukuka uygunluğunu garanti etmez ve içeriklerin kontrolü veya araştırılması ile yükümlü değildir. Kullanıcılar, paylaştıkları içeriklerden tamamen kendileri sorumludur.

Hukuka aykırı içerikleri fark ettiğinizde lütfen bize bildirin: lydexcoding@gmail.com

Sitemiz, kullanıcıların paylaştığı içerik ve bilgileri 6698 sayılı KVKK kapsamında işlemektedir. Kullanıcılar, kişisel verileriyle ilgili haklarını KVKK Politikası sayfasından inceleyebilir.

Sitede yer alan reklamlar veya üçüncü taraf bağlantılar için YazilimForum.com.tr herhangi bir sorumluluk kabul etmez.

Sitemizi kullanarak Forum Kuralları’nı kabul etmiş sayılırsınız.

DMCA.com Protection Status Copyrighted.com Registered & Protected