Swap 不足的两种解决方法(The two solutions of swap not enough)

1. 使用dd命令新建一个文件并挂载为SWAP

    Use command 'dd' to create a file and mount as swap

---------------------------------------------------------------------------------

[root@localhost ~]# free -m

             total       used       free     shared    buffers     cached

Mem:          5966        334       5631          0         16         99

-/+ buffers/cache:        218       5747

Swap:         6143          0       6143

[root@localhost ~]# dd if=/dev/zero of=/root/swap bs=1024 count=1024000

1024000+0 records in

1024000+0 records out

1048576000 bytes (1.0 GB) copied, 3.20295 s, 327 MB/s

bs=是bytes,count  blocks 个块 1024bytes=1K,1024000K=1000M

[root@localhost ~]#  mkswap /root/swap

mkswap: /root/swap: warning: don't erase bootbits sectors

        on whole disk. Use -f to force.

Setting up swapspace version 1, size = 1023996 KiB

no label, UUID=af12e46f-16da-4b89-a89f-301bdce4b138

[root@localhost ~]# swapon /root/swap

[root@localhost ~]# free -m

             total       used       free     shared    buffers     cached

Mem:          5966       1604       4361          0         21       1217

-/+ buffers/cache:        365       5600

Swap:         7143          0       7143

与最开始的相比,增加了近1000M

---------------------------------------------------------------------------------



2. 用 fdisk 将未使用的分区格式化,并挂载为swap分区

   use 'fdisk' to format other partitions and mount as swap

--------------------------------------------------------------------------------

[root@localhost ~]# fdisk -l
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        2078    16587112+  83  Linux
/dev/sda3            2079        2600     4192965   82  Linux swap / Solaris
[root@localhost ~]# fdisk /dev/sda
The number of cylinders for this disk is set to 2610.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Command (m for help ): p
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        2078    16587112+  83  Linux
/dev/sda3            2079        2600     4192965   82  Linux swap / Solaris
Command (m for help) : n
Command action
   e   extended
   p   primary partition (1-4)
e
Selected partition 4
First cylinder (2601-2610, default 2601):
Using default value 2601
Last cylinder or +size or +sizeM or +sizeK (2601-2610, default 2610): +50M     ---新增加个50M的扩展分区。

                                                                                                                             ---add a extend partition of 50M
Command (m for help) : p
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        2078    16587112+  83  Linux
/dev/sda3            2079        2600     4192965   82  Linux swap / Solaris
/dev/sda4            2601        2607       56227+   5  Extended
Command (m for help ): n
First cylinder (2601-2607, default 2601):
Using default value 2601
Last cylinder or +size or +sizeM or +sizeK (2601-2607, default 2607):
Using default value 2607

Command (m for help ): p
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        2078    16587112+  83  Linux
/dev/sda3            2079        2600     4192965   82  Linux swap / Solaris
/dev/sda4            2601        2607       56227+   5  Extended
/dev/sda5            2601        2607       56196   83  Linux

Command (m for help):  w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
[root@bys3 ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          2013        218       1795          0         15        153
-/+ buffers/cache:         49       1964
Swap:         5094          0       5094
[root@bys3 ~]# swapoff /root/swap    关闭一个SWAP空间

                                                              off a swap space
[root@bys3 ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          2013        218       1795          0         15        153
-/+ buffers/cache:         49       1964
Swap:         4094          0       4094
[root@bys3 ~]# mkswap /dev/sda5
/dev/sda5: No such file or directory
[root@bys3 ~]#  partprobe     --- 同步分区表

                                                     sync of partition table
Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.
Segmentation fault
[root@bys3 ~]# mkswap /dev/sda5
Setting up swapspace version 1, size = 57540 kB
[root@bys3 ~]# swapon /dev/sda5
[root@bys3 ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          2013        218       1795          0         15        153
-/+ buffers/cache:         49       1964
Swap:         4149          0       4149

---------------------------------------------------------------------------------

开机自动挂载

auto mount during boot process

--------------------------------------------------------------------------------

[root@localhost ~]#  vi /etc/fstab 

LABEL=/                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-sda3         swap                    swap    defaults        0 0 
/root/swap              swap                    swap    defaults                   -------dd 挂载方式(dd mount)

/dev/sda5               swap                    swap    defaults        0 0       -------格式化挂载方式(formatting partition mount)

[root@localhost ~]# mount -a              ---------无报错则挂载成功(No errors then mount succeed)


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31549649/viewspace-2215400/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31549649/viewspace-2215400/

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值