标签 Swap 下的文章

添加swap分区和修改swapiness

Linux内存是由大块的内存页面。 释放页的内存,会发生“linux交换”和页面的内存复制从RAM预配置的硬盘空间。 Linux互换允许系统利用比最初可用物理内存更大的内存。

然而,交换也有缺点。 因为硬盘比RAM内存要慢得多,服务器的性能可能会大大减缓。 此外,交换抖动可以开始发生如果系统得到太多的文件交换淹没。

检查交换空间


在我们继续建立一个交换文件之前,我们需要检查是否启用了任何交换文件的总结互换使用。

swapon -s

如果没有返回,摘要是空的,不存在交换文件。

检查文件系统


我们知道后,我们没有启用交换文件,我们可以检查我们有多少空间的服务器 df 命令。 交换文件将512 mb——因为我们只使用了7%的/ dev /,注重科技进步,我们可以继续。

df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda              20642428   1347968  18245884   7% /

创建并启用交换文件


现在是时候使用dd命令创建交换文件本身:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=512k

“= / swapfile”指定文件的名称。 在这种情况下,叫swapfile。

随后我们将准备交换文件通过创建一个linux交换面积:

sudo mkswap /swapfile

结果显示:

Setting up swapspace version 1, size = 536866 kB

完成通过激活交换文件:

sudo swapon /swapfile

您将能够看到新的交换文件当你查看交换总结。

 swapon -s
Filename				Type		Size	Used	Priority
/swapfile                               file		524280	0	-1

这个文件将在服务器上持续到机器重启。 你可以确保交换通过添加到fstab文件是永久的。
打开文件:

sudo nano /etc/fstab

粘贴在下面:

/swapfile          swap            swap    defaults        0 0

防止文件被公开的,你应该在交换文件设置正确的权限:

chown root:root /swapfile
chmod 0600 /swapfile

如何配置Swappiness


操作系统内核可以调整频率依赖于通过一个配置参数被称为交换 swappiness 。 找到当前swappiness设置,类型:

cat /proc/sys/vm/swappiness
60

Swapiness可以值从0到100。 Swappiness近100意味着操作系统将交换频繁,通常,太早。 虽然交换提供了额外的资源,RAM交换空间要快得多。 任何时候有从RAM交换,它减慢。

swappiness值0意味着操作只会依靠它绝对需要时互换。 我们可以调整swappinesssysctl 命令:

如果我们再次检查系统swappiness,我们可以确认设置应用:

cat /proc/sys/vm/swappiness
10

 

让你的VPS自动应用此设置每次启动,您可以添加的设置 / etc / sysctl.conf 文件:

sudo nano /etc/sysctl.conf
# Search for the vm.swappiness setting.  Uncomment and change it as necessary.
    vm.swappiness=10

 

它可能是有用的设置swappiness为0,以确保你的VPS运行优化。

/dev/shm与swap的区别

引用网上:
/dev/shm
首先可以看出来/dev/shm是一个设备文件, 可以把/dev/shm看作是系统内存的入口, 可以把它看做是一块物理存储设备,
一个tmp filesystem, 你可以通过这个设备向内存中读写文件, 以加快某些I/O高的操作,比如对一个大型文件频繁的open, write, read,
据说oracle就利用了/dev/shm(shitou没用过oracle), 可以通过mount命令列出当前的/dev/shm的挂载的文件系统,

你可以直接对/dev/shm进行读写操作, 例如:

#touch /dev/shm/file1

既然是基于内存的文件系统,系统重启后/dev/shm下的文件就不存在了

 

Linux默认(CentOS)/dev/shm分区的大小是系统物理内存的50%, 虽说使用/dev/shm对文件操作的效率会高很多,
但是目前各发行软件中却很少有使用它的(除了前面提到的Oracle), 可以通过ls /dev/shm查看下面是否有文件, 如果没有就说明当前系统并没有使用该设备.

 

swap
而swap是Linux的虚拟内存, 即在硬盘上开辟空间当内存不够时充当内存使用, 因此可以理解为当/dev/shm空间不够时可以占用swap的空间

2025 年 5 月
 1234
567891011
12131415161718
19202122232425
262728293031  

广告

分类

近期评论

标签

历史上的今天

归档