ubuntu修改虚拟内存(swap空间)

本文详细介绍了如何通过命令行操作增加Linux系统Swap空间大小,包括创建Swap文件、激活Swap分区以及检查Swap空间状态,确保系统运行流畅。

swap空间就是虚拟内存,在物理内存不足时,有较大的用处。

查看内存空间大小:free -m // m表示显示的字节单位是m(megabytes)

下面我们就来增加系统的 Swap 大小。

1.首先用命令free查看系统内 Swap 分区大小。
free -m

total used free shared buffers cached
Mem: 1002 964 38 0 21 410
-/+ buffers/cache: 532 470
Swap: 951 32 929

可以看到 Swap 只有951M,不符合 Oracle-xe-client 的安装要求。

2.创建一个 Swap 文件。
mkdir swap
cd swap
sudo dd if=/dev/zero of=swapfile bs=1024 count=100000

出现下列提示,上面命令中的 count 即代表swap文件大小。

记录了 100000+0 的读入
记录了 100000+0 的写出
102400000 字节 (102 MB) 已复制,0.74704 秒,137 MB/秒

把生成的文件转换成 Swap 文件
sudo mkswap swapfile

Setting up swapspace version 1, size = 102395 kB
no label, UUID=09fde987-5567-498a-a60b-477e302a988b

3.激活 Swap 文件。
sudo swapon swapfile

再次查看 free -m 的结果。

total used free shared buffers cached
Mem: 1002 967 34 0 22 410
-/+ buffers/cache: 534 467
Swap: 1053 32 1021

添加成功。

扩展:
如果需要卸载这个 swap 文件,可以进入建立的 swap 文件目录。执行下列命令。
sudo swapoff swapfile

如果需要一直保持这个 swap ,可以sudo -s换到root
然后把它写入 /etc/fstab 文件。

swapfilepath swap swap defaults 0 0

### 修改 Ubuntu 中的虚拟内存Ubuntu 系统中,可以通过调整交换空间swap space)来间接修改虚拟内存。以下是具体方法: #### 方法一:增加现有交换分区大小 如果已经存在一个交换分区,则可以先禁用当前的交换分区,然后创建一个新的更大的交换文件。 ```bash sudo swapoff -a ``` 接着创建新的交换文件并设置其大小,例如要创建一个 4GB 的新交换文件: ```bash sudo dd if=/dev/zero of=/swapfile bs=1G count=4 ``` 赋予合适的权限给这个交换文件: ```bash sudo chmod 600 /swapfile ``` 建立交换区域并将该文件标记为交换空间: ```bash sudo mkswap /swapfile ``` 启用新建的交换文件: ```bash sudo swapon /swapfile ``` 为了使更改永久生效,在 `/etc/fstab` 文件末尾添加如下行[^1]: ```text /swapfile none swap sw 0 0 ``` #### 方法二:通过命令行工具管理交换文件 也可以利用 `fallocate` 命令快速分配磁盘空间用于创建交换文件而不必像之前那样填充零值数据。同样以创建 4 GB 大小为例: ```bash sudo fallocate -l 4G /swapfile ``` 后续操作同上,即配置权限、初始化交换区以及激活它。 #### 验证交换空间状态 无论采用哪种方式,都可以使用以下命令查看当前系统的交换情况: ```bash swapon --show free -h ``` 上述命令会显示有关已安装交换设备的信息及其总量和可用量等详情。 #### 调整内核参数优化性能 有时还需要调节一些内核参数以便更好地控制何时应该使用物理 RAM 或者转向交换存储器。这通常涉及到编辑 `/proc/sys/vm/swappiness` 参数。较低数值意味着更倾向于保持应用程序的数据驻留在实际内存里;较高则表示更容易把不活跃页面移至交换区。默认情况下通常是 60 左右,可以根据需求适当降低此值来减少对硬盘读写的频率从而提高响应速度。 ```bash echo vm.swappiness=10 | sudo tee -a /etc/sysctl.conf sudo sysctl -p ``` 以上就是关于如何在 Ubuntu修改虚拟内存的一些基本指导[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值