如何增加swap空间大小

如何增加swap空间大小,第1张

想在虚拟机里面安装oracle10g,发现默认的swap交换空间不满足最低要求,因为我分配的物理内存是1G,那么就按照要求需要2G的swap交换空间,默认只有1G的交换空间。添加swap交换空间的步骤如下:

第一步:确保系统中有足够的空间来用做swap交换空间,我使用的是KVM,准备在一个独立的文件系统中添加一个swap交换文件,在/opt/image中添加2G的swap交换文件

第二步:添加交换文件并设置其大小为2G,使用如下命令

[root@sense image]# dd if=/dev/zero of=/opt/image/swapbs=1024 count=2048000

过段时间就返回如下结果:

2048000+0 records in

2048000+0 records out

2097152000 bytes (2.1 GB) copied, 272.867 seconds, 7.7MB/s

第三步:创建(设置)交换空间,使用命令mkswap

[root@sense image]# mkswap /opt/image/swap

Setting up swapspace version 1, size = 2097147 kB

第四步:检查现有的交换空间大小,使用命令free

[root@sense image]# free -m

total used freeshared bufferscached

Mem: 1011 98921 0 1 875

-/+buffers/cache: 112 898

Swap: 1027 0 1027

或者检查meminfo文件

grep SwapTotal /proc/meminfo

第五步:启动新增加的2G的交换空间,使用命令swapon

[root@sense image]# swapon /opt/image/swap

第六步:确认新增加的2G交换空间已经生效,使用命令free

