当前位置: 首页 > news >正文

深入了解 swap:作用、局限与分区建立

什么是swap?

swap,也就是常说的交换分区,有时也被称作交换空间,它本质上是磁盘上的一块特殊区域。在物理内存空间告急时,内核会把内存中闲置的内存页写入交换区,这样就能腾出内存空间给活跃的进程使用,这便是 swap 的核心作用。

不过,swap 也存在明显的缺点。由于它位于磁盘上,和物理内存相比,读写数据的速度要慢得多。所以如果过度使用 swap,很可能会导致系统性能下降。基于此,如果内存经常无法满足工作负载的需求,更合理的做法是考虑提升内存性能,比如更换更大容量的内存,而不是单纯依赖交换空间。

值得一提的是,有些容器管理工具(例如 Docker、k8s)在创建容器时会自动关闭 Swap。这是因为容器属于轻量级虚拟化技术,它们与主机共享物理内核。Swap 的主要作用是在物理内存不足时将数据移动到磁盘上,但容器内的进程本应受到资源限制,所以在容器内使用 Swap 可能无法达到预期效果,还可能引发性能问题。

如何建立新的 swap 分区

首先是创建交换分区。可以使用 parted 或 fdisk 工具来创建所需大小的分区,并将其文件系统类型设置为 linux-swap。创建分区之后,要记得运行 udevadm settle 命令,这个命令会等待系统检测到新分区,并在 /dev 中创建关联的设备文件。

然后是格式化设备。这一步需要使用 mkswap 命令,例如:mkswap /dev/vdb2。

之后是激活交换空间,使用 swapon 命令即可,比如:swapon /dev/vdb2。

如果想要持久激活交换空间,就需要在 /etc/fstab 文件中添加一个条目。例如:UUID=39e2667a-9458-42fe-9665-c5c854605881 swap swap defaults 0 0 。这里需要说明的是,第二个字段通常是为挂载点保留的,但由于交换设备无法通过目录结构访问,所以该字段用占位符值 swap 即可;第三个字段是文件系统类型,交换空间的文件系统类型就是 swap。

最后,记得运行 systemctl daemon-reload 命令,或者重启服务器,这样才能让 systemd 注册新的配置。

http://www.lryc.cn/news/623059.html

相关文章:

  • Hadoop面试题及详细答案 110题 (16-35)-- HDFS核心原理与操作
  • 鸿蒙应用开发和Vue网页开发中生命周期的区别
  • (论文速读)ViDAR:视觉自动驾驶预训练框架
  • leetcode hot100数组:缺失的第一个正数
  • Winsows系统去除右键文件显示的快捷列表
  • Win11家庭版docker安装Minio
  • windows环境下使用vscode以及相关插件搭建c/c++的编译,调试环境
  • 93、23种设计模式之抽象工厂模式
  • MySQL建表练习
  • GaussDB 数据库架构师修炼(十三)安全管理(3)-数据库审计
  • 人工智能中的(特征选择)数据过滤方法和包裹方法
  • Linux 下 安装 matlab 2025A
  • 安卓11 12系统修改定制化_____修改系统 解锁system分区 去除data加密 自由删减系统应用
  • python线程学习
  • Leetcode 14 java
  • AI 云电竞游戏盒子:从“盒子”到“云-端-芯”一体化竞技平台的架构实践
  • WSL 配置文件 wsl.conf 设置
  • Windows 基于ACL(访问控制列表)的权限管理
  • LeetCode 55.跳跃游戏:贪心策略下的可达性判断
  • Windows 操作系统 - Windows 恢复浏览器标题栏颜色
  • tensorrt-llm0.20.0:Prometheus3.5.0通过间接采集,进行性能指标分析
  • AirReceiverLite:轻松实现手机隔空投屏
  • 自动驾驶中的传感器技术24.1——Camera(16)
  • 电路方案分析(二十二)适用于音频应用的25-50W反激电源方案
  • 40 C++ STL模板库9-容器2-vector
  • 下载数据集文件夹权限错误问题解决方案
  • PHP域名授权系统网站源码/授权管理工单系统/精美UI/附教程
  • 西门子SMART PLC监控时间戳问题BUG修复
  • weapp:按钮去除背景
  • 云计算-Kubernetes+Istio 实现金丝雀发布:流量管理、熔断、流量镜像、ingreess、污点及pv案例实战