Я работаю скорее плоскость Xubuntu бионические 18,04 установок с некоторыми установленными приложениями дополнительного пользователя, но никакое дополнительное системное программное обеспечение, о котором я знаю.
Теперь, когда я расширил свою RAM до 16 ГБ, я, кажется, запустил приложения использования, которые используют так много памяти и больше, намного больше. Таким образом, у меня наконец есть регулярное использование для свопинга также. Вместо того, чтобы повторно делить мои диски, я добавил файл подкачки на втором диске, который работает гладко помимо моего раздела подкачки на первом диске. Преимущество состоит в том, что работа распространена по 2 дискам, и я могу чувствовать скорость. В /etc/fstab
это похоже на это:
LABEL=TSWP none swap sw,pri=1,nofail
/media/sdata/.swapfile none swap sw,pri=1,nofail
Это приводит к типичным отчетам о swapon как это:
NAME TYPE SIZE USED PRIO
/dev/sda2 partition 16G 4,8G 1
/media/sdata/.swapfile file 16G 4,7G 1
Приложение, которое вызывает такой свопинг, ведет себя очень хорошо с ним (niced) и не мешает другим приложениям работать гладко. Но это - то, которому часто требуются дни или недели для завершения, и я хотел бы выключить свой компьютер время от времени. Спящий режим был бы рекомендован.
Наличие вполне достаточной области подкачки теперь, быть спящим режимом самой не должны быть никакой проблемой. Но где я направляю ядро к, для возобновления от? Существуют загрузки ответов здесь (и на othe форумах), которые говорят Вам, как сделать это для 1 местоположения подкачки. Но что, если у Вас есть 2 места?
Я мог заменить файл подкачки вторым разделом подкачки на том же самом 2-м диске и сохранить преимущество распространения рабочей нагрузки свопинга, но это не решает вещь: Я все еще не знал бы, которые делят быть в спящем режиме изображение, записан в, таким образом, я не смог бы сказать ядро, которые подкачивают раздел для возобновления от.
Я мог увеличить свой исходный раздел подкачки и отбросить файл подкачки, но затем я буду освобождать преимущество наличия 2 мест свопинга. Также реорганизация заполненных дисков является опасным бизнесом.
Я мог дифференцировать приоритет подкачки. Если я отдаю файлу подкачки более высокий приоритет и swapoff/swapon раздел подкачки, через какое-то время отчет о swapon похож на это:
NAME TYPE SIZE USED PRIO
/dev/sda2 partition 16G 0B 1
/media/sdata/.swapfile file 16G 9,3G 2
Раздел подкачки в теории остается бесплатным для спящего режима, пока файл подкачки является достаточно большим для обработки всего свопинга. Но мало того, что я освобождаю преимущество распространения рабочей нагрузки с этим, также кажется вероятным, что спящий режим следовал бы за теми же приоритетами как свопинг и пошел бы для используемого местоположения подкачки вместо для свободного.
Я мог добавить a pm-utils
сценарий к swapoff одно из обоих мест подкачки как подготовка к в спящем режиме, покидая только другое местоположение для выбора из. Но это серьезно уменьшило бы мои возможности наличия достаточной неиспользованной области подкачки для изображения спящего режима, противоположности того, что я получил путем добавления 2-го местоположения подкачки.
На том же уровне я мог монтировать/активировать, что каждый загружает местоположение /etc/fstab
, и swapon другой в некотором сценарии запуска. Это решило бы что-нибудь? Был бы процесс спящего режима смотреть /ect/fstab
вместо к фактическим активным местоположениям подкачки? Я предполагаю нет.
Таким образом, мой вопрос - это: будьте этим или 2 раздела подкачки, или 2 файла подкачки или 1 из каждого, как я настраиваю или надежно предсказываю, к которому местоположению изображение спящего режима будет записано в? Так, чтобы я мог дать ядру команду возобновляться от того местоположения, вместо того, чтобы искать напрасно на другой и освободить состояние моего продолжительного задания.
Вторичный вопрос: как я пошел бы о нахождении решения для моего по-видимому особого случая сам. Делает, например, systemctl hibernate
звонить pm-hibernate
из pm-utils
, действительно ли это наоборот, или еще один агент наконец ответственен за спящий режим. Действительно ли какой-либо из них настраивается относительно местоположения подкачки? Я могу вместо этого установить другую системную утилиту, которая настраивается таким образом?
Спасибо за Ваше внимание.
Всего несколько лакомых кусочков для рассмотрения...
В лучшем сценарии случая, подкачка не используется вообще. Использование подкачки является медленным из-за скорости устройств, что они расположены на (жесткий диск обычно)." я могу чувствовать, что скорость " происходит из-за дополнительной RAM, не подкачка.
, Если у Вас есть современный SSD, лучше помещать один / своп-файл в него и удалять любые используемые разделы подкачки. Редактирования к/etc/fstab требуются.
, Если/etc/fstab, подкачайте , разделы лучше всего упомянуты UUID (UUID=xxx), а не маркирует (LABEL=TSWP) или устройством (/dev/sda2). Своп-файлы лучше всего помещаются в корневой каталог (/своп-файл), а не на съемных носителях (/media/sdata/.swapfile) и не создаются, как скрытый.
В небыть в спящем режиме ситуации, размере подкачки с 16G RAM могла бы быть в 4-8G диапазоне. В быть в спящем режиме ситуации подкачка должна быть больше, чем физическая RAM в порядке (1.2-1.5) *RAM.
необходимо отредактировать/etc/initramfs-tools/conf.d/resume для определения подкачки резюме... использование собственного UUID... как это...
RESUME=UUID=071f8b0e-8e16-4f4d-90ff-a4ae9cc56e2b
Затем создают новый initramfs файл с:
sudo update-initramfs -c
С 16G RAM, это - преимущества для установки vm.swappiness параметра ядра, таким образом, что больше RAM используется, и меньше подкачки используется.
Для временного тестирования этого:
sudo sysctl vm.swappiness=10
# значение по умолчанию равняется 60
Для внесения постоянного изменения:
sudo sysctl -w vm.swappiness=10
запись # оценивает/etc/sysctl.conf
загрузки/etc/sysctl.conf
sudo sysctl -p
# Наконец, после того, как добавляющая RAM, тест памяти должен будет быть выполнен для подтверждения хорошей памяти и успешного дополнения к слотам памяти. Перейдите в https://www.memtest86.com / и загрузите/выполните их свободный memtest для тестирования памяти. Заставьте по крайней мере одну полную передачу всех тестов 4/4 подтверждать хорошую память. Это может занять много часов для завершения.