Счастье:
cat /proc/sys/vm/swappiness
1
Бесплатно:
root@server07:~# free
total used free shared buff/cache available
Mem: 16256132 4155932 553748 145196 11546452 10514464
Swap: 19721212 8327508 11393704
Все данные бара потребляются кешем?
ЗАЧЕМ? Как я могу освободить кеш из ram и переместить swap ram в реальный ram?
запускает этот скрипт один раз в день:
#!/bin/sh
sync
echo 1 >/proc/sys/vm/drop_caches
sync
echo 2 >/proc/sys/vm/drop_caches
sync
echo 3 >/proc/sys/vm/drop_caches
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
echo $mem
echo $swap
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM" >&2
exit 1
fi
swapoff -a &&
swapon -a
запускает этот скрипт один раз в день:
#!/bin/sh
sync
echo 1 >/proc/sys/vm/drop_caches
sync
echo 2 >/proc/sys/vm/drop_caches
sync
echo 3 >/proc/sys/vm/drop_caches
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
echo $mem
echo $swap
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM" >&2
exit 1
fi
swapoff -a &&
swapon -a
запускает этот скрипт один раз в день:
#!/bin/sh
sync
echo 1 >/proc/sys/vm/drop_caches
sync
echo 2 >/proc/sys/vm/drop_caches
sync
echo 3 >/proc/sys/vm/drop_caches
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
echo $mem
echo $swap
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM" >&2
exit 1
fi
swapoff -a &&
swapon -a
Сказав это, запустите эту команду, чтобы включить своп и снова включить его, существенно очистив swap.
sudo swapoff -a && sudo swapon -a
Вы может писать сценарий для этого периодически, делая
sudo nano /usr/local/sbin/swap2ram.sh
#!/bin/sh
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM to write swap back, nothing done" >&2
exit 1
fi
swapoff -a &&
swapon -a
В этот момент вы можете выполнить приведенную ниже команду, чтобы сбросить своп обратно в память (если доступно достаточно памяти)
sudo /usr/local/sbin/swap2ram.sh
sudo crontab -e
@hourly /usr/local/sbin/swap2ram.sh
grep CRON /var/log/syslog
Ссылка
Уменьшение swappiness не очень хорошее решение для настольных ПК, хотя многие сайты предложит вам сделать это 1-е место после настройки.
Я бы предложил восстановить swappiness по умолчанию 60 и включить Zswap. Он будет сжимать и хранить ваши старые страницы в памяти, а не напрямую сохранять в свопе. Вы можете увидеть это Reference .
Я включил его, и это мое потребление памяти (с помощью студии android, эмулятора Android, хрома, работающего на атоме)
Сказав это, запустите эту команду, чтобы включить своп и снова включить его, существенно очистив swap.
sudo swapoff -a && sudo swapon -a
Вы может писать сценарий для этого периодически, делая
sudo nano /usr/local/sbin/swap2ram.sh
#!/bin/sh
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM to write swap back, nothing done" >&2
exit 1
fi
swapoff -a &&
swapon -a
sudo chmod +x /usr/local/sbin/swap2ram.sh
В этот момент вы можете выполнить приведенную ниже команду, чтобы сбросить своп обратно в память (если доступно достаточно памяти)
sudo /usr/local/sbin/swap2ram.sh
sudo crontab -e
@hourly /usr/local/sbin/swap2ram.sh
grep CRON /var/log/syslog
Ссылка
Уменьшение swappiness не очень хорошее решение для настольных ПК, хотя многие сайты предложит вам сделать это 1-е место после настройки.
Я бы предложил восстановить swappiness по умолчанию 60 и включить Zswap. Он будет сжимать и хранить ваши старые страницы в памяти, а не напрямую сохранять в свопе. Вы можете увидеть это Reference .
Я включил его, и это мое потребление памяти (с помощью студии android, эмулятора Android, хрома, работающего на атоме)
Сказав это, запустите эту команду, чтобы включить своп и снова включить его, существенно очистив swap.
sudo swapoff -a && sudo swapon -a
Вы может писать сценарий для этого периодически, делая
sudo nano /usr/local/sbin/swap2ram.sh
#!/bin/sh
mem=$(LC_ALL=C free | awk '/Mem:/ {print $4}')
swap=$(LC_ALL=C free | awk '/Swap:/ {print $3}')
if [ $mem -lt $swap ]; then
echo "ERROR: not enough RAM to write swap back, nothing done" >&2
exit 1
fi
swapoff -a &&
swapon -a
sudo chmod +x /usr/local/sbin/swap2ram.sh
В этот момент вы можете выполнить приведенную ниже команду, чтобы сбросить своп обратно в память (если доступно достаточно памяти)
sudo /usr/local/sbin/swap2ram.sh
sudo crontab -e
@hourly /usr/local/sbin/swap2ram.sh
grep CRON /var/log/syslog
Ссылка
Уменьшение swappiness не очень хорошее решение для настольных ПК, хотя многие сайты предложит вам сделать это 1-е место после настройки.
Я бы предложил восстановить swappiness по умолчанию 60 и включить Zswap. Он будет сжимать и хранить ваши старые страницы в памяти, а не напрямую сохранять в свопе. Вы можете увидеть это Reference .
Я включил его, и это мое потребление памяти (с помощью студии android, эмулятора Android, хрома, работающего на атоме)