0

0

如何创建swap交换分区 swap优化配置建议

P粉602998670

P粉602998670

发布时间:2025-07-10 14:51:01

|

975人浏览过

|

来源于php中文网

原创

swap交换分区用于在物理内存不足时提供临时存储,提升系统稳定性。创建swap主要有两种方式:使用磁盘分区或swap文件,推荐使用灵活的swap文件方式,步骤包括:确定大小、创建文件、设置权限、格式化、启用及配置开机挂载。优化建议包括:1. 调整swappiness值以控制换出内存页的倾向,服务器建议设为10~30;2. 设置vfs_cache_pressure以优化缓存回收策略,建议调高至150~200。注意事项有:不要长期依赖swap、ssd上慎用频繁读写、定期监控使用情况、swap文件更灵活而分区性能略优。合理配置swap能显著提升系统可靠性。

如何创建swap交换分区 swap优化配置建议

创建和优化Swap交换分区是Linux系统管理中一个非常实用的技能,尤其是在内存不足或者运行大型应用时,Swap可以起到“救命”的作用。虽然它不能完全替代物理内存,但合理配置能显著提升系统稳定性。

如何创建swap交换分区 swap优化配置建议

一、为什么需要Swap?

在实际使用中,有些程序会占用大量内存,比如数据库、虚拟机、编译工具等。当物理内存(RAM)用尽时,系统就会尝试将部分不常用的数据转移到Swap空间,从而释放内存给更需要的进程使用。如果没有Swap,系统可能会直接杀掉进程或者卡死。

如何创建swap交换分区 swap优化配置建议

不过要注意:Swap速度比内存慢很多,所以它的作用更多是“兜底”,而不是提高性能。


二、如何创建Swap分区?

创建Swap的方式主要有两种:使用单独的磁盘分区或创建Swap文件。这里以Swap文件为例,操作更灵活。

如何创建swap交换分区 swap优化配置建议

步骤如下:

  • 确定需要多大的Swap空间,一般建议是物理内存的一半到1倍之间。
  • 使用fallocate命令快速创建Swap文件:
sudo fallocate -l 4G /swapfile
  • 设置正确的权限:
sudo chmod 600 /swapfile
  • 格式化为Swap格式:
sudo mkswap /swapfile
  • 启用Swap文件:
sudo swapon /swapfile
  • 添加开机自动挂载,在/etc/fstab末尾添加一行:
/swapfile none swap sw 0 0

这样Swap就创建完成了,可以用free -h查看是否生效。


三、Swap配置优化建议

系统默认的Swap行为可能并不适合所有场景,可以根据需求调整以下参数来优化Swap表现。

Cutout.Pro抠图
Cutout.Pro抠图

AI批量抠图去背景

下载

1. 调整swappiness值

swappiness控制内核将内存页移出到Swap的倾向,取值范围是0~100。

  • 数值越低,越倾向于保留数据在内存中。
  • 默认一般是60,服务器建议设为10~30,桌面用户可适当高一些。

修改方式:

sudo sysctl vm.swappiness=20

永久生效需写入/etc/sysctl.conf

vm.swappiness=20

2. 设置vfs_cache_pressure

这个参数影响系统回收用于目录项和inode缓存的内存倾向。数值越高,回收越积极。

  • 默认是100,可以适当调高到150~200,让系统优先释放缓存而非使用Swap。

设置方法同上,添加:

vm.vfs_cache_pressure=150

四、Swap使用中的注意事项

  • 不要滥用Swap:Swap只是应急手段,长期依赖会导致系统变慢。
  • SSD硬盘慎用Swap频繁读写:虽然比机械硬盘快,但频繁写入仍会影响寿命。
  • 监控Swap使用情况:可以用tophtopfree命令实时查看。
  • Swap文件 vs Swap分区
    • Swap文件更方便,不需要重新分区;
    • Swap分区性能略好一点,适合长期稳定的环境。

基本上就这些。Swap配置不算复杂,但容易被忽略。根据实际使用场景合理设置,能让系统更稳定、更可靠。

相关专题

更多
数据库三范式
数据库三范式

数据库三范式是一种设计规范,用于规范化关系型数据库中的数据结构,它通过消除冗余数据、提高数据库性能和数据一致性,提供了一种有效的数据库设计方法。本专题提供数据库三范式相关的文章、下载和课程。

331

2023.06.29

如何删除数据库
如何删除数据库

删除数据库是指在MySQL中完全移除一个数据库及其所包含的所有数据和结构,作用包括:1、释放存储空间;2、确保数据的安全性;3、提高数据库的整体性能,加速查询和操作的执行速度。尽管删除数据库具有一些好处,但在执行任何删除操作之前,务必谨慎操作,并备份重要的数据。删除数据库将永久性地删除所有相关数据和结构,无法回滚。

2068

2023.08.14

vb怎么连接数据库
vb怎么连接数据库

在VB中,连接数据库通常使用ADO(ActiveX 数据对象)或 DAO(Data Access Objects)这两个技术来实现:1、引入ADO库;2、创建ADO连接对象;3、配置连接字符串;4、打开连接;5、执行SQL语句;6、处理查询结果;7、关闭连接即可。

346

2023.08.31

MySQL恢复数据库
MySQL恢复数据库

MySQL恢复数据库的方法有使用物理备份恢复、使用逻辑备份恢复、使用二进制日志恢复和使用数据库复制进行恢复等。本专题为大家提供MySQL数据库相关的文章、下载、课程内容,供大家免费下载体验。

251

2023.09.05

vb中怎么连接access数据库
vb中怎么连接access数据库

vb中连接access数据库的步骤包括引用必要的命名空间、创建连接字符串、创建连接对象、打开连接、执行SQL语句和关闭连接。本专题为大家提供连接access数据库相关的文章、下载、课程内容,供大家免费下载体验。

319

2023.10.09

数据库对象名无效怎么解决
数据库对象名无效怎么解决

数据库对象名无效解决办法:1、检查使用的对象名是否正确,确保没有拼写错误;2、检查数据库中是否已存在具有相同名称的对象,如果是,请更改对象名为一个不同的名称,然后重新创建;3、确保在连接数据库时使用了正确的用户名、密码和数据库名称;4、尝试重启数据库服务,然后再次尝试创建或使用对象;5、尝试更新驱动程序,然后再次尝试创建或使用对象。

402

2023.10.16

vb连接access数据库的方法
vb连接access数据库的方法

vb连接access数据库方法:1、使用ADO连接,首先导入System.Data.OleDb模块,然后定义一个连接字符串,接着创建一个OleDbConnection对象并使用Open() 方法打开连接;2、使用DAO连接,首先导入 Microsoft.Jet.OLEDB模块,然后定义一个连接字符串,接着创建一个JetConnection对象并使用Open()方法打开连接即可。

370

2023.10.16

vb连接数据库的方法
vb连接数据库的方法

vb连接数据库的方法有使用ADO对象库、使用OLEDB数据提供程序、使用ODBC数据源等。详细介绍:1、使用ADO对象库方法,ADO是一种用于访问数据库的COM组件,可以通过ADO连接数据库并执行SQL语句。可以使用ADODB.Connection对象来建立与数据库的连接,然后使用ADODB.Recordset对象来执行查询和操作数据;2、使用OLEDB数据提供程序方法等等。

217

2023.10.19

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

7

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 6.3万人学习

Git 教程
Git 教程

共21课时 | 2.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号