用户名: 密码: 忘记密码? 注册

使用文件方式扩展swap分区

作者:  时间: 2010-10-15
使用文件方式扩展Swap分区,可以划分一块硬盘空间来作为Swap空间,这样可以扩大Swap分区。
步骤如下:
 
1)创建swap文件
 

dd if=/dev/zero of=/tmp/swap bs=4k count=16382


注释:

    位置为:/tmp/swap,其类型为data

    容量为:4K * 16382

dd命令解释
dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
dd 的主要选项:
指定数字的地方若以下列字符结尾乘以相应的数字:
b=512, c=1, k=1024, w=2, xm=number m
if=file
输入文件名,缺省为标准输入。
of=file
输出文件名,缺省为标准输出。
ibs=bytes
一次读入 bytes 个字节(即一个块大小为 bytes 个字节)
obs=bytes
一次写 bytes 个字节(即一个块大小为 bytes 个字节)
bs=bytes
同时设置读写块的大小为 bytes ,可代替 ibs 和 obs 。
cbs=bytes
一次转换 bytes 个字节,即转换缓冲区大小。
skip=blocks
从输入文件开头跳过 blocks 个块后再开始复制。
seek=blocks
从输出文件开头跳过 blocks 个块后再开始复制。(通常只有当输出文件是磁盘或磁带时才有效)
count=blocks
仅拷贝 blocks 个块,块大小等于 ibs 指定的字节数。
conv=conversion[,conversion...]
用指定的参数转换文件。
转换参数:
ascii 转换 EBCDIC 为 ASCII。
ebcdic 转换 ASCII 为 EBCDIC。
ibm 转换 ASCII 为 alternate EBCDIC.
block 把每一行转换为长度为 cbs 的记录,不足部分用空格填充。
unblock 使每一行的长度都为 cbs ,不足部分用空格填充。
lcase 把大写字符转换为小写字符。
ucase 把小写字符转换为大写字符。
swab 交换输入的每对字节。

Unlike the Unix dd, this works when an odd number of bytes are read. If the input file contains an odd number of bytes, the last byte is simply copied (since there is nothing to swap it with).
noerror 出错时不停止。
notrunc 不截短输出文件。
sync 把每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。
由于 dd 命令允许二进制方式读写,所以特别适合在原始物理设备上进行输入/输出。例如可以用下面的命令为软盘建立镜像文件:
dd if=/dev/fd0 of=disk.img bs=1440k
有趣的是,这个镜像文件能被 HD-Copy ,Winimage 等工具软件读出。再如把第一个硬盘的前 512 个字节存为一个文件:
dd if=/dev/hda of=disk.mbr bs=512 count=1

 

2)创建swap数据

mkswap /tmp/swap

# 该指令一定要注意,否则系统文件系统将被毁掉!!!!


3)查看添加Swap文件前系统Swap容量


superior@ubuntu:/tmp$ free -m
             total       used       free     shared    buffers     cached
Mem:            94         86          8          0          8         41
-/+ buffers/cache:         36         58
Swap:         9535         16       9519

 

4)开启Swap文件

swapon /tmp/swap


5)查看开启后Swap容量


superior@ubuntu:/tmp$ free -m
             total       used       free     shared    buffers     cached
Mem:            94         86          8          0          8         41
-/+ buffers/cache:         36         58
Swap:         9599         16       9583


6)关闭Swap

swapoff /tmp/swap


---- 结束