登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

herb

喜欢写博,喜欢安静,喜欢挑战!

 
 
 

日志

 
 

调整swap分区大小  

2011-02-28 14:17:35|  分类: Linux Support |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

在linux中,当我们因为需要新添加一块硬盘,或者是我们swap交换分区空间不够,需要增加,我们怎么来处理呢?首先,找一块新硬盘,在断电的情况下接入,启动计算机,接就进行如下操作:

一、新增磁盘分区、格式化

首先用fdisk -l 查看新增硬盘的盘符,例如/dev/sdb;

将其分成三个区:

#fdisk /dev/sdb

进入fdisk模式:

Command (m for help):p //查看新硬盘的分区 m为帮助

Command (m for help):n //创建新分区

可以用m命令来看fdisk命令的内部命令;n命令创建一个新分区;d命令删除一个存在的分区;p命令显示分区列表;t命令修改分区的类型ID号;l命令显示分区ID号的列表;a命令指定启动分区;w命令是将对分区表的修改存盘让它发生作用。

Command action

e extended //输入e为创建扩展分区

p primary partition (1-4) //输入p为创建主分区,这里我们选择p

Partion number(1-4):1 //第一个扩展分区,按你需求可以最多分4个主分区

First Cylinder(1-1014,default 1): 1 //第一个主分区起始的磁盘块数

Last cylindet or +siza or +sizeM or +sizeK: +1024MB //可以是以MB为单位的数字或者以磁盘块数,这里我们输入+1024MB表示分区大小为1G。

这样我们就创建完一个分区,如果要创建更多分区可以照上面的步骤继续创建。

创建完后用w保存分区。

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

这样就分区完了,我们还要进行格式化

#mkfs -t ext3 -c /dev/sdb1 //如果有多个分区,则分区修改为sdb2这样格式化完后我们需要进行挂载分区,

#mkdir www //创建/www目录,我们将把新的分区挂到www下

#mount /dev/sdb1 /www //将/dev/sdb1挂载到/www

# df //用df命令进行查看

Filesystem 1K-blocks Used Available Use% Mounted on

/dev/sda2 3771316 1388956 2190788 39% /

/dev/sda1 101089 9463 86407 10% /boot

none 62988 0 62988 0% /dev/shm

/dev/sdb1 485906 8239 452580 2% /www //看到了,这就是我们刚才新挂载的分区,不过我们如果这样就的话,我们每次重新启动服务器后都要进行手工挂载,这样很麻烦,我们修改一下/etc/fstab文件来进行自动挂载。

#vi /etc/fstab

加如下内容:

/dev/sdb1 /www ext3 defaults 1 2

修改完后可以用mount -a 挂载检查是否可以成功,如有多个分区可按修改sdb1和/www,的方法增加,修改完后保存,重起服务器。

二、扩展swap


swap 介绍:

当物理内存占用完了后,当系统还需要更多的物理内存时,物理内存中inactive pages ,就move到swap空间。swap 空间是在位于硬盘上的,因此访问速度较物理内存慢。
当机器的物理内存发生变化时,swap 分区也要做相应的扩展:

有三种方法可以对swap 分区进行扩展:
一、扩展正在使用的swap 分区的逻辑卷(推荐使用此种方式)
二、新建swap 分区,
三、新建swap file,
具体步骤如下:

一、扩展正在使用的swap 分区的逻辑卷

设定用作swap 分区的逻辑卷为:/dev/sda1
# swapoff -v /dev/sda1 //关闭swap分区
# lvm lvresize /dev/sda1 -L +256M //重新分配大小
# mkswap /dev/sda1 //格式化swap分区
# swapon -va //启动swap分区,并增加到/etc/fstab自动挂载
# cat /proc/swaps 或者# free –m //查看swap分区大小

二、新建swap 分区

设定新建的swap 分区的逻辑卷为:/dev/sdb1
# mkswap /dev/sdb1
# swapon /dev/sdb1
# vi /etc/fstab
增加/dev/sdd1 swap swap 0 0或者用swapon –va命令代替
# cat /proc/swaps 或者# free –m //查看swap分区大小

     检查swap是否启动      #swapon -s

新建swap分区

1.root身份进入控制台,输入

 # swapoff -a          #停止交分区

 

2. fdisk命令加swap分区的盘符,(例:# fdisk /dev/sdb)剔除swap分区,输入d删除swap分区,然后再n添加分区(添加时硬盘必须要有可用空间,然后再用t将新添的分区id改为82linux swap类型),最后用w将操作实际写入硬盘(没用w之前的操作是无效的)。

 # fdisk /dev/sdb
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-13054, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-13054, default 13054): +100M
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 82
Changed system type of partition 1 to 82 (Linux swap / Solaris)
Command (m for help): w
The partition table has been altered!
.同步分区表
# partprobe

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

 

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

 

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

/dev/sdb2       swap        swap        defaults        0 0  

 

6.完成

三、新建swapfile
通过此种方式进行swap 的扩展,首先要计算出block的数目。具体为根据需要扩展的swapfile的大小,以M为单位。block=swap分区大小*1024, 例如,需要扩展64M的swapfile,则:
block=64*1024=65536.

1.创建交换分区的文件:增加1G大小的交换分区,则命令写法如下,其中的 count 等于想要的块大小。

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

#dd if=/dev/zero of=swapfree bs=32k count=8192
(bs=32k指定每个扇区占用32kb,读入了8192+0个区段,输出了8192+0个区段)
注意:bs参数的目的在于指定每次读取及输入多少个bytes;由于磁盘存取的最小单位为扇区,因此设置bs也等于设置每个扇区的大小;而count的目的则在指定可以使用多少个扇区.因此,可以使用的硬盘空间就等于bs*count.以上范例为例,可以使用的硬盘空间等于32*8192=262144 (KB),亦等于256MB. 以上同理!)

2.设置交换分区文件:

# mkswap /tmp/swapfile  #建立swap的文件系统 格式化

 

3.立即启用交换分区文件:

# swapon /tmp/swapfile   #启用swap文件

 

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

/tmp/swapfile swap swap defaults 0 0

  评论这张
 
阅读(2847)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018