需求:
对于个人用户来说,在阿里云上能用最少的钱发挥出最大的配置效果是最好的了。本文的目的就是通过虚拟内存的方法来提高阿里云服务器的内存,来解决各种内存不足所带来的问题。大恩不言谢!
首先我们进入阿里云的控制台看看有没有磁盘情况(我这个难民版的配置有个数据盘一直没有格式化使用,直到现在才发现!!)
由于系统盘上有很多操作的不便性,我们先格式化这块数据盘用用先。
一、使用管理终端,或远程连接工具,输入用户名 root 和密码登录到实例。
用的工具是:
二、运行 fdisk -l 命令查看数据盘。注意:在没有分区和格式化数据盘之前,使用 df -h 命令是无法看到数据盘的。在下面的示例中,有一个 10.7 GB 的数据盘需要挂载。
如果执行了 fdisk -l 命令后,没有发现 /dev/xvdb,则表示您的实例没有数据盘,因此无需挂载,请忽略这一章。
三、运行 fdisk /dev/xvdb,对数据盘进行分区。根据提示,依次输入 n,p,1,两次回车,wq,分区就开始了。
四、运行 fdisk -l 命令,查看新的分区。新分区 xvdb1 已经创建好。如下面示例中的/dev/xvdb1。
五、运行 mkfs.ext3 /dev/xvdb1,对新分区进行格式化。格式化所需时间取决于数据盘大小。您也可自主决定选用其他文件格式,如 ext4 等。
六、运行 echo /dev/xvdb1 /mnt ext3 defaults 0 0 >> /etc/fstab 写入新分区信息。完成后,可以使用 cat /etc/fstab 命令查看。
七、运行 mount /dev/xvdb1 /mnt 挂载新分区,然后执行 df -h 查看分区。如果出现数据盘信息,说明挂载成功,可以使用新分区了。
到此,这个之后可以用来作为虚拟内存的数据盘已经制作完毕。
制作虚拟内存文件并使之生效
添加交换文件步骤:
1.找个地方建立swap的文件系统,我放在了/var目录下
dd if=/dev/zero of=/var/swapfile bs=1G count=10
这条命令是在/mnt目录下创建一个名为10GB.swap的交换文件,基础大小为1GB,有10个,so:1*10=10GB
2.格式化为交换分区文件:
mkswap /var/swapfile #建立swap的文件系统
3.启用交换分区文件:
swapon /var/swapfile #启用swap文件
检查swap是否已打开。
cat /proc/swaps #或者free -m
4.使系统开机时自启用,在文件/etc/fstab中添加一行:
/var/swapfile swap swap defaults 0 0
配置系统采用虚拟内存的百分比
swappiness的值的大小对如何使用swap分区是有着很大的联系的。swappiness=0的时候表示最大限度使用物理内存,然后才是swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
vim /etc/sysctl.conf
在最后一行补充
vm.swappiness = 60
保存退出后执行命令:
sysctl -p
至此,阿里云上服务器通过虚拟内存扩充内存的方法以及介绍完毕。
卸载删除
swapoff /swapfile #卸载swap文件
并修改/etc/fstab文件 #从配置总删除
rm -rf /swapfile #删除文件
补充:
参考文献:
https://yq.aliyun.com/articles/74006?t=t1
https://blog.csdn.net/shooke/article/details/77895876