swap分区简介

Swap分区在系统的物理内存不够用的时候,把硬盘空间中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。

如果Swap空间用完,则服务进程无法启动,通常会出现“application is out of memory”的错误,严重时会造成服务进程的死锁。因此Swap空间的分配是很重要的。

通常情况下,Swap空间应大于或等于物理内存的大小,最小不应小于64M,通常Swap空间的大小应是物理内存的2-2.5倍。但根据不同的应用,应有不同的配置:如果是小的桌面系统,则只需要较小的Swap空间,而大的服务器系统则视情况不同需要不同大小的Swap空间。特别是数据库服务器和Web服务器,随着访问量的增加,对Swap空间的要求也会增加,具体配置参见各服务器产品的说明。

另外,Swap分区的数量对性能也有很大的影响。因为Swap交换的操作是磁盘IO的操作,如果有多个Swap交换区,Swap空间的分配会以轮流的方式操作于所有的Swap,这样会大大均衡IO的负载,加快Swap交换的速度。如果只有一个交换区,所有的交换操作会使交换区变得很忙,使系统大多数时间处于等待状态,效率很低。用性能监视工具就会发现,此时的CPU并不很忙,而系统却慢。这说明,瓶颈在IO上,依靠提高CPU的速度是解决不了问题的。

增加swap空间

一、 新增磁盘格式化为swap文件系统格式

1. 操作系统添加磁盘并分区

过程略...

2. 格式化/dev/sdb1 为swap格式

[root@drz ~]# mkswap /dev/sdb1

Setting up swapspace version 1, size = 5237152 KiB

no label, UUID=a27052be-af29-4b7b-b2ea-dd98cea07187

3. 启用swap空间

[root@drz ~]# free -m

total       used       free     shared    buffers     cached

Mem:          1990        291       1699          0          7        106

-/+ buffers/cache:        177       1813

Swap:         4097          0       4097

##启用swap空间

[root@drz ~]# swapon /dev/sdb1

##验证增加的swap空间

[root@drz ~]# free -m

total       used       free     shared    buffers     cached

Mem:          1990        295       1695          0          7        106

-/+ buffers/cache:        181       1809

Swap:         9212          0       9212

4.设置自动挂载

[root@drz ~]# vi /etc/fstab

tmpfs                   /dev/shm                tmpfs   defaults        0 0

devpts                  /dev/pts                devpts  gid=5,mode=620  0 0

sysfs                   /sys                    sysfs   defaults        0 0

proc                    /proc                   proc    defaults        0 0

/dev/sdb1               swap                    swap    defaults        0 0

二、 从已有磁盘中划分swap空间

1. 创建swap文件

[root@drz ~]# dd if=/dev/zero of=/home/swapfile bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes (1.1 GB) copied, 23.5135 s, 45.7 MB/s

##if 表示 infile,of 表示 outfile,bs=1M 代表增加的模块大小,count=1024 代表 1024 个模块,也就是 1G 空间

2. 将swapfile设置为swap分区文件

[root@drz ~]# mkswap /home/swapfile

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

on whole disk. Use -f to force.

Setting up swapspace version 1, size = 1048572 KiB

no label, UUID=6d05e7ef-20fe-4464-ac24-e22433343e26

3. 激活swap分区文件

##查看激活前swap大小

[root@drz ~]# free -m

total       used       free     shared    buffers     cached

Mem:          1990       1354        636          0          8       1130

-/+ buffers/cache:        215       1775

Swap:         9212          0       9212

##激活文件

[root@drz ~]# swapon /home/swapfile

##验证增加情况

[root@drz ~]# free -m

total       used       free     shared    buffers     cached

Mem:          1990       1355        635          0          8       1130

-/+ buffers/cache:        216       1774

Swap:        10236          0      10236

4.设置自动挂载

[root@drz ~]# vi /etc/fstab

[root@drz ~]# vi /etc/fstab

tmpfs                   /dev/shm               tmpfs   defaults          0 0

devpts                  /dev/pts               devpts  gid=5,mode=620    0 0

sysfs                   /sys                    sysfs   defaults         0 0

proc                    /proc                   proc    defaults         0 0

/home/swapfile          swap                    swap    defaults         0 0

