文档章节

Linux新建和增加Swap分区[尝试文件方式可行]

Airship
 Airship
发布于 02/24 09:54
字数 880
阅读 3
收藏 0

以前做过增加swap分区的事情,今天一个同事问到我如何做,故记个笔记整理一下吧。另外,以前我写过“交换分区swap的大小分配”,大家也可先看一下。

我们都知道在安装Linux系统时在分区时可以分配swap分区,而系统安装后(在运行中)如何建立或调整swap分区呢?
在装完Linux系统之后,建立Swap分区有两种方法。
1.新建磁盘分区作为swap分区
2.用文件作为swap分区 (操作更简单,我更常用)
下面介绍这两种方法:(都必须用root权限,操作过程应该小心谨慎。)

一、新建磁盘分区作为swap分区
1.以root身份进入控制台(登录系统),输入
# swapoff -a #停止所有的swap分区

2. 用fdisk命令(例:# fdisk /dev/sdb)对磁盘进行分区,添加swap分区,新建分区,在fdisk中用“t”命令将新添的分区id改为82(Linux swap类型),最后用w将操作实际写入硬盘(没用w之前的操作是无效的)。

3. # mkswap /dev/sdb2 #格式化swap分区,这里的sdb2要看您加完后p命令显示的实际分区设备名

4. # swapon /dev/sdb2 #启动新的swap分区

5. 为了让系统启动时能自动启用这个交换分区,可以编辑/etc/fstab,加入下面一行
/dev/sdb2 swap swap defaults 0 0


二、用文件作为Swap分区

1.创建要作为swap分区的文件:增加1GB大小的交换分区,则命令写法如下,其中的count等于想要的块的数量(bs*count=文件大小)。

此处的进制应为1000,count应为1000,表示1GB?

# dd if=/dev/zero of=/root/swapfile bs=1M count=1024

2.格式化为交换分区文件:
# mkswap /root/swapfile #建立swap的文件系统

3.启用交换分区文件:
# swapon /root/swapfile #启用swap文件

4.使系统开机时自启用,在文件/etc/fstab中添加一行:
/root/swapfile swap swap defaults 0 0



新建和增加交换分区用到的命令为:mkswap、swapon等,而想关闭掉某个交换分区则用“swapoff /dev/sdb2”这样的命令即可。



下面的操作命令演示了用文件作为Swap的操作过程(包括前后的一些检查)。

[root@jay-linux ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          3979       3179        800          0        266       1873
-/+ buffers/cache:       1039       2940
Swap:         4095          0       4095
[root@jay-linux ~]# cat /etc/fstab
# 已省略与主题无关的部分输出
/dev/sda3               swap                    swap    defaults        0 0

[root@jay-linux ~]# dd if=/dev/zero of=/root/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 4.09017 s, 263 MB/s
[root@jay-linux ~]# mkswap /root/swapfile
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=48a7ffd5-392f-4963-904c-3e67f0e5dfbe
[root@jay-linux ~]# swapon /root/swapfile
[root@jay-linux ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2628
-/+ buffers/cache:       1054       2924
Swap:         5119          0       5119
[root@jay-linux ~]# swapoff /dev/sda3
[root@jay-linux ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2629
-/+ buffers/cache:       1053       2925
Swap:         1023          0       1023
[root@jay-linux ~]# swapoff /root/swapfile
[root@jay-linux ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2629
-/+ buffers/cache:       1053       2926
Swap:            0          0          0
[root@jay-linux ~]# swapon /dev/sda3
[root@jay-linux ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          3979       3946         33          0        261       2629
-/+ buffers/cache:       1054       2924
Swap:         4095          0       4095

本文参考如下链接:

http://hancj.blog.51cto.com/89070/197915

Related posts:

  1. 交换分区(SWAP)的大小分配
  2. (KVM连载)4.2.4 内存过载使用(overcommit)
  3. 更新Linux内核头文件(linux headers)
  4. Linux kernel启动参数

本文转载自:http://smilejay.com/2012/09/new-or-add-swap/

共有 人打赏支持
Airship
粉丝 38
博文 908
码字总数 19854
作品 0
南京
高级程序员
私信 提问
linux/windows7安装anaconda+opencv+dlib+face_recognition

确定服务器是32位的还是64位的 看到输出的内容即为服务器的位数,我的是32位的,故选择32位的anaconda。 Anaconda 下载anaconda anaconda,选择自己对应的版本 进入Anaconda所在的目录,执行...

-九天-
01/31
0
0
Linux系统中增加Swap分区文件步骤方法

1、检查当前的分区情况(使用free -m或cat /proc/swaps ) 2、增加交换分区文件及大小 检查没有swap,下面就需要增加,判定新交换文件的大小,将大小乘以1024来判定块的大小。例如,大小为6...

JavaGG
2009/05/07
285
0
新手玩Linux ---- 从Linux From Scratch开始学习linux(二)

好多新手朋友不明白Linux的分区是怎么回事,看书有时候看的一头雾水,新手么现在了解的那么复杂了反而会打击大家的学习积极性,所以大家先简单了解下就可以了,复杂的后边会慢慢在应用的时候...

赵臣
2011/08/27
0
0
Linux中增加Swap分区文件的步骤方法

1、检查当前的分区情况(使用free -m或cat /proc/swaps ): 2、增加交换分区文件及大小: 检查没有swap,下面就需要增加。 判定新交换文件的大小,将大小乘以1024来判定块的大小。例如,大...

zt371
2009/05/07
251
0
红薯及各位大侠,谁能解决mondo rescue运行中的swap问题

如题所述,红薯及各位大侠,谁能解决mondo rescue运行中的swap问题? 最近正在探索用Mondo Rescue解决运行于 Raid5 之上的swap分区无法处理的问题。 事情过程是这样的,我按照Mondo官网上的介...

ZhangLaocai
2010/05/23
494
10

没有更多内容

加载失败,请刷新页面

加载更多

[LintCode] Serialize and Deserialize Binary Tree(二叉树的序列化和反序列化)

描述 设计一个算法,并编写代码来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件后重建同样的二叉树被称为“反序列化”。 如何反序列化或序列化二叉树是没有限制的,你...

honeymose
今天
5
0
java框架学习日志-7(静态代理和JDK代理)

静态代理 我们平时去餐厅吃饭,不是直接告诉厨师做什么菜的,而是先告诉服务员点什么菜,然后由服务员传到给厨师,相当于服务员是厨师的代理,我们通过代理让厨师炒菜,这就是代理模式。代理...

白话
今天
23
0
Flink Window

1.Flink窗口 Window Assigner分配器。 窗口可以是时间驱动的(Time Window,例如:每30秒钟),也可以是数据驱动的(Count Window,例如:每一百个元素)。 一种经典的窗口分类可以分成: 翻...

满小茂
今天
18
0
my.ini

1

architect刘源源
今天
16
0
docker dns

There is a opensource application that solves this issue, it's called DNS Proxy Server It's a DNS server that solves containers hostnames, if could not found a hostname that mat......

kut
今天
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部