1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

How to increase SWAP space/partition

Discussion in 'Storage' started by alie, Aug 17, 2011.

  1. alie

    alie Member

    Messages:
    575
    Likes Received:
    0
    Like the title, is there any way to increase swap partition ?

    Thanks in advance
     
  2. Beastie

    Beastie Member

    Messages:
    1,916
    Likes Received:
    1
    I don't think you can resize the existing partition. At least not easily. But you may create a swap file (see section 11.14.3 Swapfiles).
     
  3. alie

    alie Member

    Messages:
    575
    Likes Received:
    0
    How about delete the existing swap partition then resize the root to use the swap space, is it possible ?
     
  4. jem

    jem New Member

    Messages:
    345
    Likes Received:
    0
    You can certainly remove your swap partition, then grow your root filesystem into the available space.

    You'd use bsdlabel(8) to delete the b: partition, then increase the size of the a: partition to fill the freed space.

    After that's done, you use growfs(8) to expand the UFS filesystem inside the a: partition.
     
  5. SirDice

    SirDice Moderator Staff Member Moderator

    Messages:
    17,365
    Likes Received:
    0
    You can add multiple swap partitions.

    Code:
    dice@molly:~>swapinfo
    Device          1K-blocks     Used    Avail Capacity
    /dev/gpt/swap4    2097152   113344  1983808     5%
    /dev/gpt/swap5    2097152   113824  1983328     5%
    /dev/gpt/swap6    2097152   112936  1984216     5%
    /dev/gpt/swap7    2097152   112660  1984492     5%
    Total             8388608   452764  7935844     5%
    dice@molly:~>grep swap /etc/fstab
    /dev/gpt/swap4          none                    swap            sw              0       0
    /dev/gpt/swap5          none                    swap            sw              0       0
    /dev/gpt/swap6          none                    swap            sw              0       0
    /dev/gpt/swap7          none                    swap            sw              0       0
    
     
  6. NewGuy

    NewGuy New Member

    Messages:
    147
    Likes Received:
    0
    You can install a tool like swapexd, which will grow a swap file for you on an as-needed basis. It's a tad slow, but gives you flexibility of just having the amount of swap you need.
     
  7. alie

    alie Member

    Messages:
    575
    Likes Received:
    0
    Can someone help me with the commands to delete /dev/ad10s1b partition and then grow /dev/ad10s1a partition? I am not familiar how the partition works.

    Code:
    [/usr/home/alie]# disklabel -e /dev/ad10s1b
    # /dev/ad10s1b:
    8 partitions:
    #          size     offset    fstype   [fsize bsize bps/cpg]
      a: 1953521009       4096    4.2BSD        0     0     0
      b:       4096          0      swap
      c: 1953525105          0    unused        0     0     # "raw" part, don't edit
    
    then quit with q!

    Code:
    ~
    ~
    ~
    ~
    ~
    :q
    partition a: partition extends past end of unit
    partition c: partition extends past end of unit
    disklabel: partition c doesn't cover the whole unit!
    disklabel: An incorrect partition c may cause problems for standard system utilities
    re-edit the label? [y]: 
    
    I didn't make any changes yet but seems there is something wrong with my partition.

    Thanks
     
  8. kpa

    kpa Member

    Messages:
    3,993
    Likes Received:
    5
    You're looking at the wrong device, /dev/ad10s1b is the partition itself. You should use the slice with the bsd disklabel:

    # bsdlabel -e /dev/ad10s1

    gpart(8) can resize partitions in a bsdlabel'ed slice as well, deleting ad10s1b and then resizing ad10s1a
    should go like this:

    # gpart delete -i 2 ad10s1
    # gpart resize -i 1 -s newsize ad10s1

    The "-i 1" option means the 1st partition inside geom ad10s1, ad10s1a