Pertanyaan Bagaimana saya bisa mematikan swap secara permanen?


Swap membuat sistem saya lamban dan mematikannya membuat semuanya lebih lancar. Saya memiliki 3,5 GB RAM.

Saya tahu cara mematikan swap dengan memasukkan sudo swapoff -a di terminal, tapi itu hanya untuk sesi saat ini, karena setelah swap reboot kembali menyala. Apakah ada cara untuk mematikan secara permanen?


60
2018-03-28 14:06


asal


AFAIK swap digunakan untuk hibernasi. Katakan saja - DanMan
Ya benar, tetapi masih bisa digunakan. Saya memiliki skrip kecil yang me-mount partisi swap ketika sistem masuk ke hibernasi dan un-mount ketika datang kembali. File swap tidak perlu aktif untuk sementara. - animaletdesequia
Sederhananya swapoff -a di /etc/rc.local dan lupakan tentang itu ...;) - user264467
@ user264467: cukup kontraintuitif untuk membiarkan swap diaktifkan hanya untuk menonaktifkannya di setiap reboot, jauh lebih bersih untuk menonaktifkannya secara permanen. - karatedog


Jawaban:


Bolehkah saya menyarankan pendekatan yang lebih aman? Anda tidak pernah tahu kapan swap dapat menyelamatkan Anda dari tabrakan. Sementara swapping memang memperlambat komputer Anda, jika Anda menggunakan program yang memakan semua RAM Anda, memiliki kemampuan untuk swap dapat menyelamatkan Anda dari hard reboot. Ketika komputer mulai bertukar, Anda akan melihat dan dapat membunuh aplikasi yang menyinggung.

Jadi, alih-alih menonaktifkan swap sama sekali, cukup pastikan swap OS Anda sangat jarang. Ini dikendalikan oleh vm.swappiness pengaturan /etc/sysctl.conf. Pengaturan default Ubuntu adalah 60 jika saya ingat dengan benar yang terlalu banyak untuk sebagian besar situasi dan akan menyebabkan Anda mulai bertukar bahkan ketika RAM masih tersedia. Jika Anda mengurangi nilai ini, Anda akan dapat menjaga garis keamanan swap sementara hanya menggunakannya untuk keadaan darurat. Jadi, buka file:

sudo nano /etc/sysctl.conf

Dan tambahkan baris ini padanya:

vm.swappiness=10

Jika itu masih terlalu banyak, ubah 10 menjadi 1. Sekarang, setelah Anda me-restart, Anda hanya akan bertukar ketika benar-benar diperlukan dan Anda bisa melupakannya.


113
2018-03-28 15:00



Saya suka mengubah swappines, dan saya belum melakukannya selama bertahun-tahun. Terima kasih atas pengingatnya. sudo upvote turdon! - Darth Egregious
Hanya untuk menambahkan argumen 'pendekatan aman': Ketika Anda tidak memiliki swap dan sistem kehabisan memori, pembunuh Linux OOM (Out Of Memory) dipanggil. Ini memilih proses berdasarkan skor 'kejahatan' dan kemudian ... membunuhnya (berakhir, ditutup) tanpa ada kesempatan untuk aplikasi untuk menyimpan perubahannya, membersihkan, dll. Jadi, jika Anda mematikan swap dan kehabisan memori, Anda dengan sangat baik menjalankan risiko kehilangan pekerjaan jika proses penting skor buruk di mata pembunuh OOM. Jadi, Anda hanya perlu mematikan swap jika Anda percaya diri bahwa Anda akan tak pernah kehabisan memori. - Reid
@Reid worth menunjukkan bahwa, jelas, hal yang persis sama akan terjadi jika Anda kehabisan ruang swap juga. - o0'.
Ini sebenarnya tidak menjawab pertanyaan. Menonaktifkan swap sama sekali dapat membuat banyak pengertian pada sistem dengan 16GB atau 32GB RAM. Beberapa tambahan GB swap tidak akan berguna dalam hal aplikasi memory-eating, sementara sejumlah besar swap (misalnya 20GB) akan memakan banyak ruang harddisk / SSD. Juga, hibernate dengan 32GB RAM tidak  menyenangkan. - jmiserez
Untuk beberapa pengaturan, segera setelah Anda kehabisan RAM fisik dan mulai menukar, sistem mulai "menyedot lumpur" dan menjadi tidak dapat digunakan. Ya, secara teori Anda bisa masuk dan membunuh pelaku, tetapi ketika dibutuhkan waktu lebih dari 20 menit untuk mengubah fokus di UI dan bahkan lebih lama untuk mendapatkan prompt sandi melalui SSH, OOMing akhirnya menjadi opsi terbaik (diikuti oleh hard reboot, diikuti dengan masuk dan memperbaiki masalah). - BCS


Temukan baris di / etc / fstab yang mengacu pada swap, dan komentari. Milik saya seperti ini:

UUID=6880a28d-a9dc-4bfb-ba47-0876b50e96b3 /               ext4    errors=remount-ro 0       1
UUID=7350e6f2-e3a7-4d80-9a95-8741c7db118f /home           ext4    defaults        0       2
UUID=E2E26AD1E26AAA0D /media/windows  ntfs    defaults,umask=007,gid=46 0       0

# Swap a usb extern (3.7 GB):
#/dev/sdb1 none swap sw 0 0

Anda dapat mengedit file ini dengan gedit. Cadangkan terlebih dahulu, untuk jaga-jaga:

sudo cp /etc/fstab /etc/fstab_backup
gksu gedit /etc/fstab

Cukup tambahkan # ke awal baris tempat swap, dan reboot komputer.

ATAU

Coba cara Command-line mengomentari entri swap di /etc/fstab mengajukan,

sudo sed -i.bak '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

42
2018-03-28 14:10



Saya mendapatkan ini ketika saya mengetik gksu gedit /etc/fstab  # /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> /host/ubuntu/disks/root.disk / ext4 loop,errors=remount-ro 0 1 /host/ubuntu/disks/swap.disk none swap loop,sw 0 0 - Alex Li
Jadi, lakukan apa yang dia katakan. Komentar baris pertama yang mengacu pada "swap". : P - cHao


Hapus saja entri (atau komentari menggunakan # di depan baris) dari fstab dan reboot. Carilah garis dengan kata "swap" di dalamnya.

sudo nano /etc/fstab

13
2018-03-28 14:10



Yang ini juga akan berfungsi, tapi saya pikir lebih baik mengomentari baris daripada menghapusnya sepenuhnya, hanya jika Anda ingin mengembalikan perubahan. - animaletdesequia
Saya telah mengedit posting saya. - mdalacu


Salah .. jika systemd menemukan partisi SWAP pada drive apa pun itu akan mengotomatiskannya. Aneh bahwa tidak ada yang menyebutkan systemd. Solusinya cukup sederhana; untuk menonaktifkan swap secara permanen, Anda harus:

  1. swapoff -a
  2. edit / etc / fstab dan beri komentar setiap entri swap jika menyajikan.
  3. run: sudo systemctl mask dev-sdXX.swap (dengan XX adalah partisi swap. Juga berguna untuk melakukannya untuk semua kemungkinan partisi jadi bahwa jika ada partisi swap pada drive lain tidak akan terpasang)

Damai.


4
2017-12-09 19:58