我知道如何创建交换文件并将其用作交换文件。但是我必须事先配置文件的大小,如果不使用交换,则要在磁盘上使用空间。
如何创建初始大小为0并按需增长的交换?
我知道如何创建交换文件并将其用作交换文件。但是我必须事先配置文件的大小,如果不使用交换,则要在磁盘上使用空间。
如何创建初始大小为0并按需增长的交换?
Answers:
交换空间是旧的且无法维护,有一天可能会导致现代系统出现问题。我认为动态交换的最佳解决方案是:
sudo apt install dphys-swapfile
sudo update-rc.d dphys-swapfile enable
然后CONF_SWAPFACTOR=2
进入/etc/dphys-swapfile
最后
sudo service dphys-swapfile start
SwapSpace是一个实用程序,可创建一个“动态交换文件”,该文件会根据操作系统的要求更改其大小。
因此,您甚至可以忘记创建虚拟交换文件,而只需安装“ SwapSpace”,它将自动为您创建一个,甚至在必要时调整其大小。
您还可以将“交换空间”与手动创建的交换文件并排使用,当手动填充交换文件时,“交换空间”将为操作系统自动创建另一个交换文件,因此操作系统将始终具有交换空间,从而增强了稳定性。
“ SwapSpace”的另一个有用之处在于,只要有可能,它将减小SwapSpace的大小并将这些字节“释放”到用户文件系统中,并且根据开发人员的说法,这种减少也有助于提高交换文件的性能(加上您的“宝贵”硬盘空间也不会浪费)。
用安装
sudo apt-get install swapspace
并根据您的需要调整配置文件。我0
在只有8GB HDD的VM Debian机器上将最小值设置为
另外,我还将交换性设置0
为最大程度地减少虚拟机上宝贵的HDD空间的使用:
要更改系统交换值,请/etc/sysctl.conf
以root用户身份打开。然后,将以下行更改或添加到文件中:
vm.swappiness = 0
(重新启动以使更改生效)
Afaik,例如,您将使用fdisk创建的任何交换分区,都将需要大于0的任何空间,因为您正在修改现有磁盘的空间并将其重新分配到其他地方。
无论如何,回答您的问题,您可以轻松地创建一个小分区,将其分配为fdisk下的swap,然后:
1)禁用swapoff -v
2)交换分区lvresize
3)格式化分区mkswap
4)重新启用交换空间swapon -v
之后,您可以cat /proc/swaps
用来检查它是否已升级。您可以根据系统规格在脚本上轻松使用此功能,并在需要增加交换空间时按需运行。就像是:
$ swapoff -v /dev/swapvol1
$ lvresize /dev/swapvol1 -L +1G
$ mkswap /dev/swapvol1
$ swapon -v /dev/swapvol1