本教程为新手向~
演示系统为Deepin20.9社区版,理论上所有基于Debian的Linux发行版可以通用所有命令
在 Deepin 系统中,Swap 文件是一种虚拟内存机制,用于在物理内存不足时,将部分数据从内存交换到磁盘空间,从而避免系统因内存耗尽而崩溃。Swap 文件的配置和管理对系统的稳定性和性能至关重要。
类似于Windows里的pagefile.sys,Deepin中的Swap需要用户自行分配。在安装时会建议选择一个分区作为Swap分区,程序会自动执行
但是如果忘记了/分少了(比如我只随便分了16M,其实是Windows留的恢复分区)
就需要在命令行里重新分配
但是分区一定程度上要动数据区,所以另一种方法就是分配Swap File,以文件形式存在
建议把Swap File扔在系统分区下,命令行可以照抄
虽然32GB RAM下官方建议不分配Swap(物理内存已经够用了),但是在开虚拟机或者多开软件游戏的时候就需要Swap了
以下操作需要sudo权限运行,请使用系统管理员账户登录
第一步,创建一个XGB的swap文件
sudo fallocate -l XG /swapfile(X替换为需要的大小)
sudo chmod 600 /swapfile(设置权限,仅root用户可访问)
第二步,格式化为 Swap 类型
sudo mkswap /swapfile
第三步,启用 Swap 文件
sudo swapon /swapfile
并且确保系统启动时自动启用
echo '/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab
很好,现在已经完成了Swap文件的创建了,但是Swap作为虚拟内存,系统需要判断何时调用Swap,就要借助swappiness参数,参数值为10-100,数字越大,越优先调用Swap(默认为60)
先查看swappiness的值
cat /proc/sys/vm/swappiness
再设置 swappiness 值(将下面的所有“10”改为需要的值)
echo 10 | sudo tee /proc/sys/vm/swappiness
随后把swapiness写入配置文件
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
值越高表示内核越积极使用 Swap,值越低表示优先使用物理内存
保存工作,重启
查看是否使用swap
sudo swapon --show
尝试多开几个软件吃满内存,查看swap是否被调用
如图所示就是Swap被调用的情况了
希望本文能对你有所帮助~
