Takas bölümü olmadan Linux'u hazırda bekletebilir miyim?


30

Bilgisayarımda bir takas bölümü kurmamıştım, çünkü a) bol miktarda RAM (8 GB) ve b) Küçük parçalara bölmek istemediğim büyük sabit disklerim var, bu yüzden en küçük bölümlerim 50 GiB, ve ben zaten işletim sistemlerinde kullanıyorum.

Şimdi, kış uykusuna yatmak için, Linux'um (Ubuntu Jaunty) takas istedi. Yedek 100 GB'lık bir bölümüm vardı, bu yüzden bunu takas olarak ayarladım, ancak bundan memnun değilim. Sadece kış uykusu için kullanılır (her zaman bol miktarda RAM ücretsizdir ve sistem hiçbir zaman takas yapmaz) ve takas için de biraz büyüktür. Ayrıca, sonunda başka bir şey için buna ihtiyacım olacak.

Ubuntu Jaunty'de bir takas bölümü olmadan nasıl hazırda bekletebilirim (diski askıya alabilirim)?


3
İşte takas olmadan hibernate hakkında debian resmi bir rehber: wiki.debian.org/Hibernation/Hibernate_Without_Swap_Partition
Francesco

Çok miktarda RAM'iniz olsa bile, takas işlemi, kullanılmayan (ve dolayısıyla değiştirilen) uygulama kodunun verileri önbelleğe almak için kullanıldığında performansı artırmada size yardımcı olabilir.
Michael Schmid,

Yanıtlar:


23

Denenmemiş bir fikir: neden s2diskbir takas dosyasını yöneten (takas bölümünün aksine) diski askıya alma işleci için bir sarmalayıcı ya da herhangi bir yardımcı program oluşturmuyorsunuz ?

  • Takas dosyasını oluşturun: dd if=/dev/zero of=/swapfile bs=1024 count=8388608(8GB)
  • Takas dosyasını ayarlayın: mkswap /swapfile
  • Yalnızca askıya alma işlemini ayarlamanız gerektiğinde etkinleştirebilirsiniz: swapon /swapfile
  • Devam ettirdiğinizde devre dışı bırakabilirsiniz: swapoff /swapfile

Takas dosyalarından devam etmek mümkündür ve kernel.org adresinde belgelenmiştir.


Bir takas dosyası da düşündüm, ancak başlangıçta çekirdeğe nasıl geçireceğimi bilmiyorum. Blok cihazında yaptığım gibi "resume = / path / to / file" komutunu yapabilir miyim?
Hanno Fietz

Takas dosyalarından devam etme konusundaki belgelere bağlantı içeren güncellememe bakın.
Robert Munteanu,

8
Plz, komutu ekleyin chmod 0600 /swapfile. Dünyada okunabilir bir takas dosyası çok büyük bir yerel güvenlik açığıdır.
user4035

2
Bunun eski olduğunu biliyorum, ancak 'dd' yerine 'truncate' kullanırım. Diske bir şey yazmaya gerek yok.
Guido

4
Aslında, diskin içine bir şeyler dizisi yazmanız gerekir, bu da kesilen sonuçları içeren bir dosya oluşturur swapon: /swapfile: skipping - it appears to have holes..
Hlovdal

9

Muhtemelen burada iki yolun var.

  1. Takas bölümü yerine takas dosyası düşünün
    • Küçük (bölmelerin boyutlarına göre, ancak bellek için yeterince büyük) kullanarak takas bölümü için USB bellek

Ne yaparsan yap, bence özgeçmişi swapoffve swaponsonrası faydalı olur.
Ve, gerçekten değiş tokuşa ihtiyacınız olmadığından, swapoffdevam ettikten sonra bırakabilirsiniz .

Güncelleme: Yorum yavaş USB hazırda bekletme hakkında iyi bir noktaya değindi.
Böylece, numaralandırılmış sırayı kontrol edin - ilk şema takas dosyalarını kullanarak hazırda bekletme için notlara sahiptir.


Meraktan
dolayı, Ubuntu gibi linux'lar bu kadar hızlı bir şekilde kapanıp başlayabildiğinde neden kış uykusu yapmak istediğinizi bilmek istiyorum.
Tahmin ediyorum,

  • 8GB ram'ınızı bazı uygulamalarla yükler ve orada bırakırsınız
  • ya da LAN-Uyandırma

Ama, bu gerçekten mi? ya da hazırda bekletmek için başka bir nedeniniz var mı?

Bir Ubuntu önyükleme ve her zaman kapatma için bir USB kullanıyorum .


2
USB flaş çubuğu askıya almak çok yavaş olacaktır .
Tadeusz A. Kadłubowski

6
İş sırasında bir sürü şey açma eğilimindeyim ve ertesi gün olduğu gibi hepsini geri almayı seviyorum. Ubuntu'yu başlatmak çok hızlı (aslında, bana göre devam etmekten daha hızlı görünüyor), ancak Eclipse, Firefox vb. Olmayabilir ve diğer uygulamalar kapanırken mevcut durumlarını bile kaydedemeyebilir.
Hanno Fietz

2
@Hanno, Firefox ayrıca oturumlarınızı kaydırma konumunuza kadar kaydetmenize olanak tanır. Yani, Kaydet ve Oldukça harika. Eclipse'in neler yapabileceğinden emin değilim.
nik

