HİZMETLERİNİZ İÇİNBİLGİ BANKASI

Hizmetlerinizi hızlı ve doğru kullanabilmeniz için gerekli dökümanlar ile sorunlarınızı çözümleyebilir ve bilgi sahibi olabilirsiniz.

Linux Sistemlerde Swap Alanı Eklemek

Linux sistemlerde masaüstü veya sunucu performansını arttırmak için sisteminize swap (takas) alanı ekleyebilirsiniz. İşlenecek veriler RAM’e sığmadığı zaman swap alanı RAM gibi kullanılır ve böylece işlemlerin devam etmesi sağlanır. Fakat sabit disklerin veri okuma/yazma hızları RAM’lerden çok daha düşük olduğu için takas alanının kullanılması işlenecek olan bu verilerin daha yavaş işlenmesine neden olacaktır. 

İşletim sistemi kurulumu aşamasında swap alanı oluşturabileceğiniz gibi swap alanı bulunmayan bir işletim sistemine de sonradan swap alanı ekleyebilirsiniz. Bu makalede de swap alanı bulunmayan bir işletim sistemine daha sonradan nasıl swap alanı eklenebileceği anlatılacaktır. Mevcut sisteme daha sonradan eklenecek swap alanını sistem diskiniz üzerinde yeni bir partition oluşturmadan mevcut partiton üzerinde oluşturabilirsiniz.

NOT: Bu makalede anlatılanlar Centos 6.5 x64 sürümü üzerinde gerçekleştirilmiştir. Bu işlem diğer linux türevi işletim sistemlerinde de yanı şekilde yapılabilir.

1-Ön Hazırlık

-Ne kadarlık bir swap alanına ihtiyacınız olacağına karar veriniz.

-Ayırmak istediğiniz swap alanı miktarını MB cinsinden yazarak 1024 ile çarpınız.

Örneğin; 2GB’lık swap alanı oluşturmak istiyorsak 2048*1024=2097152

-Root kullanıcısı ile erişim hakkı. Bu işlem için çalıştırılacak tüm komutlar root yetkisinde çalıştırılmalıdır.

2-Swap Alanı Eklemek

-Swap alanı eklemeden önce # free -m komutu ile sistemin mevcut RAM ve Swap kullanım miktarlarını kontrol ediniz. Aşağıdaki # free -m komut çıktısında da göreceğiniz üzere sistemde herhangi bir swap alanı bulunmamaktadır.

RAM ve Swap alanı raporlar

# free -m | RAM ve Swap alanı kullanım bilgileri

-Swap alanı eklemek için,

# dd if=/dev/zero of=/swapfile1 bs=1024 count=2097152

komutunu çalıştırınız. Bu komut ile sisteme 2GB swap alanı eklenecektir. Count değerinin neden 2097152 değerini aldığı ise “Ön Hazırlık” başlığı altında belirtilmiştir.

Swap alanı oluşturma

Swap alanı için dosya oluşturma

-Oluşturulan alanın swap alanı olarak kullanılması için,

# mkswap /swapfile1

komutunu çalıştırınız.

Swap alanı oluşturma

Swap alanı oluşturma

– /swapfile1 dosya erişim izinlerini, kullanıcı ve grup bilgilerini düzenlemek için aşağıdaki 2 komutu çalıştınız. Swap alanına erişim izni sadece root kullanıcı tarafından olması gerekir. Farklı kullanıcıların erişimi sisteminiz için güvenlik açığına sebep olabilir.

# chown root:root /swapfile1
# chmod 0600 /swapfile1

-Oluşturduğunuz swap alanını aktif etmek için,

# swapon /swapfile1

komutunu çalıştırınız.

– # free -m komutu ile tekrardan RAM ve Swap alanı kullanım miktarlarınızı kontrol ediniz. İşlemleri sorunsuz tamamladıysanız swap alanı olarak eklediğiniz 2GB ‘lık alanı görebilirsiniz.

#free -m |RAM ve Swap alanı kullanım bilgileri

# free -m | RAM ve Swap alanı kullanım bilgileri

– Ayrıca # swapon -s komutu ile sisteminizde bulunan aktif swap alanlarını görebilirsiniz.

Sistemdeki aktif swap alanlarını görmek

Sistemdeki aktif swap alanlarını görmek

-Son olarak sistem her açıldığında swap alanının otomatik olarak sisteme dahil edilmesi için fstab dosyasının düzenlenmesi gerekmektedir. /etc/fstab dosyasını herhangi bir metin editörü (vi, nano) ile açarak aşağıdaki satırı dosyasının en sonuna ekleyiniz.

/swapfile1 swap swap defaults 0 0
fstab dosyasının düzenlenmesi

fstab dosyasının düzenlenmesi

İşlemler tamamlandıktan sonra RAM kullanımınızın yüksek olduğu zamanlarda eklediğiniz swap alanının devreye girdiğini kullanım miktarlarından görebilirsiniz.

3-Swap Alanı Kullanımını Ayarlamak

Sistemde bulunan swap alanı genellikle RAM kullanım seviyeniz %100 değerlerine ulaştığında veya bu değerlere yaklaştığında kullanılacağı düşünülür. Fakat linux çekirdeği düşük donanıma sahip sistemlerde çalışabilecek şekilde dizayn edildiği için swap kullanımında belirlenen default değerler RAM kullanım miktarınızın %100 ‘e yakın değerlere ulaşmasını beklemeyecektir. Default olarak belirlenen bu değer %60 ‘tır. Bu değer %0 olduğunda swap alanı hiç kullanılmayacak %100 olarak düzenlendiğinde ise sistem swap alanını kullanmayı daha çok isteyecektir. Bu değerin tutulduğu dosya ise /proc/sys/vm/swappiness dosyasıdır. Bu dosya içerisindeki değeri dosyayı herhangi bir metin editörü ile açarak istediğiniz şekilde düzenleyebilirsiniz.