如何在Linux系统过程中新增swap分区,我们都知道在安装Linux系统时在分区时可以分配swap分区,而系统安装后(在运行中)如何建立或调整swap分区呢?
我们在装完Linux系统之后,建立Swap分区有两种方法:
- 新建磁盘分区作为swap分区
- 用文件作为swap分区
这两种方法都必须用root权限,操作过程中要小心谨慎
1. 新建磁盘分区作为swap分区
该方法需要磁盘还有剩余空间没有分区使用,可以进行分区创建swap分区
1.1. 停止所有swap分区
以root身份进入控制台(登录系统),输入
[root@linux-node1 ~]# swapoff -a
1.2. 创建新分区
用fdisk命令(例:# fdisk /dev/sdb)对磁盘进行分区,添加swap分区,新建分区,在fdisk中用“t”命令将新添的分区id改为82(Linux swap类型),最后用w将操作实际写入硬盘(没用w之前的操作是无效的)。
1.3. 格式化swap分区
格式化swap分区,这里的sdb2要看您加完后p命令显示的实际分区设备名
[root@linux-node1 ~]# mkswap /dev/sdb2
1.4. 启动新swap分区
[root@linux-node1 ~]# swapon /dev/sdb2
1.5 修改/etc/fstab文件
为了让系统启动时能自动启用这个交换分区,可以编辑/etc/fstab,加入下面一行
[root@linux-node1 ~]# tail -1 /etc/fstab
/dev/sdb2 swap swap defaults 0 0
2. 用文件作为swap分区
使用用文件作为Swap分区,操作简单,就算是磁盘没有剩余空间可以分区也可以增加swap分区
2.1. 创建swap分区文件
创建要作为swap分区的文件:增加1GB大小的交换分区,则命令写法如下,其中的count等于想要的块的数量(bs*count=文件大小)。
[root@linux-node1 ~]# mkdir -p /opt/swapfile/swapfile
[root@linux-node1 ~]# dd if=/dev/zero of=/opt/swapfile/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 15.1481 s, 70.9 MB/
[root@linux-node1 ~]# ll -h /opt/swapfile/swapfile
-rw-r--r--. 1 root root 1.0G Sep 7 15:32 /opt/swapfile/swapfile
或者
[root@linux-node1 ~]# fallocate -l 1G /opt/swapfile/swapfile
[root@linux-node1 ~]# ll -h /opt/swapfile
-rw-r--r--. 1 root root 1.0G Sep 7 15:34 /swapfile
2.2. 格式化文件
[root@linux-node1 ~]# mkswap /opt/swapfile/swapfile
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=960b6a76-0191-470f-9c71-34750e268332
2.3. 启用swapfile文件
[root@linux-node1 ~]# chmod 0600 /opt/swapfile/swapfile
[root@linux-node1 ~]# swapon /opt/swapfile/swapfile
报错:swapon: /opt/swapfile/swapfile: insecure permissions 0644, 0600 suggested.
解决:chmod 0600 /opt/swapfile/swapfile
2.4. 修改/etc/fstab
使系统开机时自启用,在文件/etc/fstab中添加一行
/opt/swapfile/swapfile swap swap defaults 0 0
网友评论