添加交换文件

  1. 准备工作

    查看当前系统中启用的交换空间(swap space)的详细信息:

    sudo swapon --show

    查看系统的内存和总交换空间的使用情况:

    free -h

    为了有足够的空间创建交换文件,可以在创建前先查看磁盘剩余空间:

    df -h

    其中挂载在 / 下的磁盘是我们将要用来存放交换文件的磁盘。

  2. 创建一个空文件:

    sudo fallocate -l 4G /swapfile

    文件的大小根据你的使用情况而定。如果你需要使用休眠功能,则建议总虚拟内存大小为物理内存大小 2 倍。如果不需要使用休眠功能,则总虚拟内存为物理内存大小 1 倍即可。

  3. 将空文件配置为交换空间:

    sudo chmod 600 /swapfile  # 确保文件访问权限正确
    sudo mkswap /swapfile # 将文件标记为交换文件
  4. 启用交换空间:

    sudo swapon /swapfile

    验证交换空间已启用:

    sudo swapon --show  # 查看交换空间详细信息
    free -h # 查看内存和总交换空间的使用情况

    如果想要在开机时自动启用交换文件,编辑文件系统表 /etc/fstab,在文件末尾添加一行交换文件信息:

    /swapfile none swap sw 0 0

删除交换文件

  1. 禁用并删除交换文件:

    sudo swapoff /swapfile  # 禁用交换文件
    sudo rm /swapfile # 删除交换文件
  2. 如果在 /etc/fstab 中添加了自动挂载设置,则需要移除对应的配置行:

    /swapfile none swap sw 0 0  # 删除这一行
  3. 验证交换空间是否已删除

    sudo swapoff --show

高级设置

高级设置一般不用管

调整交换频率

查看当前交换频率:

cat /proc/sys/vm/swappiness
  • 0:尽量不使用交换空间,内存压力大。
  • 1:尽量使用交换空间,内存压力小。

调整交换频率:

sudo sysctl vm.swappiness=10

为了永久修改交换频率,我们需要编辑系统内核参数配置文件 /etc/sysctl.conf,在文件末尾加入一行:

vm.swappiness=10

调整缓存压力设置

查看缓存压力:

cat /proc/sys/vm/vfs_cache_pressure

该数值表示系统在多大程度上选择缓存 inodedentry 信息,而不是其他数据。 inodedentry 是有关文件系统的访问数据,一般来说,这些数据的查询成本很高,而且请求频率也很高,因此建议尽量不缓存这些数据。

调整缓存压力:

sudo sysctl vm.vfs_cache_pressure=50

同样,为了永久修改缓存压力设置,需要编辑系统内核参数配置文件 /etc/sysctl.conf,在文件末尾加入一行:

vm.vfs_cache_pressure=50

参考:How To Add Swap Space on Ubuntu 22.04 | Digital Ocean Tutorials

Ubuntu 添加虚拟内存文件的更多相关文章

  1. 添加Ubuntu的库文件路径

    添加Ubuntu的库文件路径 http://blog.csdn.net/r91987/article/details/6879062 关于ubuntu添加共享库路径: 1. 将绝对路径写入 /etc/ ...

  2. 为linux系统添加虚拟内存swap分区

    阿铭linux学习笔记之swap分区 一.作用: swap分区是交换分区,在系统物理内存不足时与swap进行交换,对web服务器的性能影响极大,通过调整swap分区大小来提升服务器的性能,节省资源费用 ...

  3. Ubuntu 添加用户到 sudoer

    一.概述 新建用户后,我们可能需要该用户能够使用一些越权的东西.sudo命令能够暂时提升该用户的权限到root,但是前提是要求该用户存在与 sudoer list 中. sudoers 存储在 /et ...

  4. Ubuntu用户设置文件说明

    Ubuntu用户设置文件说明 Ubuntu作为Linux的一个发行版本,自然具有Linux系统的多用户特性.因为经常会使用和管理Ubuntu的用户,现将Ubuntu系统下的User的个性化配置整理如下 ...

  5. ubuntu添加开机自启和sysv-rc-conf

    此文ubuntu使用sysvinit,而非upstart UBUNTU添加开机自动启动程序方法 1. 开机启动时自动运行程序    Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程i ...

  6. 转:ubuntu添加用户adduser,并给予sudo权限

    ubuntu添加用户adduser,并给予sudo权限 如何创建ubuntu新用户? 首先打开终端,输入:sudo adduser username正在添加用户“username”... 正在添加新组 ...

  7. Linux添加虚拟内存 && 修改Linux系统语言

    Linux添加虚拟内存 首先执行free -h查看内存状况: total used free shared buff/cache available Mem: 1.8G 570M 76M 8.4M 1 ...

  8. Ubuntu 添加新用户并制定目录和shell

    Ubuntu 添加新用户并制定目录和shell 分类: LINUX 2011-07-07 15:22:54   ubuntu新建的用户并没有新建相应的home目录和对应的shell环境.  下面就总结 ...

  9. ubuntu添加新硬盘进行分区,并挂载到/home

    ubuntu添加新硬盘,进行分区,并挂载到/home目录. 1.查看已有的磁盘,可以看到sdb还没有分区. > sudo fdisk -l 可以看到各个硬盘的设备名,一般以sda.sdb.sdc ...

  10. 向Maven的本地库中添加jar文件

    有时我们要用的 maven 依赖项在官方repo库中找不到,然而我们从其他渠道获得了依赖项中的所有jar文件,本文记录了如何向本地库添加jar文件. 从复杂到简单,有三种方法: 使用 maven 的仓 ...

