Как удалить своп файл linux

SWAP в Linux: Создание, редактирование и удаление раздела или файла

И что же такое Swap в Linux?

Если сервер пытается запустить программу, которая требует больше оперативной памяти, чем доступно, операционка для решения задачи используют технологию swapping («подкачка»). Суть этой технологии заключается в том, что объем данных, который не помещается в оперативную память временно хранится на жестком диске, в то время как другая часть данных обрабатывается. Рассмотрим два варианта управления своп-разделами в Linux для повышения производительности системы.

В ОС Linux оперативная память (ОЗУ, RAM, random access memory) делится на разделы, называемые страницами (pages). Swapping («подкачка», своппинг) —
это процесс во время которого страницы памяти копируются в сконфигурированный специально раздел диска, который называется swap space
(раздел подкачки, может быть как и файлом, так и разделом жесткого диска) для того чтобы освободить ОЗУ.
Совокупные размеры физической памяти и раздела подкачки — это объем имеющийся виртуальной памяти.

Своппинг крайне необходим потому что когда системе необходимо больше памяти (приложение или процесс запрашивает у системы больше памяти) чем сейчас свободно в ОЗУ,
ядро разгружает («откачивает») наименее используемые страницы и освобожденную память выделяет текущему приложению или процессу. А также,
значительное количество страниц используемых программами на стадии запуска, используются только при инициализации и никогда более.
Поэтому система свапит эти страницы и освобождает ОЗУ.

У своппинга конецчно есть и недостатки. Ведь по сравнению с ОЗУ работа с жестким диском осуществляется на порядоки медленнее.
На чтение/запись в ОЗУ используются наносекунды, а на жесткий диск уже используются миллисекунды, поэтому одни и те же операции на жестком диске занимают в десятки тысяч больше времени чем в ОЗУ.
Поэтому чем больше страниц спаппится, тем медленнее будет работать ваша система.

Однако для выделенного сервера в некоторых ситуациях своппинг помогает не повесить сервер. Т.е. благодаря подкачки вы будете иметь хоть какое-то (пусть очень замедленное) но все-таки управление сервером.

В Linux есть два вида своппа: раздел подкачки и файл подкачки. Раздел подкачки — это отдельный раздел на жестком диске, используемый только для своппинга, никакие другие файлы не могут там располагаться. В Linux работа с этим разделом происходит на низком уровне. Файл подкачки — это специальный файл в файловой системе.

Swap partition, своп-раздел

Для того что бы в Linux посмотреть какие своп пространства у вас имеются, используйте команду:

Filename Type Size Used Priority
/dev/sda7 partition 859436 0 -1

Каждая строчка в этом списке описывает имеющиеся у вас своп пространства. В поле «Type» указывается тип пространства: partition (раздел) или file (файл). Поле «Filename» показывает местоположение свопа. Далее идет общий размер свопа и сколько сейчас используется. В последнем поле указан приоритет, т.е. какие пространства системе использовать вначале. Стоит отметить, что если примонтировать несколько своп-простанств расположенных на разных жестких дисках, и выставить им одинаковый приоритет, то Linux будет равномерно распределять страницы памяти по ним, что приведет к существенному увеличению производительности системы.

Перед тем как добавить новый своп-раздел, необходимо приготовить для него место. Для начала убедитесь в том, что раздел помечен как swap. Для этого используйте следующую команду:

Замените /dev/hdb на на путь к устройству где будет расположен своп. Результат должен выглядеть примерно так:

Device Boot Start End Blocks Id System
/dev/hdb1 2328 2434 859446 82 Linux swap / Solaris

Если раздел не помечен как swap, то используйте программу fdisk с ключом t, будьте осторожны во время этой процедуры, а то останетесь без своего линукса и других ОС, проверьте раздел на наличие нужной информации перед тем, как сделать из него swap.

Читайте также:  Запуск windows привет пока

Как только раздел помечен как своп, необходимо подготовить, для этого используется следующая команда:

Если никаких ошибок нет, то можно подключать своп-раздел:

Проверить результат можно вышеупомянутой командой:

Для того что бы новый своп автоматически монтировался при старте системы, необходимо внести некоторые изменения в файл /etc/fstab, в котором содержатся все файловые системы и свопы, монтирующиеся при старте. Формат файла следующий:

Таким образом, swap-space — это специальный тип файловой системы. Для добавления нового свопа добавьте следующую строку:

Для того что бы проверить примонтируется ли новый своп-раздел при старте, отключите все свопы командой swapoff -a. Затем командой swapon -a, включите свопы, загрузятся те, которые перечислены в файле /etc/fstab. Ну и наконец командой swapon -s проверьте, какие сповы примонтировались.

Создание SWAP файла

Создаем файл необходимого размера для swap области, где /home/swap-tmp — это имя и путь файла, а count=1024K его размерв, в данном случае — 1024 Мб):

# sudo dd if=/dev/zero of=/home/swap-tmp bs=1024 count=1024K

Далее производим запись в начало файла системную информацию, которая будет используется ядром системы для работы с файлом подкачки:

Следующим шагом активируем только что созданный SWAP файл:

Для просмотра результата просматриваем все объекты, которые используются для размещения виртуальной памяти:

После перезагрузки системы SWAP файл необходимо активировать снова или добавить строчка для автоматической загрузки в файл fstab.

Редактировать файл fstab можно самостоятельно или командой, которая добавляет в конец файла

fstab строку /home/swap-tmp swap swap defaults 0 0:

# echo «/home/swap-tmp swap swap defaults 0 0» | sudo tee -a /etc/fstab

Тоже самое действие но добавление через UUID:

# echo «UUID=54c60583-e61a-483a-a15c-2f1be966db85 swap swap defaults 0 0» | sudo tee -a /etc/fstab

Удаление SWAP файла

Просматриваем все объекты, которые используются для размещения виртуальной памяти

Деактивируем, для примера, созданный выше SWAP файл:

Удаляем SWAP файл:

Если Вы раньше добавляли строчку в fstab, для автоматической загрузки SWAP файла при старте операционной системы, то следует ее удалить. Выводим файл /etc/fstab для редактирования на экран:

В нем удаляем строчку монтирования SWAP файла.

Источник

Если нужно удалить swap Ubuntu в ядре Linux, желательно действовать рассудительно и правильно, чтобы не породить новые проблемы.

Удаление swap-файла кажется удачным решением, когда нужно освободить место на диске, а компьютер имеет достаточно ресурсов для быстродействия. По умолчанию размер swap в Ubuntu обычно составляет порядка 770 Мб, так что это действительно солидный кусок дискового пространства.

удалить swap ubuntu

Однако решение удалить swap ради дискового пространства нередко оказывается опрометчивым. Нет гарантии, что какая-нибудь программа, установленная в будущем, не потребует файл подкачки для нормальной работы. В этом случае не исключено подвисание программы, а пользователь, уже забывший об удалении свопа, будет искать другие причины.

Как отключить swap в Ubuntu

Простое решение проверки — временное отключение swap-файла. В этом случае своп не удаляется, но подкачка прекращает работу. И при необходимости его всегда можно включить снова.

Отключение свопа производится командой:

sudo swapoff –a

swapon –a

При этом нужно учитывать, что дисковое пространство, выделенное для подкачки, продолжает оставаться выделенным. То есть, отключение свопа не освобождает диск для других задач. Более того, это действие может привести к нестабильной работе системы, поэтому применять его можно как временную меру, например, чтобы сравнить производительность с включенным и отключенным свопом.

Правильное удаление

Для правильного удаления swap-файла следует действовать в следующем порядке:

  1. Определить местонахождение своп-файла командой: # cat /proc/swaps .
  2. Отключить файл подкачки: # sudo swapoff /dir/swapXXX , где dir- каталог с файлом, swapXXX – имя свопа.
  3. Удалить своп: # sudo rm /dir/swapXXX.
Читайте также:  Windows media player cmd

Нужно учитывать, что обычно в Ubuntu предусматривается автоматическая загрузка swap при старте. Поэтому для полного удаления свопа необходимо также удалить его из автоматической загрузки. Для этого командой # sudo gedit /etc/fstab выводится на экран файл автоматической загрузки, в котором удаляется нужная строчка.

Но, еще раз, рекомендуем не удалять swap Ubuntu без создания нового. При создании нового файла можно указать новый размер подкачки и, тем самым, освободить часть дискового пространства. В любом случае, необходимо протестировать стабильность работы системы с новыми параметрами.

Источник

Как в Linux Mint и Ubuntu увеличить и раздел подкачки. Как в Linux создать файл подкачки Swap

В этой статье на примере Linux Mint и Ubuntu мы научимся смотреть информацию по разделе подкачки, создавать файл подкачки, а также увеличивать доступное для подкачки место.

Файл подкачки — это определённое место на постоянном хранилище (например, на жёстком диске), куда на время сбрасываются данные, которые не умещаются в оперативную память. То есть это возможность увеличить количество оперативной памяти без покупки модулей ОЗУ. Правка, такая «виртуальная» оперативная память работает медленнее.

Посмотреть текущий размер раздела подкачки можно командой:

Либо командой free:

Как можно увидеть, в системе присутствует файл подкачки размером 2 Гигабайта, что, предположим, недостаточно.

Отключаем и удаляем этот файл подкачки следующими командами:

На диске должно быть достаточно места, чтобы туда поместился файл подкачки того размера, который вы задали.

Для создания файла подкачки размером 8G (измените значение по вашему желанию) выполните команду:

Затем выполните команды:

Откройте системный монитор, чтобы убедиться, что система видит файл подкачки:

Либо это можно сделать командой:

Вот и всё! Вам даже не нужно перезагружать систему, чтобы изменения вступили в силу.

Кстати, если вы вновь заходите изменить размер файла подкачки (в сторону увеличения или в сторону уменьшения — не важно), то в точности следуйте этой же инструкции ещё раз, но при создании файла подкачки укажите другой размер.

Как в Linux Mint и Ubuntu удалить файл подкачки

Для полного удаления файла подкачки выполните команды:

Затем откройте файл /etc/fstab:

И удалите из него строку:

Ошибка «fallocate: fallocate failed: Текстовый файл занят»

Если вы столкнулись с ошибкой:

Это означает, что вы хотите создать файл подкачки, но файл с таким именем уже существует и всё ещё используется.

Для его отключения и удаления выполните команды:

Управление файлами подкачки в других Linux

Для увеличения или создания файла подкачки в других дистрибутивах смотрите статьи:

Как создать раздел подкачки на другом диске

Вам необязательно использовать для свопа именно системный диск, на котором может быть мало место. Вы можете создать раздел на любом диске в системе. Подробности смотрите в инструкции «Как создать раздел подкачки не на системном диске. Как переместить раздел подкачки на другой диск».

Связанные статьи:

  • Как создать раздел подкачки не на системном диске. Как переместить раздел подкачки на другой диск (100%)
  • Как правильно и навсегда исправить ошибку «E: Не удалось получить доступ к файлу блокировки /var/lib/apt/lists/lock — open (11: Resource temporarily unavailable)» (50.7%)
  • Решение проблемы с ошибкой «fatal error: pcap.h: Нет такого файла или каталога» (50.7%)
  • dpkg: ошибка при обработке пакета . пакет абсолютно неработоспособен; перед настройкой его следует переустановить (РЕШЕНО) (50.7%)
  • Как установить локальный .deb пакет (50.7%)
  • Примеры базового и продвинутого использования команд apt, apt-cache, dpkg для управления пакетами в Ubuntu/Debian (RANDOM — 14.7%)

Рекомендуемые статьи:

13 Комментарии

Алексей, хотел выразить огромную благодарность за Ваш труд. Мне, как продвинутому новичку в мире Linux и всего, что с ним связано, это очень помогает. Так держать! Спасибо большое!

Спасибо за добрые слова.

Спасибо! Толково все изложено. Мне помогло)

