小技巧如何管理配置 Linux下Swap交换分区

简介:

理解什么是swap分区

 

Swap是Linux下的虚拟内存分区,他的主要作用是在物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,让当前的程序来使用,这些内存释放出来的空间没有什么操作的程序,这些释放的内存将被保存到swap空间中,等到这写程序在运行的时候,再从swap虚拟空间来读取这些程序给内存来使用。这样中是在系统内存不够用的时候,进行交换。在针对Linux web服务器的时候,调整swap能提高系统很大的性能。

现在操作系统都突破了物理内存的限制,让程序可以操作大于物理内存的空间,虚拟内存想防火墙一样,让每个进程不受其他程序的干扰。

我们需要注意的是不是所以的物理内存数据都会被交换到swap中的,要是所有的内存都放在swap中肯的是不可能的,所以有一部分直接交换到文件系统。当这文件读取的时候,直接从文件系统调用不从swap调用程序文件。

早期的时候经常看见说swap不能超过128M,现在我们的服务器一般不存在这种问题最大可以swap到2048M的.swap空间文件的结构是分页的每一页的大小和内存页的大小是一样的,这样的好处是方便swap空间和内存之间的交换,旧版本的Linux实现Swap空间时,用Swap空间的第一页作为所有Swap空间页的一个“位映射”。这就是说第一页的每一位,都对应着一页Swap空间。如果这一位是1,表示此页Swap可用;如果是0,表示此页是坏块,不能使用。这么说来,第一个Swap映射位应该是0,因为,第一页Swap是映射页。

所以取消了Linux映射的方法。

一般创建swap有两种方法

第一种方法是在创建系统的时候添加swap分区

还有一种是在系统创建完之后再创建swap分区,或者创建临时的swap。我们需要注意的是,在创建系统的时候我们没有swap分区也是能正常安装部署系统的,只是当系统文件调用swa文件的的时候会发生错误,所以我们需要swap不是没有swap不一定能启动起来系统。

查看当前swap资源的使用情况:

Swapon –s free –m

clip_image002

下面我们来通过两个实例来完成

一、 们的swap分区不够用的时候我们怎么来创建swap分区

1、 要确定有足够的硬盘,在这里我们新添加一个硬盘

clip_image004

2、 创建硬盘然后直接硬盘的分区;

clip_image006

3、 查看交换分区现在有的交换分区的情况

clip_image008

4、 格式化我们新增加的硬盘然后在激活我们创建的swap分区

clip_image010

二、 创建一个基于大文件的swap分区

1、 首先我们使用dd命令来创建,dd命令在创建大文件的时候用的很多。我们在挂载swap的时候创建完大文件记得要格式化成swap格式

clip_image012

三、 创建完之后我们怎么来自动挂载

1、 修改配置文件挂载vi /etc/fstab

clip_image014

2、 然后自动挂载,swapoff 是卸载我们挂在的swap分区,swapon –a 是自动让我们挂载的分区生效,这样避免我们开机生效。

clip_image016

四、 如何卸载挂在的swap分区;使用swapoff 然后挂载的路径即可,小建议在使用Linux的时候要学会使用man

clip_image018



本文转自devilangel 51CTO博客,原文链接:http://blog.51cto.com/devliangel/1085444,如需转载请自行联系原作者


相关文章
|
2月前
|
网络协议 安全 Linux
如何配置Linux端的ftp?
如何配置Linux端的ftp?
142 64
|
13天前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
34 2
|
26天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
209 3
|
30天前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
2月前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
2月前
|
Linux 编译器 开发工具
快速在linux上配置python3.x的环境以及可能报错的解决方案(python其它版本可同样方式安装)
这篇文章介绍了在Linux系统上配置Python 3.x环境的步骤,包括安装系统依赖、下载和解压Python源码、编译安装、修改环境变量,以及常见安装错误的解决方案。
89 1
|
2月前
|
Ubuntu Linux
Linux服务器的自动启动可以在哪里进行配置?
Linux服务器的自动启动可以在哪里进行配置?
151 3
|
1月前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
67 0
|
1月前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
2月前
|
域名解析 负载均衡 网络协议
Linux网络接口配置不当所带来的影响
总而言之,Linux网络接口的恰当配置是保证网络稳定性、性能和安全性的基础。通过遵循最佳实践和定期维护,可以最大程度地减少配置错误带来的负面影响。
121 0