We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
https://blog.colinx.one/posts/%E5%9D%91%E7%88%B9%E7%9A%84%E9%98%BF%E9%87%8C%E4%BA%91-swap-%E7%9A%84%E9%87%8D%E8%A6%81%E6%80%A7/
在一次编译 VSCode 的项目中,跨越千山万水,解决重重依赖后,终于来到了编译环节。然而才开始没多久,就出现了一个匪夷所思的报错。 谷歌一番,又到 /var/log/message 里查看了一番系统日志,竟然说是内存爆满,进程被 kill 了。想来我阿里云的那台服务器内存的统计曲线基本就没超过一半,今儿个怎么会出现内存爆掉的情况。又是一顿折腾发现这台阿里云的机子 Swap 大小竟然为 0??Swap 为物理内存达到一定临界值之后,系统将磁盘的一部分空间作内存使用,一般在 Windows 系统上都是由系统自动管控,新安装的 Linux 桌面发行版也会在安装时提醒用户设置,这坑爹的阿里云在安装的时候没给我分配 Swap 分区? 吐槽归吐槽,问题还是要自己解决。网上各种 swap 分区的设置教程大部分都比较模糊,代码的参数及命令都没有解释清楚,给人一种看不懂的感觉~对于操作磁盘这种敏感操作,还是要尽量避免在半懂不懂的情况下进行这种高危操作,毕竟数据无价嘛。最后找到了一篇靠谱的教程,并在服务器端和树莓派端进行实践。 参考:https://linux.cn/article-9238-1.html 使用 fallocate 创建交换空间,我们首先在 / 目录下创建一个名为 swap_space 的文件。然后分配 4GB 到 swap_space 文件: fallocate -l 4G /swap_space 我们运行下面命令来验证文件大小: ls -lh /swap_space 然后更改文件权限,让 /swap_space 更安全: chmod 600 /swap_space 这样只有 root 可以读写该文件了。我们再来格式化交换分区(LCTT 译注:虽然这个 swap_space 是个文件,但是我们把它当成是分区来挂载): mkswap /swap_space 然后启用交换空间: swapon -s 每次重启后都要重新挂载磁盘分区。因此为了使之持久化,就像上面一样,我们编辑 /etc/fstab 并输入下面行: /swap_space swap swap defaults 0 0 保存并退出文件。现在我们的交换分区会一直被挂载了。我们重启后可以在终端运行 free -m来检查交换分区是否生效。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
https://blog.colinx.one/posts/%E5%9D%91%E7%88%B9%E7%9A%84%E9%98%BF%E9%87%8C%E4%BA%91-swap-%E7%9A%84%E9%87%8D%E8%A6%81%E6%80%A7/
在一次编译 VSCode 的项目中,跨越千山万水,解决重重依赖后,终于来到了编译环节。然而才开始没多久,就出现了一个匪夷所思的报错。
谷歌一番,又到 /var/log/message 里查看了一番系统日志,竟然说是内存爆满,进程被 kill 了。想来我阿里云的那台服务器内存的统计曲线基本就没超过一半,今儿个怎么会出现内存爆掉的情况。又是一顿折腾发现这台阿里云的机子 Swap 大小竟然为 0??Swap 为物理内存达到一定临界值之后,系统将磁盘的一部分空间作内存使用,一般在 Windows 系统上都是由系统自动管控,新安装的 Linux 桌面发行版也会在安装时提醒用户设置,这坑爹的阿里云在安装的时候没给我分配 Swap 分区?
吐槽归吐槽,问题还是要自己解决。网上各种 swap 分区的设置教程大部分都比较模糊,代码的参数及命令都没有解释清楚,给人一种看不懂的感觉~对于操作磁盘这种敏感操作,还是要尽量避免在半懂不懂的情况下进行这种高危操作,毕竟数据无价嘛。最后找到了一篇靠谱的教程,并在服务器端和树莓派端进行实践。
参考:https://linux.cn/article-9238-1.html
使用 fallocate 创建交换空间,我们首先在 / 目录下创建一个名为 swap_space 的文件。然后分配 4GB 到 swap_space 文件:
fallocate -l 4G /swap_space 我们运行下面命令来验证文件大小:
ls -lh /swap_space 然后更改文件权限,让 /swap_space 更安全:
chmod 600 /swap_space 这样只有 root 可以读写该文件了。我们再来格式化交换分区(LCTT 译注:虽然这个 swap_space 是个文件,但是我们把它当成是分区来挂载):
mkswap /swap_space 然后启用交换空间:
swapon -s 每次重启后都要重新挂载磁盘分区。因此为了使之持久化,就像上面一样,我们编辑 /etc/fstab 并输入下面行:
/swap_space swap swap defaults 0 0 保存并退出文件。现在我们的交换分区会一直被挂载了。我们重启后可以在终端运行 free -m来检查交换分区是否生效。
The text was updated successfully, but these errors were encountered: