(转)Linux下增加交换分区的大小
场景:最近在Linux环境安装ELK相关软件时候发现机器特别的卡,所以就查看了Linux机器的内存使用情况,发现是内存和交换分区空间太小了。

对于虚拟机中的内存问题,可以直接通过更改虚拟机的硬件进行解决,只不过需要先关机再进行设置。
linux下增加swap的大小这个算是很基础的东西了。不过上帝赐给了人类一件非常好的礼物是遗忘。诚然,像增加swap的大小这样基础的操作,也常常在用到的时候发现已经忘了怎么去弄。搞的每次都要再去Internet上去查。所以索引在博客里记录下,以便以后用时能直接手到掂来。
增加swap大小的方法有两种:
一种是已经分过swap交换分区,不过分配不合理,所以可以通过增加swap文件来增加交换分区的大小;
另一种方法是通过增加swap分区大小来增加swap的大小。
1 通过swap文件增加
1.1 查看当前分区的大小
free -m
如上图所示。
1.2 创建交换文件
增加交换分区文件及大小,如果要增加4G大小的交换分区,则命令写法如下,其中的 count 等于想要的块大小。

当然根据bs指定的大小不同,我们也可以通过下面的文件增加:
dd if=/dev/zero of=/tmp/mem.swap bs=1M count=4096 (增加4G)或
dd if=/dev/zero of=swapfile bs=1024 count=1048576 (增加1G)
1.3 格式转换并挂载
#设置交换文件
mkswap /tmp/mem.swap #立即启用交换分区文件
swapon /tmp/mem.swap
1.4 三种确认是否增加成功的方法
[root@localhost cs408]# swapon -s
文件名 类型 大小 已用 权限
/tmp/mem.swap file 4194300 0 -1
/dev/sda3 partition 2097148 0 -2
[root@localhost cs408]# free -m
total used free shared buff/cache available
Mem: 3784 2561 684 8 538 1006
Swap: 6143 0 6143
[root@localhost cs408]# cat /proc/swaps
Filename Type Size Used Priority
/tmp/mem.swap file 4194300 0 -1
/dev/sda3 partition 2097148 0 -2
[root@localhost cs408]#
以上不难看出,第一、三两种方法效果相同。linux/unix的一个奇妙之处也在此,很多命令和直接查看某些文件或更改某些文件的值,效果是一样的。
以上操作,在系统重启后,swap文件的大小又会变回原大小,我们可以在/etc/fstab里增加下面的配置,使其重启后,我们刚刚的配置仍然有效。
vim /etc/fstab
/tmp/mem.swap swap swap defaults 0 0
如果想卸载掉上面的分区,可以通过swapoff完成:
swapoff /tmp/mem.swap
2 通过fdisk增加swap分区
该方法和方法1主要操作步骤大同小异。不过该方法要求硬件目前有未分配的空间。
2.1 我们先通过fdisk新增分区
fdisk /dev/sda
Command (m for help): n
通过n新建分区,选择为主分区,分区ID为82,即swap分区。保存退出。
2.2 接着对新建的分区进行格式化并挂载
mkswap /dev/sda4
swapon /dev/swap
完成后,参照方法一里的查看方法进行查看确认。新增完成后,在/etc/fstab里新增如下配置
/dev/sda4 swap swap defaults 0 0
(转)Linux下增加交换分区的大小的更多相关文章
- linux下增加swap分区
Swap交换分区概念 什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料: Linux divides its physical RAM ...
- Linux下swap(交换分区)的增删改
swap介绍 Linux 的交换分区(swap),或者叫内存置换空间(swap space),是磁盘上的一块区域,可以是一个分区,也可以是一个文件,或者是他们的组合.交换分区的作用是,当系统物理内存吃 ...
- Linux之添加交换分区
Linux下的交换分区我们可以随意改变大小,如果说日常生活中分区不够用,今天我们来举个例子如何添加. 1.首先是使用dd命令创建一个空文件,这个空文件的大小就是你要继续添加的swap的大小,比如我这里 ...
- Centos7不修改默认交换分区下添加交换分区
交换分区介绍 Linux系统中的交换分区是当物理内存(RAM)被充满时,作为物理内存的缓存来使用. 当系统需要更多的内存资源而物理内存已经充满,内存中不活跃的页就会被移动到交换分区上. 交换分区位于硬 ...
- linux两种增加交换分区(swap)的方法
在安装Oracle后,为使Oracle流畅运行,需要手动增加linux的交换分区(相当于Windows下的虚拟内存)的大小,本文介绍两种增加交换分区(swap)的方法. 第一种方法:新建分区 1.fd ...
- centos7.0下增加swap分区大小
承接上篇文章扩容磁盘空间后增加根分区的大小后,来扩容swap分区的空间 检查当前的swap分区情况 # free -m # free -g [root@localhost ~]# free -m to ...
- linux中增加swap分区文件的步骤方法
一.swap交换分区 Swap分区在系统的物理内存不够用的时候,把硬盘空间中的一部分空间释放出来,以供当前运行的程序使用.那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临 ...
- linux下硬盘的分区:
提到硬盘的分区,以前就是很乱,有什么主分区/扩展分区/逻辑分区等;它们有什么区别呢?现在简单的了解一下: 由于在MBR的主引导记录中的分区表里面最多只能记录4个分区记录,这个不够用啊,为了解决这个问题 ...
- Linux下调整根目录的空间大小
原文 一.目的 在使用CentOS6.3版本Linux系统的时候,发现根目录(/)的空间不是很充足,而其他目录空间有很大的空闲,所以本文主要是针对现在已有的空间进行调整.首先,先来查看一下系统的空间分 ...
随机推荐
- 《Python编程从入门到实践》第二章_变量和简单数据类型
什么是变量呢? 举例: >>> message = "Hello,Python!" >>> print (message) Hello,Pyth ...
- [项目记录]一个.net下使用HAP实现的吉大校园通知网爬虫工具:OAWebScraping
第一章 简介 本文主要介绍了在.NET下利用优秀的HTML解析组件HtmlAgilityPack开发的一个吉林大学校内通知oa.jlu.edu.cn的爬取器.尽管.Net下解析HTML文件有很多种选择 ...
- asp.net web api实现图片点击式图片验证码
现在验证码的形式越来越丰富,今天要实现的是在点击图片中的文字来进行校验的验证码,如图 这种验证码验证是验证鼠标是否选中了图片中文字的位置,以及选择的顺序,产生验证码的时候可以提供一组底图,然后随机获取 ...
- postgis 中的距离计算
最近在做一个项目,有一个功能想要实现类似于查询附近的人的功能.由于项目的原因数据库只能使用 postgresql,空间查询就使用了 postgis 来实现. 具体业务像这样:业务需要返回附近距自己 1 ...
- mongodb入门笔记
mongodb作为nosql中排名第一的数据库,近年来使用的人数越来越多,作为开发人员,非常有必要了解下mongodb数据库.下面就给大家介绍下mongodb数据库的基本知识,有不对的地方欢迎指正,Q ...
- maven下配置pom.xml
博主原创,转载请注明. 遇到的问题: 缺少依赖库.解决办法: 在build标签中添加: <plugin> <groupId>org.apache.maven.plugins&l ...
- [leetcode-557-Reverse Words in a String III]
Given a string, you need to reverse the order of characters in each word within a sentence whilestil ...
- 14.什么是jsp动作
JSP动作元素(action elements),动作元素为请求处理阶段提供信息.动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性,可选的内容,与开始标签匹配的结束标签. 包含的类 ...
- MySQL--当mysqldump --single-transaction遇到alter table
部分生产环境采用mysqldump --single-transaction的方式在夜间进行数据库备份,而同事恰好在备份期间执行了alter table操作,操作部分成功部分失败,为啥呢? 在mysq ...
- 今天真开心,终于知道怎么打包apk了
1.函数上下文的产生,并不是函数定义时决定的,而是函数调用时产生的:来个栗子 function creep(){return this;} console.log(creep()) var sneak ...