При запуске GIMP появляются такие сообщения;»Невозможно открыть тестовый файл подкачки.Чтобы избежать потери данных, проверьте в настройках расположение файла подкачки и права на него. (сейчас «/home/val/.gimp-2.8»).

Читайте также:  Zoom видеоконференция для windows

Невозможно открыть файл подкачки. GIMP использовал всю доступную оперативную память и не может использовать файл подкачки. Некоторые части ваших изображений могут оказаться поврежденными. Сохраните файлы под другими именами, перезапустите GIMP и проверьте путь к файлу подкачки в параметрах программы.»
Куда копать, что изменить, ОС LM 19,2 x64

Суть ошибки в том, что:

  1. Закончилась оперативная память во время работы GIMP и, видимо, системный файл подкачки тоже закончился, если он есть
  2. Закончилось место на диске, либо неправильно выставлены права на файлы подкачки самой программы GIMP, которые она хранит на диске.

Если вы много работаете с большими изображениями, то самый лучший вариант — это установить в компьютер больше оперативной памяти.

Если такой возможности нет, то увеличьте размер файла подкачки, как показано в инструкции на этой странице.

Если на диске действительно закончилось место, то:

а) очистите диск

б) укажите другую папку подкачки GIMP, для этого в меню GIMP перейдите в Правка → Параметры → Каталоги. Там установите значения для «Папка для временных файлов» и «Папка для подкачки»:

Если даже это невозможно, то в разделе «Системные ресурсы», уменьшите значения для «Максимальная память для отмены», «Размер кэша», а для «Сжатие файла подкачки» выберите «Лучшее сжатие»:

Alexey, спасибо за ответ, но пока ничего не получается. Выкладываю скрины, что выдает система.

На одном из скриншотов видно, что не удаётся создать файл gimprc, поскольку отказано в доступе.

Проверьте, существует ли папка

/.gimp-2.8/ и какие у неё права доступа:

Правильно ли я понимаю, что ваша домашняя папка это /home/val, а имя пользователя val?

То есть всё дело в правах доступа на папку

/.gimp-2.8/ — или у вас нет прав на эту папку, либо нет самой этой папки или что-то похожее. Можно попробовать указать в качестве временного каталога и каталога подкачки какую-нибудь папку, на которую у вас точно есть права доступа.

Папка существует, права есть… Нет времени разбираться с проблемой (срочно нужно обработать десяток фотографий), сейчас переустановлю систему, быстрей получится. Спасибо за участие! С наступащим НГ, успехов, благополучия!

Такой вопрос. По инструкций делал все было норм, но после перезагрузки вернулись исходные значения. Это говорит о том, что я где то не так сделал или же всегда после перезагрузки нужно обновлять размер памяти выделяемой?

После перезагрузки изменения должны сохраняться.

Обратите внимание, что информация о файле подкачки хранится в файле /etc/fstab, но в данной инструкции мы НЕ редактируем этот файл (не добавляем информацию о файле подкачки) по той причине, что в Linux Mint и Ubuntu эта запись уже есть. Данная инструкция, кстати, называется «Как в Linux Mint и Ubuntu увеличить и раздел подкачки» и предназначена для этих двух дистрибутивов.

Возможно, у вас другой дистрибутив и просто нужно добавить запись в файл /etc/fstab чтобы автоматически использовался файл подкачки. О том, как это сделать, можете посмотреть в статье «Как в Kali Linux создать или увеличить файл подкачки (Swap)».

На вашем скрине и у меня на практике после данных действий файл подкачки не задействуется. там так и видно, что кол-во задействованного места — 0. В чем причина и как её решить?

Приветствую! Файл подкачки будет задействован когда закончится физическая память. На моём скрине видно, что задействовано только 14 процентов физической памяти. По этой причине файл подкачки в момент снятия скрина просто не нужен.

У вас точно израсходована физическая память?

Установите stress-ng и запустите что-нибудь такое:

И понаблюдайте за расходом памяти — увидите, как начнёт использоваться файл подкачки.

Источник

Оцените статью