admin 管理员组文章数量: 1184232
【Linux】设置虚拟内存
原文链接:
很多人的Linux是安装在虚拟机上,或者运行在一些嵌入式设备上,没有足够的物理内存,如果在执行一些消耗内存的任务,比如编译软件,可能会造成系统崩溃,解决方法就是设置虚拟内存。。
设置步骤
这里采用设置交换文件的方法,执行以下命令
cd /var
sudo swapoff /var/swapfile
sudo dd if=/dev/zero of=/var/swapfile bs=1M count=2048
sudo mkswap /var/swapfile
sudo swapon /var/swapfile其中1024表示2048MB的虚拟内存,可以根据实际情况设置,一般为物理内存的两倍即可
最后,修改
/etc/fstab
,添加一行(保证重启系统后,swap分区设置还是有值)
/var/swapfile none swap sw 0 0注意:/u01/var/swapfile 是设置虚拟内存的路径,具体的路径可以执行设置
参考文章:
Linux增加虚拟内存
1 用例
给当前系统增加虚拟内存
2 静态
虚拟 是 的一种技术。它使得 认为它拥有连续的可用的 (一个连续完整的 ),而实际上,它通常是被分隔成多个 碎片,还有部分暂时存储在外部 上,在需要时进行 。目前,大多数操作系统都使用了虚拟内存,如Windows家族的“虚拟内存”;Linux的“交换空间”等。
3 动态
建立虚拟内存
- 找一个较大的空间
- df -h
- 建立swap文件,大小2G
- dd if=/dev/zero of=swapfile bs=1024000 count=2000
启用虚拟内存
将swap文件设置为swap分区文件
- mkswap swapfile
激活swap,启用分区交换文件
- swapon swapfile
注意:insecure permissions 0644, 0600 suggested.
- # chmod 600 swapfile
停用虚拟内存
- swapoff -v swapfile
4 查看内存和虚拟内存
free -m
5 开机启用swap
修改/etc/fstab
- vi /etc/fstab
/u01/var/swapfile none swap sw 0 0Linux设置Swap虚拟内存方法
原文链接:
Linux可以文件或者分区来当作虚拟内存。
首先查看当前的内存和swap 空间大小(默认单位为k, -m 单位为M):
free -m
查看swap信息,包括文件和分区的详细信息
swapon -s或者cat /proc/swaps
如果都没有,我们就需要手动添加交换分区。注意,OPENVZ架构的VPS是不支持手动添加交换分区的。
添加交换空间有两种选择:添加一个交换分区或添加一个交换文件。推荐你添加一个交换分区;不过,若你没有多少空闲空间可用, 则添加交换文件。
增加swap交换文件
1.使用dd命令创建一个swap交换文件
dd if=/dev/zero of=/home/swap bs=1024 count=1024000
这样就建立一个/home/swap的分区文件,大小为1G。
2.制作为swap格式文件:
mkswap /home/swap
3.再用swapon命令把这个文件分区挂载swap分区
swapon /home/swap
我们用free -m命令看一下,发现已经有交换分区了。
但是重启系统后,swap分区又变成0了。
4.为防止重启后swap分区变成0,要修改/etc/fstab文件
vi /etc/fstab
在文件末尾(最后一行)加上
/home/swap swap swap default 0 0
这样就算重启系统,swap分区还是有值。
5.删除swap交换文件
1、先停止swap分区
/sbin/swapoff /home/swap
2、删除swap分区文件
rm -rf /home/swap
3、删除自动挂载配置命令
vi /etc/fstab
这行删除
- /home/swap swap swap default 0 0
这样就能把手动增加的交换文件删除了。
注意:
- - 增加删除swap的操作只能使用root用户来操作。
- - 装系统时分配的swap分区貌似删除不了。
- - swap分区一般为内存的2倍,但最大不超过2G
使用分区来做SWAP(虚拟内存).
1. 使用fdisk来创建交换分区(假设 /dev/sdb2 是创建的交换分区)
2. 使用 mkswap 命令来设置交换分区:
mkswap /dev/sdb2
3. 启用交换分区:
swapon /dev/sdb2
4. 写入/etc/fstab,以便在引导时启用:
/dev/sdb2 swap swap defaults 0 0
5. 删除交换分区
步骤如下:
1、先停止swap分区
/sbin/swapoff /dev/sdb2
2、删除自动挂载配置命令
vi /etc/fstab
这行删除
/dev/sdb2 swap swap defaults 0 0
这样就能把手动增加的交换分区删除了。
版权声明:本文标题:从零开始学:详解Linux下的虚拟内存优化技巧 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1771014389a3540135.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论