3
Firefox, pencerelerinin her birinde hangi çalışma alanını bulunduğunu hatırlamıyor, bu yüzden küçük PITA'ların hepsinin yüklenmesini bekledikten sonra tekrar yerine yerleştirmeleri gerekiyor. Terminal pencereleri gibi şeylerin durumunu kurtarmanın da bir yolu yok.
intuited

Tam 8GB belleğin hazırda bekletilmesi, bu USB flaş bellekle bir dakikadan daha az zaman alır .
intuited

4

Evet, ama çaba harcamadan değil. Linux'ta hazırda bekletme (askıya alma) için 2 farklı yol vardır:

  1. çekirdeğe dahil edilen swswap
  2. smokin (eskiden askıya alma2 ), ki değil.

Tuxonice, çekirdeğe bir düzeltme eki olarak sunulur ve askıya alma görüntüsünü sıradan bir dosyaya yazmanıza izin verir.

Gönderen Vikipedi :

TuxOnIce (formerly known as Suspend2) is an implementation of the suspend-to-disk (or hibernate) feature which is available as patches for the 2.6 Linux kernel. It was formerly known as 'swsusp'. During the 2.5 kernel era, Pavel Machek forked the original out-of-tree version of swsusp (then at approximately beta 10) and got it merged into the vanilla kernel, while development continued in the swsusp/Suspend2/TuxOnIce line. TuxOnIce includes support for SMP, highmem and preemption. Its major advantages over swsusp are:

    * It has an extensible architecture that allows for arbitrary transformations on the image and arbitrary backends for writing the image;
    * It prepares the image and allocates storage prior to doing any storage and accounts for memory and storage usage very carefully, thereby becoming more reliable;
    * Its current modules for writing the image have been designed for speed, combining asynchronous I/O, multithreading and readahead with LZF compression in its default configuration to read and write the image as fast as hardware is able;
    * It has an active community supporting it via a wiki, mailing lists and irc channel (see the TuxOnIce website);
    * It is more flexible and configurable (via a /sys/power/tuxonice interface);
    * Whereas the current swsusp (and uswsusp) implementations support writing the image to one swap device only, TuxOnIce supports multiple devices in any combination of swap files and swap partitions. It can also write the image to an ordinary file, thereby avoiding potential race issues in freeing memory when preparing to suspend.
    * It supports encryption by various methods;
    * It can store a full image of memory (resulting in a more responsive system post-resume), while uswsusp and swsusp write at most half the amount of RAM.

Varsayılan çekirdeğe dahil edilmediğinden, maalesef Jaunty için kullanılabilecek çekirdek yamaları alıp çekirdeği kendiniz derlemelisiniz.

Burada bazı genişletilmiş talimatlar var , ancak kendi çekirdeğinizi çekerken eski bir el değilseniz, bu yola girmeden önce Robert'in önerisini denemek isteyebilirsiniz.


2
Pek çok çekirdeği elle tuttum (birkaç yıldır Gentoo meraklısı oldum), ama Ubuntu'ya geçmemin bir nedeni vardı ...;)
Hanno Fietz

3

Joel ve Jeff'in podcast'te tartıştığı gibi, takasın kapatılması genellikle iyi bir fikir değildir - buna değse bile (ki olmasa da) - disk alanı bugünlerde çok ucuz. şey. On sentten daha az bir iş bulabilirsin (Euro cent, yani)!

alıntılamak:

Atwood: Sanırım bir noktada her inek bu düşünce sürecinden geçiyor: Tonlarca ton bellek aldım, belki sayfa dosyamı açabilirim. Aslında bu konuda bir blog yazısı var. ... Yumruk çizgisi: Asla değmez.

Konuşmanın daha fazlası için podcast'i dinleyin (yaklaşık 59 dakikada başlıyor) veya podcast sayfasındaki bağlantılı sunucu hatası sorusunu okuyun (soru 23621). Windows sayfa dosyası hakkında konuşurlar, ancak argüman UNIX için de aynı şekilde geçerlidir (belleği farklı bir şekilde yönetebilmelerine rağmen).


1
Aslında, takas etmeyi umursamıyorum, aslında, şu anki kurulumum sadece bu yedek 100 gig bölümünü takas olarak kullanıyor. Aklımdaki şey, yine de, takas bölümünün olması . 100 gig takas tamamen saçmalık ve sadece takas için küçük bir bölüm almak istemiyorum. Swapfile benim için harika, Robert ve nik'in cevapları sayesinde, artık onları kış uykusu için nasıl kullanacağımı da biliyorum, o yüzden bunu kullanacağım.
Hanno Fietz,

4
"Küçük" bir bölüme sahip olmanın sorunu nedir? Btw. 8GB'lık bir bölümü çok küçük saymazdım - ondan daha küçük bir partide yaşayan linux kurulumlarını kullandım. Ve ben kullandım ilk bilgisayar bir 20MB sabit disk vardı ..
0x89

1
Aslında, Linux belleği tamamen Windows'a tamamen farklı şekilde yönetir. Eski dizüstü bilgisayarımda bile, 2GB'lık ram
takaslı

@vava: Haklı olabilirsin, cevabımı biraz uyarladım. Ancak takasınıza
200 MB'lık bir yük attığınızı görmek
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.