Beklemeye Alma (Hibernation) ve Uyku (Suspend)


Kullandığımız sistemde açık olan uygulamalarımızı kaybetmeden sistemi duraklatmak için iki seçenek bulunur. Bekleme ve askıya alma nasıl çalışır, neden çalışmaz, detaylarına bakalım.


Kısaca nedir?

Beklemeye alma, bilgisayarda açık olan işlerinizi hiç kaybetmeden bilgisayarı tamamen kapatabilmenizi sağlar. Bilgisayarın elektriğe ihtiyacı yoktur ancak bu duruma geçmek ve geri dönmek ikişer dakika kadar sürebilir.

Uyku veya askıya alma, bilgisayarda açık olan işlerinizi hiç kaybetmeden bilgisayarı düşük elektrik tüketen bir halde tutar. Elektriğe ihtiyaç vardır. Uykuya almak ve uyandırmak en fazla beşer saniye sürer.

Neden Gereklidir?

Olmazsa olmaz şeyler değildir.

Beklemeye alma, bilgisayarda o an açık olan bütün işlerinizi, bir süre sonra tekrar açıp tekrar ayarlamakla uğraşmaktan kurtarır.

Uyku ise bilgisayar az elektrik harcayarak beklesin diye kullanılır.

Beklemeye Alma Nasıl Çalışır?

Unix ve benzeri sistemlerde beklemeye alma, başka yöntemler de mevcut olmasına rağmen yaygın olarak, takas alanı olarak ayarlanmış ve etkin bir şekilde kullanılan bir disk bölümü sayesinde kullanılabilir.

Çoğu dağıtım, sisteminizi kurarken diskte bir bölüm açıp takas alanı kurmanızı önerir. Eğer bu takas alanını, RAM boyutunuzdan birazcık daha büyük ayarlarsanız beklemeye alma seçeneğini, sisteminiz size bir yol göstermese dahi, kolaylıkla etkinleştirebilirsiniz.

Beklemeye aldığınızda o an RAM'de ne varsa hepsini sabit diske yazar, sistemi tekrar açtığınızda sabit diskte ne varsa hepsini tekrar RAM'e yazar. Olay bundan ibaret.

Öncelikle sisteminizde etkin olarak kullandığınız bir takas alanı var mı ve bu alan RAM boyutunuzdan büyük mü ona bakmanız gerekir. Bende:


lsblk komutunun döndüğü cevap bu. sda4'ün boyutu RAM miktarım olan 3 GB'den büyük ve swap olarak bağlı. Yani ben beklemeye alma seçeneğini kullanabilirim. Tek yapmam gereken sistemi beklemeye almak. Açık olan uygulamalara sorunsuz geri dönebilirim.

Çalışmıyorsa ne yapmalı?

Eğer takas alanı RAM'den küçük ve/veya mevcut değilse çaresiz yeniden bölümleme yapmanız gerekir linux dunyam. Var olan bölümleri silip RAM miktarınızdan birazcık daha büyük yeni bir bölüm ekleyip türüne takas(swap) demelisiniz.

nano /etc/fstab

dosyasına bu bölümü takas alanı olarak kaydettiğinizde sistemi yeniden başlatabilirsiniz. İsterseniz

swapon /dev/sdaX

X yerine o bölümün numarasını yazarak hemen bağlayabilirsiniz. Benim fstab'ım bu şekilde:

#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
UUID=2f62e84f-f679-44fa-a299-d4a954f86813 swap swap defaults 0 0
UUID=84a94b92-b24d-4784-8809-a15b53413118 / ext4 defaults 0 1

Disk bölümünün uuid'sini

blkid /dev/sdaX

diyerek öğrenebilirsiniz. Sisteminizin size güç ayarlarında sunabilmesi için:

nano /sys/power/disk

dosyasında suspend seçeneği olmalı ve

nano /sys/power/state

freeze mem disk

yanıtlarını içermeli. Bilgisayarın başlangıcında da size önceki durumdan devam etme seçeneğini sunabilmesi için

nano /etc/default/grub

dosyasında

GRUB_CMDLINE_LINUX_DEFAULT="resume=/dev/sda4"

satırını düzenlemelisiniz. Şimdi

sudo grub-mkconfig -o /boot/grub/grub.cfg

diyerek grub ayarlarını oluşturun ve

grub-update

ile açılışı düzenleyin. Tamamdır. Eğer ki güç seçenekleri veya sistem menünüzde bir seçenek yoksa pm-utils paketi ile

echo '%users ALL = NOPASSWD: /usr/sbin/pm-hibernate' >> /etc/sudoers

dedikten sonra

sudo pm-hibernate

komutunu çalıştıran bir başlatıcı oluşturabilirsiniz.

Askıya Alma Nasıl Çalışır?

Bilgisayarı, sadece RAM ve işlemcinin bir kısmı açık kalacak şekilde oldukça az enerji ile tutar. Bu sayede RAM'deki veriler silinmeden durur. Elektrik kesilirse bütün uygulamalarınız kaybolacaktır.

Çalışmıyorsa Ne Yapmalı?

Uykuya almanın ilk koşulu, bilgisayarınızın bunu desteklemesidir. Büyük ihtimal destekliyordur.

Aynı şekilde sisteminizin size güç ayarlarında sunabilmesi için:

nano /sys/power/disk

dosyasında suspend seçeneği olmalı ve

nano /sys/power/state

freeze mem disk

yanıtlarını içermeli. Hala uykuya alamıyorsanız sorun büyük ihtimal kullandığınız görüntü sürücüsünde veya kernel serisindedir. Kernelinizi LTS bir seriye geçirip farklı bir görüntü sürücüsü kurmayı deneyin.

Güç seçenekleri veya sistem menünüzde bir seçenek yoksa pm-utils paketi ile

echo '%users ALL = NOPASSWD: /usr/sbin/pm-suspend' >> /etc/sudoers

dedikten sonra

sudo pm-suspend

komutunu çalıştıran bir başlatıcı oluşturabilirsiniz. Kolay gelsin.

Hiç yorum yok :

Yorum Gönder