Ubuntu 添加虚拟内存文件
添加交换文件
准备工作
查看当前系统中启用的交换空间(swap space)的详细信息:
sudo swapon --show
查看系统的内存和总交换空间的使用情况:
free -h
为了有足够的空间创建交换文件,可以在创建前先查看磁盘剩余空间:
df -h
其中挂载在
/下的磁盘是我们将要用来存放交换文件的磁盘。创建一个空文件:
sudo fallocate -l 4G /swapfile
文件的大小根据你的使用情况而定。如果你需要使用休眠功能,则建议总虚拟内存大小为物理内存大小 2 倍。如果不需要使用休眠功能,则总虚拟内存为物理内存大小 1 倍即可。
将空文件配置为交换空间:
sudo chmod 600 /swapfile # 确保文件访问权限正确
sudo mkswap /swapfile # 将文件标记为交换文件
启用交换空间:
sudo swapon /swapfile
验证交换空间已启用:
sudo swapon --show # 查看交换空间详细信息
free -h # 查看内存和总交换空间的使用情况
如果想要在开机时自动启用交换文件,编辑文件系统表
/etc/fstab,在文件末尾添加一行交换文件信息:/swapfile none swap sw 0 0
删除交换文件
禁用并删除交换文件:
sudo swapoff /swapfile # 禁用交换文件
sudo rm /swapfile # 删除交换文件
如果在
/etc/fstab中添加了自动挂载设置,则需要移除对应的配置行:/swapfile none swap sw 0 0 # 删除这一行
验证交换空间是否已删除
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
该数值表示系统在多大程度上选择缓存 inode 和 dentry 信息,而不是其他数据。 inode 和 dentry 是有关文件系统的访问数据,一般来说,这些数据的查询成本很高,而且请求频率也很高,因此建议尽量不缓存这些数据。
调整缓存压力:
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 添加虚拟内存文件的更多相关文章
- 添加Ubuntu的库文件路径
添加Ubuntu的库文件路径 http://blog.csdn.net/r91987/article/details/6879062 关于ubuntu添加共享库路径: 1. 将绝对路径写入 /etc/ ...
- 为linux系统添加虚拟内存swap分区
阿铭linux学习笔记之swap分区 一.作用: swap分区是交换分区,在系统物理内存不足时与swap进行交换,对web服务器的性能影响极大,通过调整swap分区大小来提升服务器的性能,节省资源费用 ...
- Ubuntu 添加用户到 sudoer
一.概述 新建用户后,我们可能需要该用户能够使用一些越权的东西.sudo命令能够暂时提升该用户的权限到root,但是前提是要求该用户存在与 sudoer list 中. sudoers 存储在 /et ...
- Ubuntu用户设置文件说明
Ubuntu用户设置文件说明 Ubuntu作为Linux的一个发行版本,自然具有Linux系统的多用户特性.因为经常会使用和管理Ubuntu的用户,现将Ubuntu系统下的User的个性化配置整理如下 ...
- ubuntu添加开机自启和sysv-rc-conf
此文ubuntu使用sysvinit,而非upstart UBUNTU添加开机自动启动程序方法 1. 开机启动时自动运行程序 Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程i ...
- 转:ubuntu添加用户adduser,并给予sudo权限
ubuntu添加用户adduser,并给予sudo权限 如何创建ubuntu新用户? 首先打开终端,输入:sudo adduser username正在添加用户“username”... 正在添加新组 ...
- Linux添加虚拟内存 && 修改Linux系统语言
Linux添加虚拟内存 首先执行free -h查看内存状况: total used free shared buff/cache available Mem: 1.8G 570M 76M 8.4M 1 ...
- Ubuntu 添加新用户并制定目录和shell
Ubuntu 添加新用户并制定目录和shell 分类: LINUX 2011-07-07 15:22:54 ubuntu新建的用户并没有新建相应的home目录和对应的shell环境. 下面就总结 ...
- ubuntu添加新硬盘进行分区,并挂载到/home
ubuntu添加新硬盘,进行分区,并挂载到/home目录. 1.查看已有的磁盘,可以看到sdb还没有分区. > sudo fdisk -l 可以看到各个硬盘的设备名,一般以sda.sdb.sdc ...
- 向Maven的本地库中添加jar文件
有时我们要用的 maven 依赖项在官方repo库中找不到,然而我们从其他渠道获得了依赖项中的所有jar文件,本文记录了如何向本地库添加jar文件. 从复杂到简单,有三种方法: 使用 maven 的仓 ...
随机推荐
- 2024年,AI驱动测试管理工具会有哪些发展前景呢?
随着人工智能技术的日新月异,2024年的测试管理工具将迎来全新的发展机遇.AI赋能将助力测试管理工具实现前所未有的智能化升级,为软件研发团队带来革命性的变革. 一.什么是AI? 人工智能(AI)是一种 ...
- Java类全路径冲突解决方法
1. 问题 今天在开发中遇到这样一个问题,A同事在导入了我们的实验SDK后,发现实验无法正常获取,查看日志发现了NoClassDefFoundError异常,无法加载的的类中逻辑比较简单,只依赖了另外 ...
- pysnmp 获取设备 mib
snmpwalk 指令获取设备 mib snmpwalk -v 1 -c public ip .1 > ip.mibs pysnmp 获取设备 mib 安装环境 pip3 install pys ...
- SpringBoot 启动时报错Unable to start embedded Tomcat
导读 最近公司有个gradle构建的工程,需要改造成maven方式构建(点我直达).转为maven后,启动时一直报tomcat错误,最终排查是因为servlet-api这个包导致的依赖冲突,将这个依赖 ...
- 使用scikit-learn构建模型
sklearn中还存在许多不同的机器学习模型可以直接调用,相比于自己撰写代码,直接使用sklearn的模型可以大大提高效率. sklearn中所有的模型都有四个固定且常用的方法,分别是model.fi ...
- 在IDEA中找不到Mapper报错
前言 相信大多数互联网公司的持久层框架都是使用 Mybatis 框架,而大家在 Service 层引入自己编写的 Mapper 接口时应该会遇到下面的情况: 我们可以看到,上面的红色警告在提示我们,找 ...
- ARP协议介绍与投毒攻击
目录 ARP是什么? ARP协议工作原理 ARP攻击原理 攻击软件 防范 Reference ARP是什么? ARP是通过网络地址(IP)来定位机器MAC地址的协议,它通过解析网络层地址(IP)来找寻 ...
- UE MultiLineTraceByChannel函数返回只有一个对象的问题
问题描述 MultiLineTraceByChannel,看函数名字是返回射线检测到的所有对象,实际使用过程中,发现返回的数组中只又一个对象. Multi Line Trace by Channel ...
- oeasy教您玩转vim - 66 - # 比较修改模式 vimdiff
vimdiff 回忆上次 上次有三种批量替换,分别是 :windo :bufdo :argdo 执行的{cmd}可以用|按顺序增加 update 自动更新 :set autowrite 自动写入 ...
- C#:进程之间传递数据
一.思路 在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯.常用的方法有 使用内存映射文件 通过共享内存DLL共享内存 使用SendMessage向另一进程发送WM_COPYDATA ...