Как я могу отключить своп навсегда?

Своп делает мою систему вялой, а выключение делает все более плавным. У меня 3,5 ГБ оперативной памяти.

Я знаю, как отключить своп, введя sudo swapoff -a в терминале, но это только для текущего сеанса, потому что после перезагрузки своп снова включается. Есть ли способ навсегда отключить своп?

68
задан 28 March 2014 в 19:08

5 ответов

Я могу предложить более безопасный подход? Вы никогда не знаете, когда подкачка может сохранить Вас от катастрофического отказа. В то время как свопинг действительно замедляет Ваш компьютер при использовании программы, которая съедает всю RAM, имение способности подкачать может сохранить Вас от "жесткой" перезагрузки. Когда свопинг запусков компьютера, Вы заметите и будете в состоянии уничтожить незаконное приложение.

Так, вместо того, чтобы отключить подкачку в целом, просто удостоверяются Ваши подкачки ОС очень редко. Этим управляют vm.swappiness установка в /etc/sysctl.conf. Настройка по умолчанию Ubuntu 60, если я помню правильно, который является слишком много для большинства ситуаций и заставит Вас начинать подкачивать даже, в то время как RAM все еще доступна. При сокращении этого значения Вы будете в состоянии сохранить строку безопасности подкачки только с помощью него для чрезвычайных ситуаций. Так, откройте файл:

sudo nano /etc/sysctl.conf

И добавляют эту строку к нему:

vm.swappiness=10

, Если это все еще слишком много, изменение от 10 до 1. Теперь после перезапуска Вы только подкачаете, когда абсолютно необходимый и можно будет просто забыть об этом.

0
ответ дан 28 March 2014 в 19:08

Найдите, что строка в/etc/fstab, относящемся, подкачивает, и комментирует его. Мой похож на это:

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

можно отредактировать этот файл с gedit. Скопируйте его сначала на всякий случай:

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

Просто добавляют # к началу строки, где подкачка, и перезагрузите компьютер.

ИЛИ

Командная строка Попытки способ прокомментировать запись подкачки в /etc/fstab файл,

sudo sed -i.bak '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
0
ответ дан 28 March 2014 в 19:08

Просто удалите запись (или прокомментируйте его с помощью # перед строкой) от fstab и перезагрузки. Ищите строку со словом "подкачка" в нем.

sudo nano /etc/fstab
0
ответ дан 28 March 2014 в 19:08

Неправильно.. если systemd найдет раздел ПОДКАЧКИ на каком-либо диске, то он так или иначе автосмонтирует его. Странный, что никто не упомянул systemd. Решение довольно просто так или иначе; для постоянного отключения подкачки, Вы должны:

  1. редактирование swapoff-a
  2. /etc/fstab и комментарий любые записи подкачки, если существующий.
  3. выполненный: sudo systemctl маска dev-sdXX.swap (где XX раздел подкачки. Также полезный, чтобы сделать это для всех возможных разделов так, чтобы, если существует раздел подкачки на каком-либо другом диске, это не было смонтировано)

Мир.

0
ответ дан 19 April 2019 в 01:52

Дополнение Zibri answer:

  • swapoff -a временно отключит все свопы.
  • Если у вас есть свопы в /etc/fstab, просто закомментируйте их и перезагрузитесь.
  • В моем случае (OdroidMC1+Armbian) своп управляется systemctl. Чтобы найти ответственного, используйте systemctl --type swap.

Пример:

# systemctl --type swap

UNIT           LOAD   ACTIVE SUB    DESCRIPTION                                                                                                                                                                     
dev-zram1.swap loaded active active /dev/zram1                                                                                                                                                                      

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

1 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
  • Отключите с помощью маскис помощью sysctl:
# systemctl mask dev-zram1.swap

Created symlink /etc/systemd/system/dev-zram1.swap → /dev/null.
3
ответ дан 15 November 2020 в 06:35

Другие вопросы по тегам:

Похожие вопросы: