首页主机资讯Linux swap启动项怎么设置

Linux swap启动项怎么设置

时间2025-10-25 00:49:03发布访客分类主机资讯浏览308
导读:Linux Swap启动项设置指南 Swap是Linux系统中用于扩展虚拟内存的关键机制,当物理内存不足时,系统会将不活跃的内存数据暂存到硬盘的Swap空间,防止进程因内存耗尽被强制终止。以下是Swap启动项(开机自动启用)的详细设置步骤,...

Linux Swap启动项设置指南
Swap是Linux系统中用于扩展虚拟内存的关键机制,当物理内存不足时,系统会将不活跃的内存数据暂存到硬盘的Swap空间,防止进程因内存耗尽被强制终止。以下是Swap启动项(开机自动启用)的详细设置步骤,涵盖文件与分区两种常见形式:

一、前置准备:创建Swap空间

Swap空间可以是Swap文件(灵活易管理)或Swap分区(传统方式,需提前划分磁盘分区)。以下以Swap文件为例(推荐新手使用):

1. 创建Swap文件

使用fallocate命令快速生成指定大小的空文件(如4GB):

sudo fallocate -l 4G /swapfile

fallocate不可用,可用dd命令替代(速度较慢):

sudo dd if=/dev/zero of=/swapfile bs=1M count=4096

注:bs为块大小(1M),count为块数量(4096块=4GB),可根据需求调整。

2. 设置文件权限

Swap文件需严格限制为root读写,避免安全风险:

sudo chmod 600 /swapfile

注:权限设置为600(仅root可读写)是Linux系统的安全规范。

3. 格式化为Swap空间

使用mkswap命令将文件格式化为Swap格式:

sudo mkswap /swapfile

执行后会输出Swap空间的UUID等信息,无需手动记录。

二、启用Swap(临时生效)

格式化完成后,立即激活Swap空间(重启后失效):

sudo swapon /swapfile

可通过以下命令验证是否启用成功:

free -h      # 查看"Swap"行,显示已用/总大小
swapon --show # 显示当前启用的Swap文件/分区

三、设置开机自动启动(永久生效)

要让Swap在系统重启后自动启用,需将配置写入**/etc/fstab**(系统启动时自动挂载的配置文件):

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

注:

  • /swapfile:Swap文件的路径(需与创建时的路径一致);
  • none:无挂载点(Swap无需挂载点);
  • swap:文件系统类型(固定为swap);
  • sw:挂载选项(defaults的简化版,适用于Swap);
  • 0 0:dump备份(0表示不备份)、fsck检查顺序(0表示不检查)。

四、可选优化:调整Swap使用策略

1. 控制Swap使用积极性(swappiness参数)

swappiness(取值0-100)决定系统使用Swap的积极程度:

  • 默认值60:当物理内存使用率达40%时,开始使用Swap;
  • 低值(如10):减少Swap使用,优先保留内存(适合内存充足的服务器);
  • 高值(如100):积极使用Swap,释放更多内存给缓存(适合内存紧张的场景)。

临时调整(立即生效):

sudo sysctl vm.swappiness=10

永久调整(重启后保留):

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf

执行sysctl -p使配置立即生效。

2. 调整文件系统缓存压力(vfs_cache_pressure参数)

vfs_cache_pressure(取值0-100)控制内核回收用于目录和inode缓存的内存的积极性:

  • 默认值100:积极回收缓存,释放内存给应用程序;
  • 低值(如50):减少缓存回收,提升文件系统性能(适合频繁读写文件的场景)。

永久调整(添加到/etc/sysctl.conf):

echo 'vm.vfs_cache_pressure=50' | sudo tee -a /etc/sysctl.conf

执行sysctl -p使配置生效。

五、常见问题:删除Swap启动项

若需移除Swap启动项(如Swap文件不再需要),需执行以下步骤:

  1. 关闭Swap:
sudo swapoff /swapfile
  1. /etc/fstab中删除对应行:
sudo sed -i '/swapfile/d' /etc/fstab
  1. (可选)删除Swap文件:
sudo rm /swapfile

通过以上步骤,即可完成Linux系统中Swap启动项的设置与优化,确保系统在内存不足时能稳定运行。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux swap启动项怎么设置
本文地址: https://pptw.com/jishu/735184.html
Linux swap与内存区别 Linux swap效率影响因素

游客 回复需填写必要信息