When the Linux disk is first partitioned, we will divide it into a swap partition. This partition serves as a piece of virtual memory and is responsible for expanding memory. However, at work, we will encounter situations where the virtual memory is not enough. At this time, we cannot re-partition the disk. We can only expand our virtual memory by adding a swap file. The following editor will bring you a tutorial on how to expand virtual memory. Let’s go and see it together!
1. Check the size of existing swap space
If you want to check the size of your existing virtual memory, you can use the command ‘free -m’
[root@chenfancentos ~]# free -m
total used free shared buffers cached
Mem: 988 164 823 0 26 48
-/ buffers/cache: 90 898
Swap: 1999 0 1999
Choose the appropriate expansion size based on the size of the existing swap space.
2. Create a suitable swapfile
We can often use the "dd" command to create a file, and use "if" to specify the source. Basically, we will not write anything else except "/dev/zero", and /dev/zero is unique to UNIX systems. of a file. "of" specifies the target file, "bs" defines the block size, and "count" defines the number of blocks. The size of these two parameters determines the size of the target file.
[root@chenfancentos ~]# dd if=/dev/zero of=/tmp/swapfile bs=300M count=1
Recorded the reading of 1 0
Recorded the writing of 1 0
314572800 bytes (315 MB) copied, 13.9027 seconds, 22.6 MB/second
[root@chenfancentos ~]# du -h /tmp/swapfile
300M /tmp/swapfile
You can see that a newly generated swapfile file is 300M in size.
3. Format the swapfile just created
[root@chenfancentos ~]# mkswap -f /tmp/swapfile
Setting up swapspace version 1, size = 307196 KiB
no label, UUID=c4e2a8b1-fa09-41ab-bcbf-63c273ed9598
You can see the UUID information after formatting
4. Implement automatic mounting of swap files at boot
We add the entry /tmp/swapfile swap swap defaults 0 0 to /etc/fstab to achieve automatic mounting at boot.
[root@chenfancentos ~]# cat /etc/fstab
# /etc/fstab
# Created by anaconda on Sat Apr 2 19:37:01 2016
## Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#UUID=301b2f9f-91d3-47dd-8a43-d377cba1cd5c / ext4 defaults 1 1
UUID=812455f9-a63f-4b09-9336-05e3ada6f9a7 /boot ext4 defaults 1 2
UUID=416480d0-662c-406c-a328-b4c2f370577b swap swap defaults 0 0
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
/tmp/swapfile swap swap defaults 0 0
In this way, even if it is restarted later, it can be automatically mounted.
5. Enable swapfile and check the virtual memory size
[root@chenfancentos ~]# swapon /tmp/swapfile
[root@chenfancentos ~]# free -m
total used free shared buffers cached
Mem: 988 136 852 0 10 50
-/ buffers/cache: 74 913
Swap: 2299 0 2299
You can be excited to see that compared to the initial virtual memory, it has now increased by 300M. Isn't it a little exciting?
The above is the detailed content of Learn how to increase virtual memory. For more information, please follow other related articles on the PHP Chinese website!