文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

CentOS7中怎么设置交换文件

2023-06-10 06:10

关注

这篇文章主要介绍CentOS7中怎么设置交换文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

问题来源

想在买的VPS上搭点博客服务,偏爱于动态博客之类的,选用了nodejs,范围一下就减小了,一开始看中了N-blog。需要安装bower,如果在安装的时候,一直提示npm版本问题:

npm WARN deprecated This version of npm lacks support for important features,npm WARN deprecated such as scoped packages, offered by the primary npmnpm WARN deprecated registry. Consider upgrading to at least npm@2, if not thenpm WARN deprecated latest stable version. To upgrade to npm@2, run:npm WARN deprecated npm WARN deprecated   npm -g install npm@latest-2npm WARN deprecated npm WARN deprecated To upgrade to the latest stable version, run:npm WARN deprecated npm WARN deprecated   npm -g install npm@latestnpm WARN deprecated npm WARN deprecated (Depending on how Node.js was installed on your system, younpm WARN deprecated may need to prefix the preceding commands with `sudo`, or ifnpm WARN deprecated on Windows, run them from an Administrator prompt.)npm WARN deprecated npm WARN deprecated If you're running the version of npm bundled withnpm WARN deprecated Node.js 0.10 LTS, be aware that the next version of 0.10 LTSnpm WARN deprecated will be bundled with a version of npm@2, which has some smallnpm WARN deprecated backwards-incompatible changes made to `npm run-script` andnpm WARN deprecated semver behavior.

提示其实很清楚,是说npm版本太低,有一些特性不支持。参照提示,执行

npm -g install npm@latest

同样先出现一屏提示,毕竟npm在这个时刻还没有升级,等了几十秒钟后,出现了如下

......以上省略npm WARN deprecated backwards-incompatible changes made to `npm run-script` andnpm WARN deprecated semver behavior.Killed

如果不细心,就发现莫名其妙的结束了,而npm也没有更新。仔细看,会发现最后一行出现一个Killed提示。 到网上一搜,可以发现,这个是因为内存不够,服务器内存不够,于是程序就直接结束了。其实如果VPS内存较小的话,不仅在安装nodejs库的时候会出现问题,直接使用yum安装包的时候,也会提示Cannot allocate memory的Error。

Solution

升级VPS配置

最简单的办法当然是升级VPS配置了,这个去网页上点点按钮就可以,只要掏钱就行。 对个人玩家而言,不过是用VPS上搭点个人网站、折腾点小玩意,没多大流量,往往不需要太好的配置。于是,就采用下面一个办法了,增加交换文件。

SWAP FILE

我们平时听得更多的可能是交换分区,就是直接在硬盘上单独分一个区来当作交换空间使用。如果是在系统已经安装好后,不方便新建分区,可以使用文件来替代。 交换空间实质就是硬盘,在系统中用作内存的一个较大的缓存,操作系统内存不够用的时候,会把一些不常用的页替换到交换空间里面。所以,交换空间会改善一些系统的性能。 但交换空间不是越大越好,因为应用程序如果刚好用到了交换空间的数据,这个时候会有一个比较大的延迟,太大的交换分区会导致大量的应用程序高延迟的情况出现。所以,如果程序有大内存需求,最好的办法还是增加物理内存。买内存才是王道,交换空间只是一个稍微改善性能的途径而已。

CentOS7设置交换文件

检查系统条件

首先,检查系统是否已经设置了交换空间,原则上,交换空间尽量只设置一个。另外,也需要检查,系统是否有足够剩余硬盘空间。

swapon -s

可以通过swapon命令查看系统的交换空间,或者,也可以通过free命令来查看。

free -h

通过df命令,来检查系统的剩余硬盘空间。

df -h

创建swap文件

通过fallocate命令来新建一个交换文件,由于我的系统内存是512M,交换分区一般设置为内存了2~4倍,所以我设置成了1G,直接挂载到根目录下。

sudo fallocate -l 1G /swapfile

可以通过ls命令来查看

ls -lh /swapfile

结果如下

-rw-r--r-- 1 root root 1.0G Oct 30 11:00 /swapfile

启用交换文件

首先,修改/swapfile权限,只允许root用户访问。

sudo chmod 600 /swapfile

ls的结果如下

-rw------- 1 root root 1.0G Oct 30 11:00 /swapfile

接下来,通知系统创建交换空间

sudo mkswap /swapfile

最后,启用交换空间

sudo swapon /swapfile

可以通过swapon -s或者df -h命令来查看结果,交换空间应该会显示出来。

持久化配置

重启后,系统就不会再将/swapfile设置为交换空间了。 可以在/etc/fstab中添加如下

/swapfile   swap    swap    sw  0   0

这样,重启后系统会自动将/swapfile映射为交换空间。

最后

可以想象,如果实际内存需求远超物理内存大小,会频繁的出现内存和交换空间的数据交换情况,对硬盘的损伤是比较大的。而且,应用体验也会比较差。

所以,交换空间只是临时解决办法,买内存条才是王道。

以上是“CentOS7中怎么设置交换文件”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