如何设置Ubuntu的swap区

如何设置Ubuntu的swap区

如何添加swap?

swap 一般都在一个专有的swap区里,这可能是因为在安装的时候系统会提示你创建一个swap区。但实际上任何文件都可以被用作swap(交换设备),无论是一个分区或是一个简单的文件。尽管如此,为了更好的体验效果和感应速度,还是建议使用大容量的内存,而不是依赖swap。可以通过添加一个swap文件来增加swap。

共分四步

  1. 创建一个你预设好大小的文件。
  2. 将该文件格式化成swap(交换设备)。
  3. 将swap添加到现有系统中。
  4. 在系统里作一个永久性变更。

要添加一个512M的swap


  • 创建一个512M的文件:

我们会在 /mnt/512Mb.swap 上创建一个swap文件。


sudo dd if=/dev/zero of=/mnt/512Mb.swap bs=1M count=512

代码中的? count=512 的意思是我们要创建文件,其中包含了512个? bs=1M (bs = block size 区块大小; 1M=1mebibyte 一兆 =1048576 bytes 字节)?的区块。 请注意 *不要* 使用? dd of=/mnt/512Mb.swap bs=1M seek=512 count=0 这条命令。虽然文件会马上增长到512Mb,但是这是有漏洞的,可能会造成无法使用。

  • 格式化文件,使之成为swap(交换设备):
sudo mkswap /mnt/512Mb.swap
  • 将swap加入到现有系统中:
sudo swapon /mnt/512Mb.swap

现在新增的swap可以通过” cat /proc/meminfo “命令看到。

  • 做永久性变更:

编辑 /etc/fstab 文件:

gksudo gedit /etc/fstab

在文件末尾加上如下一行:

/mnt/512Mb.swap  none  swap  sw  0 0

保存并重启。

一个swap文件的示例

如下的例子展现了在一台没有swap分区的电脑上创建和使用swap。


user@computer:~$ sudo dd if=/dev/zero of=/mnt/512Mb.swap bs=1M count=512

Password:

512+0 records in

512+0 records out

536870912 bytes (537 MB) copied, 35.3802 seconds, 15.2 MB/s

user@computer:~$ sudo mkswap /mnt/512Mb.swap

Setting up swapspace version 1, size = 536866 kB

no label, UUID=dd6a01c8-93f0-41e0-9b7a-306956d8821b

user@computer:~$ sudo swapon /mnt/512Mb.swap

user@computer:~$ cat /proc/meminfo

MemTotal:       499496 kB

MemFree:          9156 kB

Buffers:          4748 kB

Cached:         233140 kB

SwapCached:        724 kB

Active:         254432 kB

Inactive:       157920 kB

HighTotal:           0 kB

HighFree:            0 kB

LowTotal:       499496 kB

LowFree:          9156 kB

SwapTotal:      524280 kB

SwapFree:       523556 kB

Dirty:             128 kB

Writeback:           0 kB

Mapped:         243420 kB

Slab:            20672 kB

CommitLimit:    774028 kB

Committed_AS:   648680 kB

PageTables:       2224 kB

VmallocTotal:   524280 kB

VmallocUsed:      5708 kB

VmallocChunk:   518176 kB

user@computer:~$ gksudo gedit /etc/fstab

user@computer:~$ free

             total       used       free     shared    buffers     cached

Mem:        499496     479488      20008          0       8256     215892

-/+ buffers/cache:     255340     244156

Swap:       524280       3856     520424

#####Then, after running a few more programs...

user@computer:~$ free

             total       used       free     shared    buffers     cached

Mem:        499496     492768       6728          0       1240     142336

-/+ buffers/cache:     349192     150304

Swap:       524280      53384     470896



#####Next, reboot to make sure it will work consistently.

user@computer:~$ free

             total       used       free     shared    buffers     cached

Mem:        499496     493136       6360          0       7528     174700

-/+ buffers/cache:     310908     188588

Swap:       524280      17148     507132



撤销你的变更 :

基本上只要将刚才所做的再反过来做一遍就好了。

gksudo gedit /etc/fstab

删除刚才添加的最末一行

/mnt/512Mb.swap  none  swap  sw  0 0

在现有系统中删除swap并删除创建的swap文件。

sudo swapoff /mnt/512Mb.swap && sudo rm /mnt/512Mb.swap

无需重启。



当然,所有例子都不能生搬硬套。 如果安装双系统,我们就可以把swap区设置在扩展分区里,就是我们说的ubuntu和windows共用的storage区, 相应的目录也应该从刚才提到的/mnt/512Mb.swap 改成 /media/xxx/512Mb.swap,xxx每个人都不一样,这取决于你是如何给自己的扩展分区命名的。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值