标签 swap 下的文章

Linux 创建交换分区swap的两种方法

一、什么是SWAP

SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用.它和Windows系统的交换文件作用类似。


一般来说,目前根据大多人的一个普遍认知,建议交换内存的大小为物理内存的 1-2 倍。也就是说如果你有 2GB 内存, 那么交换空间大小应该介于2-4 GB。
若系统中没有配置交换分区,当物理内存耗尽后,系统可能会杀掉正在运行中的进程,从而导致系统崩溃。这里就给大家带来两种设置方法:

1.物理硬盘创建swap分区

2.生成swap文件(常用方法)

 

二、方法介绍

方法一:物理硬盘创建swap分区

这里就是在物理磁盘中创建一个分区,用来作为swap交互分区。 通常系统的第一块硬盘会被命名为/dev/vda,同时这块磁盘的分区会命名为/dev/vda1/dev/vda2 等,这里就先假设我们创建了一个/dev/vda3 的分区,并用这个分区来作为swap交互分区。 关于如何分区可以参考之前的文章《CentOS 系统的 VPS 首次如何分区并挂载数据盘》 的部分内容。

使用mkswap命令格式化这个分区:

mkswap /dev/vda3

激活交换分区:

swapon /dev/vda3

最后,将交换分区信息写入fstab文件,以便开机自动挂载:

echo "/dev/vdb3               swap                   swap    defaults        0 0" >> /etc/fstab 

 

方法二:创建swap文件(使用 fallocate 命令)

博主推荐用这种方法,因为这个是最简单、最快速的创建swap交换空间的方法,当然也是最常见的方法了。 

PS:有的同学可能要问为什么不用DD命令? emmm...这个嘛,这是博主最近才来了解的fallocate这个命令,貌似还是比较好用的。其实原理基本都差不多,就是创建一个文件块。

首先使用fallocate命令,创建一个文件:swapfile,文件名称、路径、大小可以自行设置,这里就放在根目录 /  下了。使用命令创建一个2G的文件:

fallocate -l 2G /swapfile

查看下创建的文件大小是否和设置的一致:

ls -lh /swapfile

更改文件的权限:

chmod 600 /swapfile

同样,使用mkswap命令格式化,虽然这个swapfile是个文件,但是我们把它当成是分区来挂载:

mkswap /swapfile

启用激活交换分区:

swapon /swapfile

最后,也是将交换分区信息写入fstab文件,以便开机自动挂载:

echo "/swapfile               swap                   swap    defaults        0 0" >> /etc/fstab 

 

.


Warning: in_array() expects parameter 2 to be array, null given in /www/users/HK1590886/WEB/usr/plugins/TopLamuLeimu/Plugin.php on line 85