随机推荐

  1. 韦东山freeRTOS系列教程之【第八章】事件组(event group)

    目录 系列教程总目录 概述 8.1 事件组概念与操作 8.1.1 事件组的概念 8.1.2 事件组的操作 8.2 事件组函数 8.2.1 创建 8.2.2 删除 8.2.3 设置事件 8.2.4 等待 ...

  2. 拟合算法与matlab工具包实现

    与插值问题不同,在拟合问题中不需要曲线一定经过给定的点.拟合问题的目标是寻求一个函数(曲线),使得该曲线在某种准则下与所有的数据点最为接近,即曲线拟合的最好(最小化损失函数) 目录 一.插值和拟合的区 ...

  3. Spring AOP面向切面编程核心概念

    横切关注点 对那些方法进行拦截,拦截后怎么处理,这些就叫横切关注点 比如:权限认证.日志.事务 通知 Advice 在特定的切入点上执行的增强处理,有5种通知 用途:记录日志.控制事务.提前编写好通用 ...

  4. MakeSense标注指南

    1.网址 https://www.makesense.ai/ 2.操作流程 2.1 导入 点击get started 点击drop images,上传图片 选择obeject detection 新建 ...

  5. 【RocketMQ 系列】 RocketMQ 双主双从(同步双写) 集群搭建

    1. 各角色介绍 Producer:消息的发送者:举例:发信者 Consumer:消息接收者:举例:收信者 Broker:暂存和传输信息:举例:邮局 NameServer:管理Broker:举例:各个 ...

  6. mysql 删除数据表报错 表删除时 Cannot delete or update a parent row: a foreign key constraint fails 异常处理

    mysql 删除数据表报错 表删除时 Cannot delete or update a parent row: a foreign key constraint fails 异常处理 MySQL报错 ...

  7. 操作系统|C语言模拟实现首次适应和最佳适应两种内存分配算法以及内存回收

    两种算法 首次适应 首次适应算法从空闲分区表的第一个表目起查找该表,把最先能够满足要求的空闲区分配给作业,这种方法目的在于减少查找时间.为适应这种算法,空闲分区表(空闲区链)中的空闲分区要按地址由低到 ...

  8. Python Kafka客户端confluent-kafka学习总结

    实践环境 Python 3.6.2 confluent-kafka 2.2.0 confluent-kafka简介 Confluent在GitHub上开发和维护的confluent-kafka-pyt ...

  9. Sysbench 使用总结

    Sysbench使用总结 实践环境 CentOS 7.8 Sysbench 1.0.20 下载地址:https://github.com/akopytov/sysbench/archive/refs/ ...

  10. 【WSDL】04 SpringBoot整合CXF

    ApacheCXF框架对WSDL的信息几乎完全屏蔽了 能够更快速更方便的构建WebService 这里参考的视频地址是: https://www.bilibili.com/video/BV1Kz4y1 ...