【Linux】swap分区简介及空间增加方式的更多相关文章

  1. linux swap 分区那点事儿

    前言 前段时间在用程序对较大数据进行处理时,发现自己电脑原有内存不够用而经常行卡死,于是想到了利用swap分区来扩容内存的方式.现在做一个简要的总结: swap分区的概念 初试swap分区是在进入实验 ...

  2. 怎么设置Linux swap分区?方法教程

    如何设置Linux swap分区 看到不少朋友问linux下swap分区的问题,收集到一篇 不错的文章 ,分享下. 什么是Swap?Swap,即交换区,除了安装Linux的时候,有多少人关心过它呢?其 ...

  3. linux swap 分区调控(swap分区 lvm管理)

    注:linux swap分区 采用lvm管理,调控可以采用下面的方法 一.查看 swap    lv [root@testdb ~]# vgdisplay -v Finding all volume ...

  4. Linux Swap分区设定

    因为准备在linux上面安装Oracle数据库,据说swap分区小于4G容易失败,天啦噜的我连swap分区是啥都不是非常清楚, 大概有个印象吧,但先搞大了再说. 测试证明Ubuntu14默认的swap ...

  5. Linux记录-Linux Swap分区虚拟内存相关解决方案

    Swap用途:Swap意思是交换分区,通常我们说的虚拟内存,是从硬盘中划分出的一个分区.当物理内存不够用的时候,内核就会释放缓存区(buffers/cache)里一些长时间不用的程序,然后将这些程序临 ...

  6. 如何设置Linux swap分区

    看到不少朋友问linux下swap分区的问题,收集到一篇 不错的文章 ,分享下.什么是Swap?Swap,即交换区,除了安装Linux的时候,有多少人关心过它呢?其实,Swap的调整对Linux服务器 ...

  7. Swap 分区的2种方式 详解与例子

    安装完Linux系统后,swap分区太小怎么办,怎么可以扩大Swap分区呢?有两个办法,一个是从新建立swap分区,一个是增加swap分区.下面介绍这两种方法: 第一您必须有root权限,过程中一定要 ...

  8. linux系统修改Swap分区【转】

    在装完Linux系统之后自己去修改Swap分区的大小(两种方法) 在安装完Linux系统后,swap分区太小怎么办,怎么可以扩大Swap分区呢?有两个办法,一个是从新建立swap分区,一个是增加swa ...

  9. linux 交换分区 swap

    linux swap分区用来保证内存过载时也可以使用,是在磁盘级别对内存的一次扩展,swap分区必须是一个单独的分区 创建过程: 1.用fdisk 命令新建分区,在创建过程中通过L命令和t命令来调整分 ...

随机推荐

  1. (39.3) Spring Boot Shiro权限管理【从零开始学Spring Boot】

    在学习此小节之前您可能还需要学习: (39.1) Spring Boot Shiro权限管理[从零开始学Spring Boot] http://412887952-qq-com.iteye.com/b ...

  2. noip模拟赛 排序

    分析:因为序列是不严格单调的,所以挪动一个数其实就相当于把这个数给删了.如果a[i] < a[i-1],那么可以删掉a[i],也可以删掉a[i-1](!如果没考虑到这一点就只有90分),删后判断 ...

  3. 虚拟机win7 自动休眠

    1.问题描述:vmware 虚拟机,windows7系统.当一段时间不操作时,任务会休眠. 2.原因:win7系统自动休眠引起的. 3.解决方法:关闭win7系统的自动休眠. 依次打开“控制面板”-- ...

  4. U - Palindrome Manacher

    Andy the smart computer science student was attending an algorithms class when the professor asked t ...

  5. StackOverflow 这么大,它的架构是怎么样的

    原文地 [伯乐在线补充]:Nick Craver 是 StackOverflow 的软件工程师 & 网站可靠性工程师. 这是「解密 Stack Overflow 架构」系列的第一篇,本系列会有 ...

  6. 一个oracle bug

    最近发现一个RAC db的listener log增长特别快,于是去查看了一下. 先是查看了一下log的内容,发现都是 service_update这种内容,刷新的特别快. service_updat ...

  7. WEB安全:SQL注入

    SQL注入是站点和web应用程序中最常见的安全漏洞. 这样的恶意技术有非常多应用场景, 但(SQL注入)一般是指在数据输入的地方注入代码以利用数据库应用程序中的安全漏洞. SQL注入在接收用户输入的接 ...

  8. [Java][Spring][scurity]同步session控制,防止一个用户多次登录

    [Spring][scurity]同步session控制.防止一个用户多次登录 假设你希望限制单个用户仅仅能登录到你的程序一次,Spring Security通过加入以下简单的部分支持这个功能. 1. ...

  9. CentOS出错You don&#39;t have permission to access on this server

    检查http.conf发现没错之后.查找资料后发现时selinux的问题,所以须要关闭这个服务: 1 vi /etc/sysconfig/selinux 2 SELINUX=enforcing 改为 ...

  10. poj 1664 放苹果 (划分数)

    题意:中文题目,不解释... 题解: 第一种方法是暴力深搜:枚举盘子1~n放苹果数量的所有情况,不需要剪枝:将每次枚举的情况,即每个盘的苹果数量,以字典序排序,然后存进set里 以此去重像" ...