Centos 系统swap虚拟内存添加与删除配置

本文提供了一步一步的指南,详细说明如何在Linux服务器上创建和删除swap分区,包括所需命令和注意事项,确保服务器性能优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.swap概述

    Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。 其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。


2.创建swap

[forlong401@dfdsfdsfs ~]# cd /var/

获取要增加的SWAP文件块

[forlong401@dfdsfdsfs var]# dd if=/dev/zero of=swapfile bs=1024 count=2048000

记录了2048000+0 的读入

记录了2048000+0 的写出

2097152000字节(2.1 GB)已复制,61.357 秒,34.2 MB/秒

创建SWAP文件

[forlong401@dfdsfdsfs var]# mkswap swapfile

mkswap: swapfile: warning: don't erase bootbits sectors

        on whole disk. Use -f to force.

Setting up swapspace version 1, size = 2047996 KiB

no label, UUID=fdafdsfdsb-3sfdb-4sfdc-bfdfd7-8sdfsafds89

激活SWAP文件

[forlong401@dfdsfdsfs var]# swapon swapfile

查看SWAP信息是否正确

[forlong401@dfdsfdsfs var]# swapon -s

Filename Type Size Used Priority

/var/swapfile                           file 2047996 0 -1

添加到fstab文件中让系统引导时自动启动

[forlong401@dfdsfdsfs var]# echo "/var/swapfile swap swap defaults 0 0">>/etc/fstab

[forlong401@dfdsfdsfs var]# free -m

             total       used       free     shared    buffers     cached

Mem:           488        478         10          0          4        132

-/+ buffers/cache:        341        147

Swap:         1999          0       1999


[forlong401@dfdsfdsfs var]# top -a


top - 21:04:55 up 3 days, 21:06,  2 users,  load average: 0.05, 0.25, 0.13

Tasks: 113 total,   1 running, 112 sleeping,   0 stopped,   0 zombie

Cpu(s):  0.3%us,  0.0%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:    52423423k total,   424234232k used,     942343k free,     523424k buffers

Swap:  2047996k total,        0k used,  2047996k free,   136088k cached


3.删除swap分区

       有时可能会需要删除swap分区,该如何正确进行删除分区哪?

  • 首先停止swap分区

    1. swapoff   /swap/swap


  • 删除swap分区文件

    1. rm -rf /swap/swap


  • 删除"/etc/swap"指定文件

    1. sed  -i "/'\/swa\/swap   swap   swap  defaults 0 0'//"  /etc/fstab


     这样就可以手工添加和删除swap分区。



CentOS 7中的swap(交换空间)是一种虚拟内存,它可以在物理内存(RAM)不足时,提供额外的内存空间。swap空间通常是一个独立的分区或一个文件,系统会在需要时将不常用的内存页交换到swap空间中,从而释放出更多的物理内存供当前运行的应用使用。 以下是一些关于CentOS 7中swap的常见操作和配置: ### 创建Swap文件 1. **创建Swap文件**: ```bash sudo fallocate -l 2G /swapfile ``` 这里的`2G`表示创建2GB的swap文件。 2. **设置正确的权限**: ```bash sudo chmod 600 /swapfile ``` 3. **将文件格式化为swap**: ```bash sudo mkswap /swapfile ``` 4. **启用Swap文件**: ```bash sudo swapon /swapfile ``` 5. **使Swap文件在重启后自动启用**: 编辑`/etc/fstab`文件,添加以下行: ```bash /swapfile none swap sw 0 0 ``` ### 检查Swap使用情况 可以使用以下命令检查当前的swap使用情况: ```bash swapon --show ``` 或者: ```bash free -h ``` ### 调整Swappiness参数 Swappiness参数控制内核使用swap空间的倾向。值越低,内核越不倾向于使用swap;值越高,内核越倾向于使用swap。默认值为60。 1. **查看当前的Swappiness值**: ```bash cat /proc/sys/vm/swappiness ``` 2. **临时更改Swappiness值**: ```bash sudo sysctl vm.swappiness=10 ``` 3. **永久更改Swappiness值**: 编辑`/etc/sysctl.conf`文件,添加以下行: ```bash vm.swappiness=10 ``` ### 移除Swap文件 如果不再需要swap文件,可以按照以下步骤移除: 1. **禁用Swap文件**: ```bash sudo swapoff /swapfile ``` 2. **从`/etc/fstab`中移除相关行**。 3. **删除Swap文件**: ```bash sudo rm /swapfile ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值