Ubuntu swap
问:我是一个Ubuntu 14.04 LTS版本的新手。我需要一块额外的swap文件来提高我Ubuntu服务器的性能。我怎样才能通过SSH连接用相关命令为我的Ubuntu 14.04 LTS 增加一块swap分区。
Swap文件除了作为一块磁盘存储以提高Ubuntu系统的内纯使用效率意外,什么都不是,在本教程,你将会学到如何在Ubuntu系统上去创建以及使用Swap文件。
在Ubuntu服务器版或者桌面版,什么是Swap文件?
作为系统管理员是很有必要在系统安装完成后为其添加额外的swap文件,而swap文件也可以让Ubuntu 去使用硬盘去提高虚拟内存。
Virtual Memory = RAM + Swap space/file
Virtual Memory (1GB) = Actual RAM (512MB) + Swap space/file (512MB)
当Ubuntu服务器运行时内存不足,它交换一段RAM(比如foo空闲程序)到硬盘(交换空间)释放内存的其他程序。然后当你需要这个程序(比如foo再次),内核将会交换Foo程序,它会通过RAM里的里一个程序改变位置。
在Ubuntu添加swap分区的步骤
打开一个Terminal应用程序或者使用SSH客户端远程连接服务器,通过sudo命令登陆为root用户
# sudo –s
创建swap分区命令
在Ubuntu上输入下面命令创建2GB swap分区
# dd if=/dev/zero of=/swapfile bs=1G count=2
返回结果
records in
2+0 records out
2147483648 bytes (2.1 GB) copied, 20.2256 s, 106 MB/s
验证在服务器上以创建的分区
# ls -lh /swapfile
返回结果
-rw-r--r-- 1 root root 2.0G Oct 29 14:07 /swapfile
用fallocate命令创建swap分区
除了dd命令,还可以更快的fallocate命令创建swap分区。如下:
# fallocate -l 1G /swapfile-1
# ls -lh /swapfile-1
返回结果
-rw-r--r-- 1 root root 1.0G Oct 29 14:11 /swapfile-1
保护swap分区
处于安全角度,输入下面的chmod和chown命令保护以及设置正确文件权限
# chown root:root /swapfile
# chmod 0600 /swapfile
# ls -lh /swapfile
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=10231c61-6e55-4dd3-8324-9e2a892e7137
返回结果
-rw------- 1 root root 2.0G Oct 29 14:07 /swapfile
一个所有人可读的swap分区是一个重大的本地漏洞。上面的命令确保只有root用户有可读可写权限。
启动swap分区
# mkswap /swapfile
返回结果
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=10231c61-6e55-4dd3-8324-9e2a892e7137
最终激活swap分区
# swapon /swapfile
在Ubuntu上验证并设置
输入以下命令
# swapon –s
返回结果
Filename Type Size Used Priority
/dev/sda5 partition 3998716 704 -1
/swapfile file 2097148 0 -2
你也可以运行下面命令去验证创建的交换分区以及它的用法
怎么在Ubuntu上禁用swap分区?
你可以使用以下命令
# swapoff /swapfile
# swapon –s
更新/etc/fstab 文件
你需要在重启后确保swap分区在服务器在线后启用,编辑/etc/fstab文件。输入:
# vi /etc/fstab
增加一行,如下:
/swapfile none swap sw 0 0
保存并退出
调整swap分区,即调整虚拟分区
你可以调整下面的两个选项
- 虚拟运存控制(swappiness)
- 最小释放字节数(min_free_kbytes)
- 虚拟文件缓存压力(vfs_cache_pressure)
怎样在Ubuntu上设置swapiness
语法如下:
# sysctl vm.swappiness=VALUE
# sysctl vm.swappiness=20
或者面
# echo VALUE > /proc/sys/vm/swappiness
# echo 30 > /proc/sys/vm/swappiness
在/proc/sys/vm/swapiness的值控制着内核怎样强制的交换内存空间,更高的值对应着增加强制性强度,相反更低的值对应着减小强制性强度。默认的值是60。为了永久生效在/etc/sysctl.conf文件里加入一行命令,如下:
echo 'vm.swappiness=30' >> /etc/sysctl.conf
如果针对数据库,如Oracle或者MySQL,小编建议你设置swapiness的值为10。需要更多的信息请访问the official Linux kernel virtual memory
如何在Ubuntu 14.04中创建SWAP交换分区文件 http://www.linuxidc.com/Linux/2014-08/105223.htm
如何扩展/删除SWAP分区 http://www.linuxidc.com/Linux/2014-03/98311.htm
在OpenStack虚拟机实例中创建SWAP分区的一种方法 http://www.linuxidc.com/Linux/2013-07/87380.htm
Linux 中交换空间 (SWAP)应该分多大才好? http://www.linuxidc.com/Linux/2013-05/84252.htm
Linux SWAP 分区建立及释放内存 http://www.linuxidc.com/Linux/2013-03/81890.htm
Linux SWAP 交换分区配置说明 http://www.linuxidc.com/Linux/2013-03/82008.htm
Ubuntu 12.04的SWAP设置 http://www.linuxidc.com/Linux/2013-03/80208.htm
更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2
英文原文:Ubuntu Linux Create and Add Swap File Tutorial
译者:又耳宁
本文由 Linux公社翻译组 原创翻译 Linux公社推出
本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-12/110155.htm
Ubuntu swap的更多相关文章
- wubi安装ubuntu后,增加swap大小,优化swap的使用参数-----------让ubuntu健步如飞,为编译android源码准备
wubi安装ubuntu后,终端输入free -m可以查到如下信息: total used free shared buffers cached Mem: 1944 1801 143 0 557 70 ...
- colinux
Colinux是什么?2004年,由一名21岁的以色列学生与几名日本的自由程序员合作开发出了一个名为“Cooperative Linux”即“CoLinux”的Linux程序,该程 序可使Linux的 ...
- [转载]How To Add Swap on Ubuntu 12.04
How To Add Swap on Ubuntu 12.04 Aug 17, 2012 Linux Basics Ubuntu About Linux Swapping Linux RAM i ...
- 安装Ubuntu时,遇到自定义交换空间swap大小设置问题
【整理】Ubuntu自定义分区设置 在安装Ubuntu时,如果使用的是一个新硬盘那么安装向导会建议你使用整个硬盘,如果硬盘上已经有数据了,向导会建议使用剩余的空间。不管怎样,是由向导自动划分的分区。 ...
- How To Add Swap on Ubuntu 14.04
https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04 How To Add Swap on ...
- 如何增加Ubuntu交换空间swap
如何增加Ubuntu交换空间swap 1 使用命令查看系统内swap分区大小 green@green:~$ free -m total used free shared buff/cache ava ...
- swap分区不足ubuntu休眠
安装uswsusp Ubuntu gnu/linux只需 代码: sudo aptitude install uswsusp Arch gnu/linux系统 代码: sudo pacman -S u ...
- 增加ubuntu的内存——设置Swap增加内存
1.查看一下当前Swap分区的状态: $cat /proc/meminfo SwapTotal: 0 kB SwapFree: 0 kB 如果上面二项目都为0,说明没有Swap分区:如果不为0,则说明 ...
- Ubuntu的SWAP设置
1. 在Ubuntu中配置使用新创建的Swap分区 Command list: 查找Swap分区的UUID sudo blkid 在/ect/fstab中加入新的Swap分区 sudo gedit / ...
随机推荐
- Android sqlitedatabase 事务
SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果为成功则提交事务,否则回滚事务 ...
- 【HDU3032】Nim or not Nim?(博弈论)
[HDU3032]Nim or not Nim?(博弈论) 题面 HDU 题解 \(Multi-SG\)模板题 #include<iostream> #include<cstdio& ...
- 添加 [DataContract] 到 Entity Framework 6.0 POCO Template
1. 添加using System.Runtime.Serialization; 找到这行 includeCollections ? (Environment.NewLine + "usin ...
- 转----ui输入测试数据
jin'tHackChecker黑测工作室 - 专注于软件安全测试技术研究!(www.AutomationQA.com)常用安全测试用例 建立整体的威胁模型,测试溢出漏洞.信息泄漏.错误处理.SQL ...
- 【dfs】p1731 生日蛋糕
1441:[例题2]生日蛋搞 [题目描述] 7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层生日蛋糕,每层都是一个圆柱体.设从下往上数第i(1≤i≤M)层蛋糕是半径为Ri, 高 ...
- [HNOI2010]物品调度
题目描述 现在找工作不容易,Lostmonkey费了好大劲才得到fsk公司基层流水线操作员的职位.流水线上有n个位置,从0到n-1依次编号,一开始0号位置空,其它的位置i上有编号为i的盒子.Lostm ...
- nginx日志文件的定时切割与归纳
应用环境:生产环境中的Nginx服务器,由于访问日志文件增长速度非常快,日志太大会严重影响服务器效率.同时,为了 方便对日志进行分析计算,须要对日志文件进行定时切割.定时切割的方式有按月切割.按天切割 ...
- 在JSON中遇到的一些坑
今天在进行压测的时候,由于需要使用到json进行传参,并且需要在JMeter中加入少量的JSON,由于JSON在java中呈现键值对的形式,并且需要使用到“”来修饰,导致只能使用\进行转义,在发送请求 ...
- LaTex in Markdown
上次写了Markdown,这次用到了LaTex,也出一期(吐槽,工作量比Markdown高太多...) Markdown基础:https://www.cnblogs.com/dotnetcrazy ...
- A1124. Raffle for Weibo Followers
John got a full mark on PAT. He was so happy that he decided to hold a raffle(抽奖) for his followers ...