Почему моя область подкачки установлена ​​на ноль в Ubuntu Server 18.04.2?

Проверяя размер подкачки на моем сервере Ubuntu, я обнаружил, что он установлен на ноль. Так как он был установлен в базовой конфигурации из AWS EC2, я не уверен, что мне пришлось делать дополнительные шаги для настройки области размера подкачки.

Я выполнил следующие команды и получил следующие результаты:

    # grep Swap /proc/meminfo
       SwapCached:            0 kB
       SwapTotal:             0 kB
       SwapFree:              0 kB

    # swapon -s 

    #  free -m
                     total        used        free      shared  buff/cache   available
    Mem:           7975         187        7059           0         728        7549
    Swap:             0           0           0

# cat /proc/swaps
  Filename                         Type            Size    Used    Priority

Нормально ли установить область подкачки на ноль? Если это не так, что я должен сделать, чтобы это исправить?

Спасибо!

1
задан 24 August 2019 в 05:35

1 ответ

По некоторым причинам некоторое облако (VPS) поставщики отключает подкачку в их (измененных) установках. В наше время файл подкачки поддержки Ubuntu, таким образом Вам не нужен отдельный раздел для подкачки. Для включения подкачки через файл подкачки выполняют эти шаги:

sudo fallocate -l 4G /swapfile  # Create a 'swap-file'; 4G in this case
sudo chmod 600 /swapfile        # Set the necessary file permissions
ls -lh /swapfile                # Check
sudo mkswap /swapfile           # Mark the file as 'swap'
sudo swapon /swapfile           # Enable the 'swap'
sudo swapon --show              # Check
free -h                         # Another check

Править /etc/fstab и делайте изменения постоянными. Используйте эти команды, чтобы сделать изменения:

sudo sed 's/^.*swap.*$//' /etc/fstab -i.bak                # Remove the previous swap entries 
                                                           # and create a backup copy of the file
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab # Add a new entry

Или редактирование /etc/fstab и добавьте следующую запись вручную:

/swapfile none swap sw 0 0

Это - это.


Идеи для дополнительных тонких настроек (я предпочел бы использовать настройки по умолчанию для нормального использования подкачки):

  • Измените частоту RAM для СВОПИНГА копии данных:

    sudo sysctl vm.swappiness=10    # value 0-100: low value low frequency
    cat /proc/sys/vm/swappiness     # Check
    
  • Измените частоту Очистки кэша:

    sudo sysctl vm.vfs_cache_pressure=50 # 0-100: high value high frequency
    cat /proc/sys/vm/vfs_cache_pressure  # Check
    
  • Делайте вышеупомянутые изменения постоянными:

    sudo cp /etc/sysctl.conf{,.bak} # Create a backup copy of the file '/etc/sysctl.conf'
    echo -e '\nCustom settings: value 0-100; default 100\nvm.swappiness=10\nvm.vfs_cache_pressure=50' | sudo tee -a /etc/sysctl.conf
    

    Или редактирование /etc/sysctl.conf и добавьте следующие записи вручную:

    # Custom settings: value 0-100; default 100
    vm.swappiness=10
    vm.vfs_cache_pressure=50
    
1
ответ дан 7 December 2019 в 14:59

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

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