linux交换分区swap扩容

SWAP(交换)分区是一种通过在硬盘中预先划分一定的空间,然后将把内存中暂时不常用的数据临时存放到硬盘中,以便腾出物理内存空间让更活跃的程序服务来使用的技术,其设计目的是为了解决真实物理内存不足的问题。但由于交换分区毕竟是通过硬盘设备读写数据的,速度肯定要比物理内存慢,所以只有当真实的物理内存耗尽后才会调用交换分区的资源。交换分区的创建过程很简单。为了让大家更明显地感受交换分区空间的变化,这里取出一个大小为 3GB 的主分区作为交换分区资源。

目前swap分区大小:

[root@bogon ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           475        244        231          4          0         73
-/+ buffers/cache:        170        305
Swap:         2047          0       2047
[root@bogon ~]# fdisk /dev/sdb 
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x0a6771d1.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-31457279, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-31457279, default 31457279): +3G
Partition 1 of type Linux and of size 3 GiB is set

Command (m for help): p

Disk /dev/sdb: 16.1 GB, 16106127360 bytes, 31457280 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0a6771d1

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6293503     3145728   83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

使用 SWAP 分区专用的格式化命令 mkswap,对新建的主分区进行格式化操作:

[root@bogon ~]# mkswap /dev/sdb1 
Setting up swapspace version 1, size = 3145724 KiB
no label, UUID=a2fd4938-5791-4010-adff-bb55ceb9a002

使用 swapon 命令把准备好的 SWAP 分区设备正式挂载到系统中。我们可以使用 free -m 命令查看交换分区的大小变化,由2047变为5119

[root@bogon ~]# swapon /dev/sdb1 
[root@bogon ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           475        247        228          4          0         73
-/+ buffers/cache:        172        303
Swap:         5119          0       5119

为了能够让新的交换分区设备在重启后依然生效,需要修改配置文件

[root@bogon ~]# vim /etc/fstab

### CentOS 扩容 SWAP 交换内存教程 在 CentOS 系统中,当物理内存不足时,可以通过扩展 SWAP 分区来提高系统的性能。以下是详细的扩容方法: #### 创建新的 Swap 文件 首先,在指定路径下创建一个新的 Swap 文件。可以使用 `dd` 命令完成此操作。例如,要创建一个大小为 2GB 的 Swap 文件,执行以下命令[^4]: ```bash dd if=/dev/zero of=/opt/swap bs=1M count=2048 ``` #### 设置文件权限 为了安全起见,设置新创建的 Swap 文件权限,使其仅可被 root 用户访问: ```bash chmod 600 /opt/swap ``` #### 格式化为 Swap 类型 将刚刚创建的文件格式化为 Swap 类型: ```bash mkswap /opt/swap ``` #### 启用 Swap 文件 启用新建的 Swap 文件以便立即生效: ```bash swapon /opt/swap ``` #### 验证 Swap 是否成功挂载 通过查看当前系统中的 Swap 使用情况确认新增加的 Swap 已经生效: ```bash free -m ``` 如果显示的新 Swap 容量正确,则说明已成功添加。 #### 修改 fstab 实现开机自动挂载 为了让新增的 Swap 文件在每次启动后仍然有效,需将其写入 `/etc/fstab` 文件中[^1][^2]: 编辑 `/etc/fstab` 文件并加入如下行: ```plaintext /opt/swap swap swap defaults 0 0 ``` 保存退出即可实现永久更改。 --- ### 注意事项 - **Swap的作用**:SWAPLinux 下的虚拟内存分区,其主要功能是在物理内存耗尽的情况下提供额外的空间供操作系统使用[^3]。 - 如果服务器上的硬盘空间有限,请合理规划所需增加的 Swap 大小以免浪费资源。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值