在Ubuntu系统中,配置Swapper(交换分区或交换文件)可以帮助系统在物理内存不足时,将部分数据移动到磁盘上,从而释放内存供其他进程使用,进而提升系统性能。以下是配置Ubuntu Swapper以实现最佳性能的详细步骤和建议:
sudo fallocate -l 4G /swapfile
如果 fallocate 不可用,可以使用 dd 命令:
sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show
或者查看 /proc/swaps 文件:
cat /proc/swaps
/etc/fstab 文件,添加以下行:/swapfile none swap sw 0 0
保存并退出编辑器。
如果硬盘上有未分配的空间,可以使用 gparted 或其他分区工具创建一个新的交换分区。
mkswap 命令将分区格式化为交换空间:sudo mkswap /dev/sdXN
其中 /dev/sdXN 是你的交换分区的设备名称。
sudo swapon /dev/sdXN
sudo swapon --show
或者查看 /proc/swaps 文件:
cat /proc/swaps
/etc/fstab 文件,添加以下行:/dev/sdXN none swap sw 0 0
保存并退出编辑器。
sudo swapoff -a
sudo swapon -p 1 /dev/nvme0n1p6
例如,将Priority修改为1。
cpufrequtils:sudo apt-get install cpufrequtils
cpufreq-info
sudo cpufreq-set -g performance
监控Swap使用情况:使用 free -h 命令查看系统的内存和Swap使用情况。
调整内核参数:调整 vm.swappiness 是一个内核参数,用于控制内核将数据从RAM移动到swap的频率。建议值通常在10到30之间,可以通过以下命令修改,并使其永久生效于 /etc/sysctl.conf 文件:
sudo sysctl vm.swappiness=<值>
例如,设置为10:
sudo sysctl -w vm.swappiness=10
通过以上步骤和建议,可以在Ubuntu系统上成功配置和管理Swapper,确保系统在物理内存不足时能够提供额外的虚拟内存空间,同时优化整体系统性能。