[[root@sense image]# free -m

total used freeshared bufferscached

Mem: 1011 99515 0 4 877

-/+buffers/cache: 113 897

Swap: 3027 0 3027

或者检查meminfo文件

grep SwapTotal /proc/meminfo

第七步:修改/etc/fstab文件,使得新加的2G交换空间在系统重新启动后自动生效

在文件最后加入:

/opt/image/swapswap swap defaults 0 0

Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么 *** 作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。

Linux系统下如何创建和删除swap分区?

创建Swap

首先,用拥有root权限的用户通过SSH远程登入或者本地终端登入到系统,进行创建Swap分区

dd if=/dev/zero of=/swap/swap bs=1024 count=1024000

if//输入

of//输出

bs//块儿大小

count//总大小

创建Linux交换文件

mkswap/swap/swap

立即激活/swap/swap交换文件

swapon/swap/swap

查看是否生效

[root@webserver~]#free-m

total used free shared buffers cached

Mem:2007 140 1867 0 8 35

-/+ buffers/cache:96 1911

Swap:972 0 972

通过以上输出信息可以看出,已经成功创建Swap分区

设置成永久生效

虽然现在已经生效,但是等到下次服务器重启之后。该Swap虚拟磁盘会失效,为保证永久生效,需要在/etc/fstab文件添加如下指令集:

echo "/swap/swap swap swap defaults 0 0"》》/etc/fstab

到这里,Swap分区已经完成创建了。

删除Swap分区

首先停止Swap分区

swapoff/swap/swap

删除swap分区文件

rm-rf/swap/swap

删除"/etc/swap" 指定文件

这样就可以手工添加和删除swap分区

代码如下:

sed -i “/‘\/swap\/ swap swap swap defaults 0 0’//” /etc/fstab

1、使用分区:

在安装OS时划分出专门的交换分区,空间大小要事先规划好,启动系统时自动进行mount。

这种方法只能在安装OS时设定,一旦设定好不容易改变,除非重装系统。

2、使用swapfile:(或者是整个空闲分区)

新建临时swapfile或者是空闲分区,在需要时设定为交换空间,最多可以增加8个swapfile。

交换空间的大小,与CPU密切相关,在i386系中,最多可以使用2GB的空间。

在系统启动后根据需要在2G的总容量下进行增减。

这种方法比较灵活,也比较方便,缺点是启动系统后需要手工设置。

以下是运用swapfile增加交换空间的步骤:

涉及到的命令:

free ---查看内存状态命令,可以显示memory,swap,buffer cache等的大小及使用状况;

dd ---读取,转换并输出数据命令;

mkswap ---设置交换区

swapon ---启用交换区,相当于mount

swapoff ---关闭交换区,相当于umount

步骤:

1、创建swapfile:

root权限下,创建swapfile,假设当前目录为"/",执行如下命令:

# dd if=/dev/zero of=swapfile bs=1024 count=500000

则在根目录下创建了一个swapfile,名称为“swapfile”,大小为500M,也可以把文件输出到自己想要的任何目录中,

个人觉得还是直接放在根目录下比较好,一目了然,不容易误破坏,放在其他目录下则不然了;

命令中选项解释:

---of:输出的交换文件的路径及名称;

---bs:块大小,单位byte,一般为1k即1024个byte;

---count:总块数即空间总大小,单位为块即k;

---if:读取的源空闲空间,为什么是zero,不清楚,先固定这么写吧;

2、将swapfile设置为swap空间

# mkswap swapfile

3、启用交换空间,这个 *** 作有点类似于mount *** 作(个人理解):

# swapon swapfile

至此增加交换空间的 *** 作结束了,可以使用free命令查看swap空间大小是否发生变化;

4、如果不再使用空间可以选择关闭交换空间,这个 *** 作有点类似于umount *** 作(个人理解)::

# swapoff swapfile

使用这种方法在每次系统启动时都需要手动设置、开启swapfile,比较麻烦,解决方法:

在 /etc/rc.d/rc.local 文件的末行下追加加以下内容:(编辑这个文件当然是用vi了~)

/sbin/swapon /swapfile

保存后退出,这样在系统启动后,swap空间就会自动加载了;

总结:在安装OS时一定要规划后swap大小,通常为内存的2倍,但是要考虑到以后增加内存的可能,所以可以考虑设的稍大一些,想在虚拟机里面安装oracle10g,发现默认的swap交换空间不满足最低要求,因为我分配的物理内存是1G,那么就按照要求需要2G的swap交换空间,默认只有1G的交换空间。

添加swap交换空间的步骤如下:

第一步:确保系统中有足够的空间来用做swap交换空间,我使用的是KVM,准备在一个独立的文件系统中添加一个swap交换文件,在/opt/image中添加2G的swap交换文件

第二步:添加交换文件并设置其大小为2G,使用如下命令

[root@sense image]# dd if=/dev/zero of=/opt/image/swap bs=1024 count=2048000

过段时间就返回如下结果:

2048000+0 records in

2048000+0 records out

2097152000 bytes (2.1 GB) copied, 272.867 seconds, 7.7 MB/s

第三步:创建(设置)交换空间,使用命令mkswap

[root@sense image]# mkswap /opt/image/swap

Setting up swapspace version 1, size = 2097147 kB

第四步:检查现有的交换空间大小,使用命令free

[root@sense image]# free -m

total used free sharedbuffers cached

Mem: 1011989 21 0 1875

-/+ buffers/cache:112898

Swap: 1027 0 1027

或者检查meminfo文件

grep SwapTotal /proc/meminfo

第五步:启动新增加的2G的交换空间,使用命令swapon

[root@sense image]# swapon /opt/image/swap

第六步:确认新增加的2G交换空间已经生效,使用命令free

[[root@sense image]# free -m

total used free sharedbuffers cached

Mem: 1011995 15 0 4877

-/+ buffers/cache:113897

Swap: 3027 0 3027

或者检查meminfo文件

grep SwapTotal /proc/meminfo

第七步:修改/etc/fstab文件,使得新加的2G交换空间在系统重新启动后自动生效

在文件最后加入:

/opt/image/swap swap swap defaults 0 0

我的 *** 作

[root@weblogic Server]# free

total used free sharedbuffers cached

Mem: 17858561753452 32404 0 385921036312

-/+ buffers/cache: 6785481107308

Swap: 20643761162064260

创建交换空间文件,1000M

[root@weblogic /]# dd if=/dev/zero of=/swapfile bs=1024 count=1000000

1000000+0 records in

1000000+0 records out

1024000000 bytes (1.0 GB) copied, 28.5423 seconds, 35.9 MB/s

[root@weblogic /]# mkswap swapfile

Setting up swapspace version 1, size = 1023995 kB

[root@weblogic /]# swapon swapfile 打开

[root@weblogic /]#swapoff swapfile 关闭

删除

swapoff swapfile

rm -rf swapfile


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11442619.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存