Чи безпечно постійно вимкнути своп?


54

Моя система стає повільніше, особливо коли я використовую браузери, такі як Firefox / Chromium та Virtual Machines. Я помітив, що у мене є щонайменше 3,2 ГБ вільної оперативної пам’яті (за допомогою монітора системи Gnome), і не було заміни.

Те, що я зараз зробив, - swapoff -aі продуктивність системи зросла на 30%. Отже, моє запитання: чи безпечно це використовувати swapoff? Чи буде безпечно для мого ПК перезапустити swapoff?

введіть тут опис зображення


1
Ви впевнені, що Ubuntu використовує ваш своп до того, як повністю використає таран? Який вихід з free -m ? Зазвичай вимкнення swap не матиме значущого значення, оскільки Ubuntu намагається максимально використовувати оперативної пам’яті, і не повинно траплятися, що таран не використовується і використовується swap.
ste_kwr

2
Тільки фій, у мене немає 8-ГБ системи з одним SSD.
Лекенштейн

3
Ви можете або вимкнути swap, що має бути добре, або відрегулювати значення swappiness. Його можна знайти за адресою / proc / sys / vm / swappiness. Використовуйте 'sysctl' для більш постійної зміни. Варто зазначити, що в сплячому режимі потрібен своп. Я думаю, що сон насправді не потребує цього, але в сплячому режимі.
Маркі

@kniwor ya я вже, після 2,5 ГБ оперативної пам'яті ... він використовує своп і мені доведеться перезапустити, тоді моя система працює добре. І через деякий час після 1 ГБ моя система повільно почала
One Zero

@ Я перевіряв це 5 - 6 разів
One Zero

Відповіді:


94

Ядро Linux надає налаштовану настройку, яка керує тим, як часто використовується файл swap, називається swappiness

Якщо встановити нульовий параметр нуля, це означає, що диск буде уникнути, якщо це абсолютно не потрібно (у вас не вистачає пам'яті), тоді як налаштування простоти 100 означає, що програми будуть замінені на диск майже миттєво.

Система Ubuntu поставляється за замовчуванням 60, це означає, що файл swap буде використовуватися досить часто, якщо використання пам'яті становить близько половини моєї оперативної пам’яті. Ви можете перевірити значення своєї власної системи за допомогою запуску:

one@onezero:~$ cat /proc/sys/vm/swappiness
60

Оскільки у мене є 4 ГБ оперативної пам’яті, тому я хотів би зменшити це на 10 або 15. Файл swap тоді використовуватиметься лише тоді, коли моє використання оперативної пам’яті становить приблизно 80 або 90 відсотків. Щоб змінити значення заміщення системи, відкрийте /etc/sysctl.conf as root. Потім змініть або додайте цей рядок у файл:

vm.swappiness = 10

Перезавантажте, щоб зміни вступили в силу

Ви також можете змінити значення, поки ваша система все ще працює

sysctl vm.swappiness=10

ви також можете очистити свій swap, запустивши, swapoff -aа потім swapon -aяк root замість перезавантаження, щоб досягти того ж ефекту.

Щоб обчислити формулу своп

free -m (total) / 100 = A

A * 10

root@onezero:/home/one# free -m
             total       used       free     shared    buffers     cached
Mem:          3950       2262       1687          0        407        952
-/+ buffers/cache:        903       3047
Swap:         1953          0       1953

тому загальна сума становить 3950/100 = 39,5 * 10 = 395

так що це означає, що коли 10% 395 МБ барана залишилося, то він починає використовувати своп


11
+1 Це відмінна інструкція щодо налаштування свопу. Чудова відповідь. Ви навіть можете опублікувати нове запитання із запитом "як налаштувати заміщення" та скопіювати цю відповідь, щоб іншим було легше їх знайти. Люди, які приходять на це запитання, шукатимуть відповіді "так чи ні", ваше - це інструкція для людей, які вже вибрали "так"
Том Броссман,

1
@TomBrossman, я це ти міг перевірити як askubuntu.com/questions/103915/how-do-i-configure-swappiness
One Zero

11
Це, будучи корисним посібником, не дає відповіді на запитання. Запитувач хотів дізнатися, безпечно це чи ні , а не як це зробити.
чотирирічний

2
@InkBlend Навіть дивніше, це не-відповідь є по запитувача.
підкреслюй_d

У будь-якому випадку, дуже дякую за пораду. Це зовсім новий світ, що використовує цей лабус Ubuntu.
Дон Пфластер

17

Мабуть. Ви повинні прочитати тут "Чому мені потрібен обмін" на сторінці поширених запитань Ubuntu і судити про себе.

Якщо ви можете оцінити швидкість, яку може забезпечити своп безпеки, вам слід її відключити

Якщо ви ніколи не призупиняєте диск та завжди вимикаєтесь та перезапускаєте, ви можете безпечно відключити його.

Якщо у вас багато оперативної пам’яті (ваш 4 Гб + VM працює під час виклику), ви можете.

Для мене я маю ОС на SSD, 8 Гб оперативної пам’яті і ніколи не призупиняю. Мені не потрібен своп, ніколи не бачив його у використанні, і я просто встановив його при встановленні за звичкою.

Як альтернатива, ось про: налаштування налаштування для Firefox від Lifehacker, що пояснює, як використовувати оперативну пам'ять лише для кешу браузера. Прочитайте спростування, пов’язане внизу статті, перш ніж спробувати.


1

Ні, це не безпечно. Причина полягає в тому, що коли в системі не вистачає оперативної пам’яті, і вона не зможе поміняти її нічим, вона може замерзнути, не маючи шансів на відновлення, окрім жорсткого скидання. Справа не лише в тому, щоб мати змогу призупинити чи ні.
Джерело: моє 14.04 це робить.

Вам слід зберегти мінімальну кількість місця для заміни, подивіться на питання про номери Ubuntu .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.