`

为Linux配置SWAP文件

阅读更多
由于未知原因,开发服务器没有配置swap(交换分区)。

虽然有4GB物理内存撑场面,但还是架不住多个tomcat+jetty的啃食,服务器频频死机!

这时候增加SWAP物理分区是不可能了,但我们可以通过增加swap文件的方式增加swap!

先看看我们当前的内存占用情况:
free

引用
             total       used       free     shared    buffers     cached
Mem:       4194304    4183512      10792          0      18588    1047644
-/+ buffers/cache:    3117280    1077024
Swap:            0          0          0


当前,交互分区设置为0:
引用
Swap:            0          0          0


通过dd命令增加swap:
dd if=/dev/zero of=/var/swap bs=1024 count=4096000

引用
4096000+0 records in
4096000+0 records out
4194304000 bytes (4.2 GB) copied, 31.4589 seconds, 133 MB/s


我们将swap文件写在/var/swap

参数:
  • if 输入
  • of 输出
  • bs 块大小
  • count 总大小


一般SWAP通常是物理内存的1.5~2倍,这里的物理内存达到4GB以上,分配4GB即可!

这里的服务器物理内存为4194304,也就是4.2GB,我们把swap设置4GB,故count=4096000

同时,我们需要创建该文件:

mkswap /var/swap

引用
Setting up swapspace version 1, size = 4194299 kB


加载该文件:
swapon /var/swap


看看swap是否生效:

free

引用
             total       used       free     shared    buffers     cached
Mem:       4194304    4172128      22176          0       5268    1048536
-/+ buffers/cache:    3118324    1075980
Swap:      4095992          0    4095992


当前,交互分区设置为4095992:
引用
Swap:      4095992          0    4095992


查看swap当前状态:

cat /proc/swaps

引用
Filename                                Type            Size    Used    Priority
/var/swap                               file            4095992 0       -1


每次开机执行swap加载命令太烦人了,通过修改/etc/fstab,启动时自动加载SWAP!
在该文件末尾中追加:
引用
/var/swap               swap                    swap    defaults        0 0


如果不再需要swap,可以清理该分区:
swapoff /var/swap


注:top命令下,想关参数含义

    * %mem 内存使用率
    * virt  虚拟内存
    * res  常驻内存
    * shr  共享内存

VIRT:virtual memory usage。Virtual这个词很神,一般解释是:virtual adj.虚的, 实质的, [物]有效的, 事实上的。到底是虚的还是实的?让Google给Define之后,将就明白一点,就是这东西还是非物质的,但是有效果的,不发生在真实世界的,发生在软件世界的等等。这个内存使用就是一个应用占有的地址空间,只是要应用程序要求的,就全算在这里,而不管它真的用了没有。写程序怕出错,又不在乎占用的时候,多开点内存也是很正常的。

RES:resident memory usage。常驻内存。这个值就是该应用程序真的使用的内存,但还有两个小问题,一是有些东西可能放在交换盘上了(SWAP),二是有些内存可能是共享的。
SHR:shared memory。共享内存。就是说这一块内存空间有可能也被其他应用程序使用着;而Virt - Shr似乎就是这个程序所要求的并且没有共享的内存空间。

DATA:数据占用的内存。如果top没有显示,按f键可以显示出来。这一块是真正的该程序要求的数据空间,是真正在运行中要使用的。



继续top,等待swap产生作用……
4
3
分享到:
评论

相关推荐

    Linux服务器配置与管理:swap交换分区管理.pptx

    在Linux系统中,swap交换分区的作用类似于Windows系统中“虚拟内存”,当有程序被调入内存后,但是该程序又不是常被CPU所取用时,那么这些不常被使用的程序将会被放到硬盘的swap交换分区当中,而将速度较快的内存空间释放...

    如何创建Linux的swap交换分区文件的方法步骤

    如何创建Swap文件 1. 创建一个用于交换的文件 sudo fallocate -l 1G /swapfile 如果faillocate未安装或者您收到错误消息,fallocate failed: Operation not supported则可以使用以下命令创建交换文件: sudo dd ...

    Linux系统中swap分区的设置与增加/删除

    我们都知道在安装Linux系统时在分区时可以分配swap分区,而系统安装后(在运行中)如何建立或调整swap分区...下面这篇文章主要给大家介绍了关于Linux系统中swap分区的设置与增加/删除的相关资料,需要的朋友可以参考下

    Linux之分配 swap 分区详解

    文件系统管理-4.1分配swap分区 写在前面:自己写完检查可能会有所纰漏,读者们如若发现哪里有错误,可在下方留言或私信我,我会第一时间改正 1. free 命令 free 查看内存与 swap 分区使用状况 cached(缓存):是指...

    安装文件Red hat Linux AS4.0安Red hat Linux AS4.0安装

    Red hat Linux AS4.0安Red hat Linux AS4.0安装Oracle9.2.04详细步骤2008-11-06 17:55官方论坛 http://www.oracle.com.cn tzzxcb 下面以 $ 开头的命令都是由oracle执行的 # 开头的命令都是由root执行的 一、 ...

    Linux基础知识与系统管理教学课件-pdf.rar

    9.4 文件系统管理-分配swap分区 10 Shell基础 10.1 Shell基础-概述 10.2 Shell基础-脚本执行方式 10.3.1 Shell基础-Bash基本功能-历史命令与补全 10.3.2 Shell基础-Bash基本功能-别名与快捷键 10.3.3 Shell基础-...

    linux的文件系统层级结构图

    /boot linux内核及引导系统程序所需的文件目录。安装系统分区的时候一般要分一个boot分区。常见分区:/boot 200M swap内存的1.5倍,其余的都给/. /dev 设备文件目录比如声卡磁盘光 /etc 操作系统的配置文件 /home ...

    linux教程——很使用的那种

    linux中的文件(普通文件或设备文件等)都必须有挂在点,只有挂载到一个目录下才能访问,swap分区是不需要挂载点的,在分区的时候,将文件系统类型选为swap,挂载点自动会变为灰色。一般linux中的swap大小为内存的两倍。...

    Linux基础知识与系统管理视频.rar

    9.4 文件系统管理-分配swap分区 10 Shell基础 10.1 Shell基础-概述 10.2 Shell基础-脚本执行方式 10.3.1 Shell基础-Bash基本功能-历史命令与补全 10.3.2 Shell基础-Bash基本功能-别名与快捷键 10.3.3 Shell基础-...

    Linux7.7设置交换分区SWAP的方法

    Linux系统的Swap分区,即交换分区,通常也称为虚拟内存,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自...

    Linux检查Swap交换空间的五个命令小结

    Linux下可以创建两种类型的交换空间,一种是swap分区,一种是swap文件。前者适合有空闲的分区可以使用,后者适合于没有空的硬盘分区,硬盘的空间都已经分配完毕。例如:安装redhat的时候,你可以默认划分硬盘空间,...

    Linux命令笔记

    3:apropos 查看配置文件信息 语法:apropos 配置文件 4:--help 查看命令主要选项 语法:命令 --help 5:info 获取帮助信息 语法:info 命令 6:help 获取Shell内置命令的帮助信息 语法:help 命令 7:apt-get 安装卸载...

    Linux下利用一点点cpu资源,压缩内存。(内存越少越好用)

    由于文件不好找,我分享在这里 ##如果你使用的是树莓派zero,zero w,zero 2w那么这个东西很适合你 ##zero 2w配置 1GHz 四核64位 SoC Arm Cortex-A53 CPU 512MB LPDDR2 SDRAM ##512MB显然不够用

    CentOS7(Linux)详细安装教程(图文详解)+报错解析

    CentOS 7更新内核版本为3.10.0,新版本的内核将对swap内存空间进行压缩,这将显著提高I/O性能,优化KVM虚拟化支持。在文件系统方面,CentOS 7默认支持XFS文件系统,并更新了KVM,使其可以支持ext4和XFS快照。 而在...

    redhat linux教材20课程学习文档

    第一部分 Linux简介和原理介绍 第一章 概述 ...三、 Linux 的技术资源(获取途径、以网上链接为主、Linux社区分类介绍) 四、 GNU通用公共许可证(GPL) 五、 Linux发行版 六、 index(关键词索引)

    Linux 2.6.19.x 内核编译配置选项简介

    使用交换分区或者交换文件来做为虚拟内存 System V IPC System V进程间通信(IPC)支持,许多程序需要这个功能.必选,除非你知道自己在做什么 IPC Namespaces IPC命名空间支持,不确定可以不选 POSIX Message Queues ...

    Linux黑客命令行.docx

    Linux必会命令行大全,新手必看 系统信息 arch 显示机器的处理器架构 dmidecode -q 显示硬件系统部件-(SMBIOS/DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试...

    linux.chm文档

    umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用 mount /dev/fd0 /mnt/floppy 挂载一个软盘 mount /dev/cdrom /mnt/cdrom 挂载一个cdrom或dvdrom mount /dev/hdc ...

    LINUX 20招

    快速关闭Linux系统 最新版本的Linux/UNIX系统借鉴了大型机的技术,采用了抗掉电的日志式文件系统,可以自动跟踪保存用户数据,自动同步刷新文件系统,用户完全可以随手关闭电源,从而达到快速关闭系统的目的。...

Global site tag (gtag.js) - Google Analytics