İçeriğe geç

Linux’ta Swap Alanı Nasıl Oluşturulur?

Kategori: Linux Sistemleri

Sunucularda veya masaüstü Linux sistemlerinde bellek yönetimi kritik öneme sahiptir. RAM yetersiz kaldığında sistemin çökmeden çalışmaya devam edebilmesi için swap alanı devreye girer.

Swap Alanı Nedir?

Swap alanı, RAM dolduğunda sistemin disk üzerinde oluşturduğu geçici bir bellek alanıdır. Bu alan sayesinde, aktif olmayan veriler RAM’den diske taşınır. Swap alanı iki şekilde oluşturulabilir:

Swap, özellikle düşük RAM’e sahip sistemlerde hayati önem taşır. Ancak çok fazla kullanımı disk performansını düşürebileceğinden dikkatli yapılandırılmalıdır.

Mevcut Swap Durumu Kontrolü

Sistemde aktif bir swap alanı olup olmadığını görmek için aşağıdaki komutlardan birini kullanabiliriz. Eğer swapon komutu herhangi bir sonuç döndürmüyorsa, sistemde swap etkin değil demektir.

swapon --show
free -h

Swap Dosyası Nasıl Oluşturulur?

Swap dosyası, fiziksel diskiniz üzerinde oluşturabileceğiniz en pratik yöntemdir.

Dosya Oluşturma

2 GB’lık bir swap alanı oluşturmak için.

sudo fallocate -l 2G /swapfile

Eğer fallocate desteklenmiyorsa alternatif olarak.

sudo dd if=/dev/zero of=/swapfile bs=1M count=1024

İzinleri Düzenleme

Swap dosyasına yalnızca root erişebilmelidir.

sudo chmod 600 /swapfile

Eğe komut hata veriyorsa ve veri göstermiyorsa aşağıdaki komutu deneyelim.

ls / | grep swapfile

Swap dosyası oluştururken dosya izinleri, sahiplik ve boyut gibi ayrıntılara dikkat etmek gerekir. Dosyalar üzerinde işlem yapmaya alışkın değilsek, Linux’ta dosyaları sıkıştırma ve arşivleme için kullanılan tar komutu da benzer mantıkla çalışır.

Bu konuda “tar Komutu Kullanarak Dosya Sıkıştırma” rehberine göz atabilirsiniz.

Dosyayı Swap’a Dönüştürme

Bu aşamada oluşturduğun takas dosyasını, sistemin swap alanı olarak tanıyabilmesi için biçimlendirmen gerekir.

sudo mkswap /swapfile

Swap’ı Etkinleştirme

Bu komut, biraz önce oluşturduğun /swapfile dosyasını aktif hale getirir.
Yani sistem artık bu dosyayı RAM yetersiz kaldığında ek bellek alanı olarak kullanabilir.

———–> sudo swapon /swapfile

Bu komut aktif olan tüm takas alanlarını listeler.
Yani sistem şu anda hangi swap dosyalarını veya disk bölümlerini kullanıyor, bunu gösterir.

————>swapon --show

Swap’ı Kalıcı Hale Getirme

Linux’ta elle oluşturduğun takas dosyası, yeniden başlatma sonrası devre dışı kalır.
Çünkü sistem, o dosyayı otomatik olarak etkinleştirmeyi bilmez. Bu bölüm, oluşturduğun swap (takas) alanının kalıcı olmasını sağlamakla ilgilidir.

Bu nedenle, sen belirtmedikçe her reboot’tan sonra swapon /swapfile komutunu tekrar girmen gerekir. Kalıcı hale getirmek için /etc/fstab dosyasına ekleme yapmanız gerekir:

sudo nano /etc/fstab

Ayrıca dosyanın sonuna aşağıdaki kodu yazdığımızda /swapfile otomatik olarak swap alanı olur.

/swapfile swap swap defaults 0 0

Swap’ı Devre Dışı Bırakma veya Silme

Aşağıdaki komut, swap dosyasını anında devre dışı bırakır, ama dosyayı silmez.
Sistemi yeniden başlattığında veya tekrar swapon komutunu çalıştırdığında swap yeniden aktif olabilir.

sudo swapoff /swapfile

Swap alanını kaldırdıktan sonra diskin bütünlüğünü kontrol etmek iyi bir pratiktir. Özellikle dosya sisteminde hatalar oluştuysa, fsck komutu ile disk denetimi yapmak sistemin kararlılığını korur.

Bu konuda daha fazla bilgi için ilgili yazımızı inceleyin.fsck Komutu ile Disk Kontrolü ve Onarım

Kalıcı olarak kaldırma

/etc/fstab dosyasını açıp şu satırı silelim ya da # ile kapatalım.

/swapfile swap swap defaults 0 0
rm /swapfile

Sık Sorulan Sorular

Swap kullanımı neden artar ve nasıl analiz edilir?

Swap kullanımının artması genellikle RAM yetersizliği, yüksek I/O bekleme süresi veya bellek sızıntısından kaynaklanır.
vmstat, htop veya smem araçlarıyla hangi süreçlerin swap kullandığı analiz edilebilir. Özellikle smem -rs swap çıktısı, en çok swap tüketen işlemleri sıralar.

Swap alanı dolduğunda sistem neden donabilir?

Swap tamamen dolduğunda ve RAM de tükenmişse, sistem OOM (Out of Memory) durumuna girer. Bu durumda kernel, bellek boşaltmak için süreçleri sonlandırabilir. Bu sorunu önlemek için yeterli swap alanı tanımlanmalı ve vm.swappiness değeri optimize edilmelidir.

Swap’ı RAM gibi kullanmak için zram kurulumu nasıl yapılır?

ZRAM, RAM içinde sıkıştırılmış bir swap alanı oluşturur.

sudo apt install zram-tools
sudo systemctl enable --now zramswap.service

Bu yöntem SSD ömrünü korurken swap performansını ciddi ölçüde artırır.

Swap performansını artırmak için hangi dosya sistemi daha uygundur?

Ext4 dosya sistemi swap için daha kararlı ve güvenilirdir. Btrfs üzerinde swap dosyası kullanılması önerilmez çünkü Btrfs, swap dosyalarını deliklendirerek performans sorunlarına yol açabilir.

İlk Yorumu Siz Yapın

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir