首页 > 系统相关 >Linux修改Swap分区大小及使用优先级

Linux修改Swap分区大小及使用优先级

时间:2024-08-05 11:51:20浏览次数:8  
标签:文件 swappiness 优先级 分区 sudo vm Swap Linux

    Swap是Linux系统中的一种虚拟内存,用于在物理内存不足时扩展可用内存。当系统的物理内存不足以满足所有运行进程的需求时,操作系统会将不常用的数据存储在Swap分区中。在某些情况下,可能需要增加Ubuntu系统上的Swap大小,以提供更多的可用内存。以下将介绍调整Swap分区大小和使用优先级的方法。 

 

一、修改Swap分区大小步骤:

1.检查当前系统上的Swap情况。如下命令将显示当前系统上已启用的Swap分区及其大小,如果没有显示任何输出,则表示系统当前没有启用Swap。

sudo swapon --show

2.要增加Swap大小,首先需要创建一个Swap文件。例如,要创建一个大小为16GB的Swap文件,可以使用以下命令:

sudo fallocate -l 16G /swapfile

3.创建Swap文件后,需要设置适当的权限以确保只有特权用户可以访问该文件。使用以下命令设置Swap文件的权限:

sudo chmod 600 <swapfile>  //注:<swapfile>是指上面创建的swapfile文件的路径

4.在设置Swap文件之前,需要对其进行格式化。使用以下命令对Swap文件进行格式化:

sudo mkswap <swapfile>

5.格式化Swap文件后,可以将其启用为系统的Swap分区。使用以下命令启用Swap文件:

sudo swapon <swapfile>

要使系统在启动时自动加载Swap文件,需要将其添加到/etc/fstab文件中。打开/etc/fstab文件,并在文件末尾添加以下行:

<swapfile>   none   swap   sw   0   0

6.运行以下命令来验证Swap设置:

sudo swapon --show

 

在增加Swap大小时,请注意以下几点:

  • 选择合适的Swap大小:根据系统的需求和可用硬盘空间,选择适当的Swap大小。一般来说,Swap的大小应该是物理内存的1到2倍,但也可以根据具体情况进行调整。
  • 确保硬盘空间足够:在创建Swap文件之前,请确保系统硬盘有足够的可用空间。Swap文件的大小将占用相应的磁盘空间。
  • 考虑硬盘类型:对于使用固态硬盘(SSD)的系统,Swap文件的创建和使用可能对硬盘寿命产生一定影响。在这种情况下,可以考虑将Swap分区创建在机械硬盘上,以减少对SSD的写入。
  • 考虑Swap使用频率:Swap是虚拟内存,其性能远不及物理内存。因此,过多地依赖Swap可能会导致系统性能下降。如果系统频繁使用Swap,可能需要考虑增加物理内存来改善性能。
  • 定期监控Swap使用情况:建议定期监控Swap的使用情况,以确保系统正常运行。可以使用free -h命令查看系统的内存和Swap使用情况。

 

二、调整Swap分区使用优先级:

    调整Swap分区后,如果发现即便物理内存用光了但虚拟内存的使用率还是上不来,则需要通过修改swappiness的值来提高Swap分区的使用优先级,调整范围为0-100,值越大交换分区越优先使用,如果需要优先使用内存 则调低swappiness的值即可。ubuntu系统中swappiness默认60,centos中默认10,所以在centos中swap内存的使用率是很低的。

具体调整swappiness值的方法如下:

1.查看当前swappiness值:

cat /proc/sys/vm/swappiness

2.临时修改swappiness值(重启后还原默认值):

方法(1):sudo sysctl vm.swappiness=10
方法(2):echo 10 > /proc/sys/vm/swappiness

3.永久修改swappiness默认值(重启生效):

#编辑该文件:
sudo gedit /etc/sysctl.conf

#在文档的最后加上:
vm.swappiness=10

 

swappiness值及对应策略说明:

swappiness值
SWAP策略
Vm.swappiness=0 这会导致linux系统几乎禁用SWAP,除非出现outofMemory的情况
vm.swappiness=1 这是除禁止SWAP之外的最保守的SWAP策略
vm.swappiness=10 通常在内存空间非常充足时,为了提高整体性能,会将值更改为10,以便有效降低SWAP使用频次
vm.swappiness=60 默认值,属于中庸策略
vm.swappiness=100 系统会及其激进地进行SWAP,这会严重影响整体性能



标签:文件,swappiness,优先级,分区,sudo,vm,Swap,Linux
From: https://www.cnblogs.com/blogs-of-lxl/p/18342935

相关文章

  • linux awk命令
    awk命令是Linux系统中非常强大的文本处理工具,它能够对文本文件进行分析、处理和格式化输出。以下是awk命令的一些常见用法和示例:一、基本语法awk命令的基本语法如下:awk'pattern{action}'input_filepattern:用于指定需要匹配的条件,可以是文本字符串或正则表达式。{......
  • 高端玩法之描述符的应用,描述符的优先级
    什么是描述符,故名思义就是用来描述一个对象的。你记住一个概念,在python中一切皆对象(Linux中一切皆文件)。所以类也是一个对象,描述符本身也是一个类,这个类是用来描述另外一个类的。语法特点:描述的是另一个类属性,注意只能是类的属性,不可以加在构造函数中(__init__就是构造函数)。描述......
  • vue项目部署linux
    #usernobody;修改userroot;使用nginx用户root启动Vue项目部署Linux系统在这里使用nginx作为代理工具,首先确保nginx已安装配置。转nginx安装:Nginx安葬修改nginx配置。#在http的节点中添加server,http中可以有多个server,server中可以有多个location规则serve......
  • 内存交换空间--Swap Space
    转载请注明出处:一、概述内存交换空间(SwapSpace)是计算机内存的一种补充,位于硬盘驱动器上。当物理内存(RAM)不足时,系统会将不活跃的页面(或称为内存页)移到交换空间中,以释放物理内存给更需要的进程。这种方式虽然比直接从物理内存中读取数据要慢,但能有效避免系统因内存不足而崩溃。......
  • linux 安装 nginx
    一、官网下载Nginx官网地址:http://nginx.org/en/download.html我下载的是最新稳定版 二、上传到服务器解压1、上传到指定的服务器地址上传的地址自己决定,我上传到/usr/Nginx。2、解压使用命令:tar-zxvf“你的Nginx压缩包”,我这里是:tar-zxvfnginx-1.24.0.t......
  • Linux系统内存管理API
    Linux系统内存管理API遵循POSIX标准的内存管理API:#include<unistd.h>​//brk和sbrk在内部维护一个指针p(void*),p指针指向当前堆内存中已经映射成功的最后一个字节的下一个地址位置void*sbrk(intptr_tincrement);功能:根据参数increment来调整p的位置,既可以映射内存,也......
  • Linux基础第一天
    Linux基础第一天Linux简介Linux是一种开源的操作系统,因此,Linux是一种免费的操作系统,可以在多种计算机设备上运行,包括台式机、笔记本电脑、服务器和嵌入式系统等。Linux操作系统具有稳定性、安全性和可扩展性等优点,广泛应用于服务器领域、云计算、超级计算机和移动设备等各种......
  • Linux中的目录结构和文件管理学习
    目录Linux的目录结构文件的查看和检索catmorelessheadtailgrep文件的压缩和解压缩压缩命令解压缩命令归档命令vim文本编辑器文本编辑器的作用文本编辑器的三种模式命令模式末行模式编辑模式Linux的目录结构/root:管理员的宿主(家)目录。/home:普通用户的......
  • Linux用户-sudo命令
    作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注我,我尽量把自己会的都分享给大家,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。Linux是一个多用户多任务操作系统,这意味着它可以同时支持多个用户登录并使用系统。但是我们之前所有的操作都是基于超级......
  • 如何使用Tar命令在Linux系统中解压各种文件格式
    如何使用Tar命令在Linux系统中解压各种文件格式大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!tar命令是Linux系统中一个非常强大的工具,主要用于归档和压缩文件。它支持多种压缩格式,如.tar、.gz、.bz2、.xz等。本文将详细介绍如何使用tar命令解压各......