swapon和swapoff命令详解
原文链接:https://blog.csdn.net/yexiangCSDN/article/details/83182259
swapon命令用于激活Linux系统中交换空间,Linux系统的内存管理必须使用交换区来建立虚拟内存。
语法
swapon(选项)(参数)
选项
- -a:将/etc/fstab文件中所有设置为swap的设备,启动为交换区;
- -h:显示帮助;
- -p<优先顺序>:指定交换区的优先顺序;
- -s:显示交换区的使用状况;
- -V:显示版本信息。
参数
交换空间:指定需要激活的交换空间,可以是交换文件和交换分区,如果是交换分区则指定交换分区对应的设备文件。
实例
- mkswap -c /dev/hdb4 (-c是检查有无坏块)
- swapon -v /dev/hdb4
- swapon -s
- Filename type Size Used Priority
- /dev/hda5 partition 506008 96 -1
- /dev/hdb4 partition 489972 0 -2
swapoff命令用于关闭指定的交换空间(包括交换文件和交换分区)。swapoff实际上为swapon的符号连接,可用来关闭系统的交换区。
语法
swapoff(选项)(参数)
选项
-a:关闭配置文件“/etc/fstab”中所有的交换空间。
参数
交换空间:指定需要激活的交换空间,可以是交换文件和交换分区,如果是交换分区则指定交换分区对应的设备文件。
实例
关闭交换分区
swapoff /dev/sda2
扩展知识:利用swapoff和swapon刷新swap缓存
有时运行大量的进程后swap大量占用,达到30%的话机器会变得很慢
可以用以下两个命令清除刷新swap
swapoff -a
swapon -a
这样swap就还原到初始状态
以下是设置swap优先级的方法
swappiness
Ubuntu Feisty默认的vm.swappiness值是60,这一默认值已经很合适了。但你可以改小一些降低swap的加载,系统性能会有一点点的提升
输 入:
sysctl -q vm.swappiness
你会看到值是60, 更改:
sudo sysctl vm.swappiness=10
这 样你就将值由60改为10,这可以大大降低系统对于swap的写入,建议内存为512m或更多的朋友采用此方法。如你你发现你对于swap的使用极少,可 以将值设为0。这并不会禁止你对swap的使用,而是使你的系统对于swap的写入尽可能的少,同时尽可能多的使用你的实际内存。这对于你在切换应用程序 时有着巨大的作用,因为这样的话它们是在物理内存而非swap分区中。
如果你想永久得改变这一值,你需要更改 sysctl.conf 文件:
vim /etc/sysctl.conf
添加:
vm.swappiness=10
到末行,需要重启生效。
我发现对 于我的1G内存,将此值设为5是最合适的。
例:启用交换分区/dev/sda5。
[root@rhel ~]# swapon /dev/sda5
例:启用交换文件/swapfile。
[root@rhel ~]# swapon /swapfile
swapon 是开启swap.
相对的,便有一个关闭swap的指令,swapoff.
扩展资料一:linux系统swap分区
swap分区是必须有的,首先,它是日志文件系统得以发挥作用的依赖,在系统意外关闭的情况下,靠它来保存系统中的数据。其次,在运行一些比较耗内存的程序的时候(比如p2p下载),也要用到它。在这两种情况之外,swap分区处于一种闲置状态,比如:
# free
total used free shared buffers cached
Mem: 451436 213772 237664 0 6748 114248
-/+ buffers/cache: 92776 358660
Swap: 514040 0 514040
这种情况是通常的情形,但我们不能因此忽视交换分区的重要作用。linuxso.com
我的两块硬盘各有一个swap分区,几个Linux共享这两个swap区,但用swapon -s检查swap分区时发现少了一个。于是运行:
# mkswap -c /dev/hdb4 (-c是检查有无坏块)
# swapon -v /dev/hdb4
然后正常了:
# swapon -s
Filename Type Size Used Priority
/dev/hda5 partition 506008 96 -1
/dev/hdb4 partition 489972 0 -2
由于系统建立的方式各异,交换分区有时候完全不需要手工mkswap和swapon(如正常的光盘安装或者网络安装),但有的时候需要简单地弄一下(比如借腹生子式的系统建立方式),如果syslog上面出现:
mkswap /dev/hdb4 : Invalid argument 提示的时候,就需要经历一个mkswap的过程才行
扩展资料二:简述创建swap虚拟内存的过程
大概步骤吧:
1.新建一个分区 用fdisk /dev/sda 进去去new一个分区 具体不多说了 w保存
然后partprobe 重新读入分区表
2.假设刚刚新建的分区为 /dev/sda6
那么mkswap /dev/sda6
3.swapon /dev/sda6 这样就可以了啊
用free 查看一下 就能看到虚拟内存增加了
用文件来增大虚拟内存也是一样的道理
范例1: 显示分区信息。
[root@hnlinux ~]# sfdisk -l //显示分区信息
Disk /dev/sda: 1305 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System
/dev/sda1 * 0+ 12 13- 104391 83 Linux
/dev/sda2 13 1304 1292 10377990 8e Linux LVM
/dev/sda3 0 - 0 0 0 Empty
/dev/sda4 0 - 0 0 0 Empty
Disk /dev/sdb: 652 cylinders, 255 heads, 63 sectors/track
sfdisk: ERROR: sector 0 does not have an msdos signature
/dev/sdb: unrecognized partition
No partitions found
[root@hnlinux ~]#
范例2: 关闭交换分区。
[root@hnlinux ~]# swapoff /dev/sda2 // 关闭交换分区
[root@hnlinux ~]#
扩展知识:利用swapoff和swapon刷新swap缓存
有时运行大量的进程后swap大量占用,达到30%的话机器会变得很慢
可以用以下两个命令清除刷新swap
swapoff -a
swapon -a
这样swap就还原到初始状态
以下是设置swap优先级的方法
swappiness
Ubuntu Feisty默认的vm.swappiness值是60,这一默认值已经很合适了。但你可以改小一些降低swap的加载,系统性能会有一点点的提升
输 入:
你会看到值是60, 更改:
这 样你就将值由60改为10,这可以大大降低系统对于swap的写入,建议内存为512m或更多的朋友采用此方法。如你你发现你对于swap的使用极少,可 以将值设为0。这并不会禁止你对swap的使用,而是使你的系统对于swap的写入尽可能的少,同时尽可能多的使用你的实际内存。这对于你在切换应用程序 时有着巨大的作用,因为这样的话它们是在物理内存而非swap分区中。
如果你想永久得改变这一值,你需要更改 sysctl.conf 文件:
添加:
vm.swappiness=10
到末行,需要重启生效。
我发现对 于我的1G内存,将此值设为5是最合适的。
3 、实例
关闭所有的交换分区
|
swapon和swapoff命令详解的更多相关文章
- Git初探--笔记整理和Git命令详解
几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...
- linux yum命令详解
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- Linux下ps命令详解 Linux下ps命令的详细使用方法
http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...
- Docker命令详解
Docker命令详解 最近学习Docker,将docker所有命令实验了一番,特整理如下: # docker --help Usage: docker [OPTIONS] COMMAND [arg ...
- linux awk命令详解
linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...
- android adb 命令详解
ADB (Android Debug Bridge) 是android SDK中的工具,需要先配置环境变量才能使用.起调试桥的作用,可以管理安卓设备.(也叫debug工具) ---------查看设 ...
- Git 常用命令详解
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- Top 命令详解
Top 命令详解 先感受一下top命令的执行结果吧!哈哈-- top - 17:32:34 up 3 days, 8:04, 5 users, load average: 0.09, 0.12, 0. ...
- Ruby Gem命令详解
转自:http://www.jianshu.com/p/728184da1699 Gem介绍: Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.o ...
随机推荐
- js对LocalDateTime时间的格式化成yyyy-MM-dd HH:mm:ss
formatter: function(value,row,index){ var arr = value; if(arr==null || arr==""){ return &q ...
- 初识Qt简单动画
Qt提供了类QPropertyAnimation来实现图片的一些简单的动画操作效果. 1.新建一个Qt空项目,同时添加资源文件,并在资源文件中添加图片路径.之后在main.cpp函数中添加以下代码 # ...
- 【转】C++三大特性
又重新看了一个多月的书,也算是基本上了解了一些很基础的东西,学习C++就得掌握它所具备的三大特性. 封装性是基础,继承性是关键,多态性是补充,并且多态性存在于继承的环境中. 封装性 C++语言中支持数 ...
- UVa 10377 - Maze Traversal
題目:一個機器人在迷宮中行走,它的指令是方向控制(前進.左轉.右轉).給你初始位置和一些指令: 問最後停在那個位置. 分析:模擬.直接模擬就可以,注意一下細節. 假设,不能行走(邊界或者是墻壁)則停在 ...
- 什么是控制反转(IOC)?什么是依赖注入?
控制反转是应用于软件工程领域中的,在运行时被装配器对象来绑定耦合对象的一种编程技巧,对象之间耦合关系在编译时通常是未知的.在传统编程方式中,业务逻辑的流程是应用程序中早已被设定好关联关系的对象来决定的 ...
- Qt常用控件
Qt常用控件 QWidget与QFrame QWidget所有图形控件的基类 QFrame与QWidget的区别 QFrame是基本控件的基类, QWidget是QFrame的基类. 因此QFrame ...
- go lang中局部变量的内存分配
晚上在阅读go lang的资料时突然想到一个问题,go是如何分配变量的内存结构的呢?好在网上的一篇文章做了透彻的分析见[go语言局部变量分配在栈还是堆]. 其结论是go语言局部变量的分配是由编译器决定 ...
- iOS Bugly符号化使用分析
前言:一种愉快的开发方式,轻松快速定位BUG,跟开发中的BUG说再见!(公司里开展技术分享会,我就这对Bugly的使用做了个整理) Bugly 使用分析 作者:tangjianfeng 时间:2018 ...
- R语言学习笔记(十八):零碎知识点46-50
seq_along与seq_len函数的使用 在for循环中有用 > seq_along(c(2,3,5)) [1] 1 2 3 > seq_len(3) [1] 1 2 3
- 2015306 白皎 《网络攻防》Exp3 免杀原理与实践
2015306 白皎 <网络攻防>Exp3 免杀原理与实践 一.实践基础 免杀,故名思义,指的是一种能使病毒木马免于被杀毒软件查杀的技术. 免杀的方法有很多,比如加壳改壳.加垃圾指令.以及 ...