Bir Linux bilgisayara takas alanı ekleyin veya zaten mevcut olan takas alanını bölümlerle uğraşmadan artırın. Takas alanınızı uyarlamanın kolay yolunu size gösteriyoruz.
Dosyaları Değiştirme ve Değiştirme Bölümleri
Mevcut bilgisayarınızı artırmak veya Linux bilgisayarınıza yeni takas alanı eklemek isteyebileceğiniz birkaç senaryo vardır.
- Belki de takas alanınız sıklıkla maksimumda veya maksimuma yakındır.
- Yükleme işlemi sırasında yanlış seçeneği tıklamak ve istemeden sisteminize takas eklemeyi reddetmek kolaydır.
- Belki daha önce rastgele bir erişim belleğine (RAM) sahip olduğunuza karar verdiniz, herhangi bir değişime ihtiyacınız yoktu ve fikrinizi değiştirdiniz.
- Bazen, hiçbir zaman bulamayacağınız nedenlerle, takası olmayan bir sistemin yönetimini devralırsınız.
Tüm bunların basit çözümü bilgisayarınıza bir takas dosyası eklemektir. Bu, takas alanı olarak kullanılmak üzere önceden ayrılmış ve ayrılmış özel bir dosyadır. Bir takas dosyası, ister takas dosyası ister takas bölümü olsun, varolan herhangi bir takas ile birlikte çalışır.
Bir kerede, takas bölümüne kıyasla takas dosyası kullanmak için bir performans isabeti vardı. Artık mekanik (dönen) sabit disklerin performansındaki iyileştirmeler ve Linux işletim sistemindeki takas işlevlerinde daha fazla verimlilik ile durum böyle değil. Aslında, bazı Linux dağıtımları artık varsayılan olarak takas bölümleri yerine takas dosyaları oluşturuyor.
Değiştirme, yalnızca belleği azaldığında RAM'i boşaltmanın bir yolu olarak kullanılmaz. İyi işleyen bir sistemin önemli bir parçasıdır. Takas olmadan, aklı başında bellek yönetimi, çekirdeğin başarılması için çok zor hale gelir. Biraz takas alanı eklemenin kolay yoluna bakalım.
Dalış Yapmadan Önce: Btrfs ve SSD'ler
Hızlı tartışmak istediğimiz iki nokta var.
Btrfs dosya sistemi takas dosyaları hakkında bazı uyarılar içerir. Bir zamanlar, Btrfs'nin bir şekilde işlemek ve diğerinde çalışması gereken dosyaları takas etmek isteyen Btrfs'nin kopyala yazma özelliği arasında bir çakışma vardı. Dosyaları takas eden bazı işlevler uygulanmadı ve takas dosyaları içindeki blok numaralandırmayla ilgili yapılan bazı varsayımlar Btrfs ile doğru değildi. Bu yüzden takas dosyaları desteklenmedi.
Çekirdek 5.0'dan beri, aşağıdaki gereksinimlerle ayarlandıysa Btrfs dosya sistemlerinde takas dosyalarınız olabilir:
- Yazarken kopyalama (NOCOW) dosyası yok.
- Sıkıştırılmıyorlar.
- Farklı sabit diskler üzerinde durmazlar.
Çoğu okuyucu varsayılan ext4 dosya sistemini kullanacaktır, bu nedenle bu onlar için endişe yaratmayacaktır.
İLİŞKİLİ: Hangi Linux Dosya Sistemini Kullanmalısınız?
Katı Hal Sürücüler (SSD'ler) ilk kullanıma sunulduğunda, sık sık dosya sistemi yazılan durumlarda bunları kullanma konusunda bir endişe vardı. İnsanlar SSD'lere takas alanı koymaları ve hatta SSD'lere sistem kaydı yapmamak için uyarıldı.
Bu, günümüzde çok daha az endişe kaynağıdır ve satışta olan birçok SSD'nin çoğu PC'den daha uzun ömürlü olacağı beklentileri vardır. SSD'deki takas dosyası, mekanik bir sabit sürücüdeki takas bölümünden çok daha iyi bir performansa sahip olacaktır.
İLİŞKİLİ: Katı Hal Sürücüleri Ne Kadar Sürer?
Mevcut Takas Alanını Kontrol Etme
Zıplamadan önce Bak. Bilgisayarınızda hangi takas alanının bulunduğunu kontrol edelim. Bunu iki şekilde yapabilirsiniz, ikisini de kullanacağız. free
komutu kullanılmış ve boş belleği görüntüler. -h
(insan tarafından okunabilir) seçeneği neden olur free
bellek değerlerini görüntülerken duyarlı birimleri kullanmak için.
free -h
Çıktı free
bu makinede yapılandırılmış takas alanı olmadığını gösterir.
RAM ve ücretsiz RAM kırpılmadan takas asla tartışılmaz. Bu nedenle, boş RAM'in 237 MB olarak verildiğini belirtmek gerekir. Kullanılabilir toplam RAM için hata yapmayın. Bu değer 881 MB olan “kullanılabilir” rakamla sağlanır.
Linux ücretsiz RAM'i dosya önbellekleme ve çekirdek arabellekleri gibi kendi amaçları için kullanır. Buna ayrılan RAM miktarı 871 MB olan “buff / cache” rakamıdır. Ancak bu bellek hala “kullanılabilir” olarak kabul edilir ve sayılır. “Buf / cache” RAM'in içeriği hemen atılabilir ve belleğe ihtiyaç duyan herhangi bir uygulama tarafından kullanılabilir.
Takas alanının kullanılabilir olup olmadığını kontrol etmenin bir başka yolu, swapon
Komut. --show
seçeneği bilgisayarınızdaki takas üzerinde herhangi bir değişiklik yapmaz. Yalnızca istatistik sağlar.
swapon --show
Bu komuttan çıkış yoksa yapılandırılmış bir takas yoktur.
Bu komutlar bazı takas alanlarının zaten yapılandırıldığını ortaya çıkarmışsa, mevcut takas alanının boyutu, oluşturacağınız takas dosyasının boyutuyla ilgili kararlara dahil edilmelidir.
Ne Kadar Takas Alanına İhtiyacım Var?
Geleneksel yanıt “sahip olduğunuz RAM miktarının iki katı” idi. Ancak bu, bilgisayarlar çok sınırlı RAM'e sahip olduğunda ortaya çıktı. RAM daha ucuz hale geldikçe ve daha fazla bellek gerektiren programlar ve oyunlar, PC spesifikasyonları buna göre ayarlandı. 32 GB RAM'e sahip ev bilgisayarları günümüzde nadir değildir. 32 GB RAM'iniz varsa, takas için 64 GB sabit disk alanı ayırmayacaksınız. Açıkça aşırı.
İhtiyacınız olan takas miktarı, “en iyi editör” ile karşılaştırılabilen kışkırtıcı bir konudur. Bu konuda gördüğümüz en mantıklı tartışmalardan biri Ubuntu takas SSS'sinde. Kısa ve sağduyulu bir yaklaşımdır (her ne kadar birçok insan gibi, Linux'ta swappiness'in nasıl çalıştığını yanlış anlıyorlar). Sisteminizin sahip olduğu RAM miktarı ve bilgisayarınızı hazırda bekletip almamanız için önerilen miktarda takas alanı gösteren kullanışlı bir tablo vardır.
Ve iyi haber şu ki, hangi değeri seçtiğiniz önemli değil. Her zaman bir takas dosyasını kaldırabilir ve daha büyük bir dosyayla veya daha küçük bir dosyayla değiştirebiliriz. Veya başka bir takas dosyası ekleyebilirsiniz.
Tablodan bir takas dosyası boyutu seçin ve bir süre çalıştırın. Sisteminizin takas alanını kullanımını izleyin. İnce ayar gerekirse, değişiklikler kolayca yapılabilir. Takas dosyalarıyla iki dakikalık bir iş. Bunu, canlı bir Linux bilgisayarındaki bölümleri ayarlamakla karşılaştırın.
İLİŞKİLİ: Linux'ta Swappiness Nedir? (ve Nasıl Değiştirilir)
Takas Dosyası Oluşturma
Kullanmamalısın fallocate
takas dosyanızı oluşturmak için komut. Bu adam sayfasından swapon
:
The swap file implementation in the kernel expects to be able to write to the file directly, without the assistance of the file system. This is a problem on files with holes or on copy-on-write files on file systems like Btrfs. Commands like cp(1) or truncate(1) create files with holes. These files will be rejected by swapon. Preallocated files created by fallocate(1) may be interpreted as files with holes too depending of the filesystem. Preallocated swap files are supported on XFS since Linux 4.18. The most portable solution to create a swap file is to use dd(1) and /dev/zero.
Bu yüzden olsa da fallocate
daha hızlı, kullanacağız dd
takas dosyasını oluşturmak için. Bu makaleyi araştırmak için kullanılan makinenin iki GB RAM'i var. Bir GB'lık takas dosyası oluşturacağız.
Seçenekler:
-
Eğer: Giriş dosyası. Bu örnekte,
/dev/zero
sıfır baytlık bir akış sağlayacaktır. -
nın-nin: Çıktı dosyası. Kök dizinde şu adla bir dosya oluşturacağız:
swapfile
. - bs: Bayt cinsinden blok boyutu. Bu, giriş dosyasından kaç bayt okunacağını ve çıktı dosyasına bir defada yazılacağını belirtir.
-
Miktar: Kaç blok okuma ve yazma. Bu sayıyı şununla çarp:
bs
dosya boyutunu almak için değer.
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
Dosya oluşturulduğunda bazı istatistikler sağlanır.
Dosyaya yazılan blokların (kayıtların) sayısını, dosyanın boyutunu, dosyayı oluşturmak için geçen süreyi ve etkin veri aktarım hızını görebiliriz.
Kullan ls
dosyayı kök dizinde görmek için komut:
ls /
Takas Dosyasını Hazırlama
Takas dosyasını mkswap
komutunu kullanmadan önce. İçin herhangi bir parametre sağlamamıza gerek yok mkswap
dosyanın yolu ve adı dışında:
sudo mkswap /swapfile
Dosya takas dosyası olarak kullanılmak üzere hazırlanmıştır. Dosya izinleriyle ilgili uyarıya dikkat edin. Bunları değiştirmemiz gerekecek, böylece kök kullanıcı takas dosyasını okuyabilen ve yazabilen tek kullanıcı olacak.
Takas Dosyasını Kullanma
Varsayılan izinler çok liberaldir, yalnızca kökün takas dosyasını kullanabilmesi için onları kısıtlamamız gerekir. kullanım chmod
dosya izinlerini değiştirmek için:
sudo chmod 600 /swapfile
Bu, dosya grubu üyelerinden ve diğerlerinden tüm izinleri kaldırır, ancak dosya sahibinin, kökün dosyayı okumasına ve dosyaya yazmasına izin verir.
İLİŞKİLİ: Linux'ta chmod Komutu Nasıl Kullanılır
Kullanmalıyız swapon
Linux'a kullanılabilecek yeni bir takas dosyası olduğunu bildiren komut. Sadece yolu ve dosya adını vermeliyiz:
sudo swapon /swapfile
Takas dosyası şimdi aktif.
Takas Dosyasını fstab'a Ekleme
Takas dosyanızın yeniden başlatıldıktan sonra kullanılabilir olduğundan emin olmak için dosyayı /etc/fstab
dosya. Tercih ettiğiniz herhangi bir metin düzenleyiciyi kullanabilirsiniz, ancak grafik Gedit metin düzenleyicisini kullanarak işlemi göstereceğiz.
sudo gedit /etc/fstab
Dosyanın altına eklememiz gereken satır:
/swapfile none swap sw 0 0
Alanlar:
- Dosya sistemi: Takas dosyasının yolu ve adı.
- Bağlama noktası: Dosya bir dosya sistemi gibi monte edilmediğinden giriş “yok”.
- tip: Bu “takas”.
-
Seçenekler: Önyükleme zamanında
swapon -a
(takas olarak işaretlenen tüm aygıtları başlat) önyükleme komut dosyalarından birinden çağrılır. Bu seçenek Linux'a bu girdiyi, denetimin altına girmesi gereken bir takas kaynağı olarak ele almasını söylerswapon -a
Komut. Burada kullanılan “varsayılanları” görmek yaygındır, çünkü bazı Linux kullanıcıları arasında bu alanın göz ardı edildiğine dair yanlış bir inanç vardır. Göreceğimiz gibi, durum böyle değil. Bu nedenle doğru seçeneği kullanmak mantıklı. - çöplük: Bu sıfıra ayarlanabilir. Bu durumda önemsizdir.
- Geçmek: Bu sıfıra ayarlanabilir. Bu durumda önemsizdir.
Değişiklikleri kaydedin ve düzenleyiciyi kapatın.
İLİŞKİLİ: Linux'ta fstab Dosyası Yazma
Takas Kullanımını Kontrol Etme
Takas alanınızın kullanılıp kullanılmadığını görmek için swapon
ile komut --show
seçeneği:
swapon --show
Sütunlar:
- ad: Takas bölümünün veya takas dosyasının adı.
- tip: Takas cihazının tipi.
- Boyut: Takas kaynağının boyutu.
- Kullanılmış: Kullanılan takas alanı miktarı.
- Prio: Bu takas alanının önceliği.
Takas Alanı Önceliği
Her takas alanına bir öncelik atanır. Birini belirtmezseniz, otomatik olarak bir tane atanır. Otomatik olarak atanan öncelikler her zaman olumsuzdur. Manuel olarak ayrılabilecek öncelikler aralığı 0 ila 32767'dir. Öncelikle daha yüksek öncelikli takas kaynakları kullanılır.
Birden fazla takas alanı aynı önceliğe sahipse, ikisi de dolana kadar dönüşümlü olarak kullanılırlar, sistem takas alanını bir sonraki en düşük önceliğe göre arar. Yalnızca tek bir takas alanınız varsa, öncelik elbette önemsizdir. Ancak nasıl yapılacağını göstermek için oluşturduğumuz swapfiles'in önceliğini değiştireceğiz.
Öncelik ayarlamak için pri=
(öncelik) seçeneğine /etc/fstab
girişi. Eklediğiniz satırı düzenleyin /etc/fstab
şöyle görünmek için:
/swapfile none swap sw,pri=10 0 0
Yani, ekle pri=10
“sw” işaretinden virgülle ayrılmış seçenekler alanına. “Sw”, virgül ve “pri = 10” arasında boşluk bırakmayın. Bilgisayarınızı yeniden başlatın ve swapon --show
komut:
swapon -- show
Bu takas alanının önceliği 10'a yükseltildi. Bu, alandaki seçenekler alanının /etc/fstab
giriş yok sayılmaz.
Kolay Yer Değiştirme
Açıklamayı ve açıklamayı keserek, şu kadar kolay ve hızlı bir şekilde yeni bir takas dosyası oluşturabiliriz:
sudo dd if=/dev/zero /of=/swapfile2 bs=1024 count=104857
sudo mkswap /swapfile2
sudo chmod 600 /swapfile2
sudo swapon /swapfile2
Ve çalışıp çalışmadığını kontrol edelim:
swapon --show
Eğer o kalıcı düşüşü yapmak istiyorsanız, /etc/fstab
dosya.
Boom. İş bitmiş.