创建或扩展交换分区

Posted on Posted in linux, system

通过 free & swapon 命令来检测当前的交换分区空间的大小。

-> pi@raspberrypi ~ ☺ # free -h
             total       used       free     shared    buffers     cached
Mem:          923M       818M       105M        38M       114M       309M
-/+ buffers/cache:       394M       529M
Swap:          99M        40M        59M
-> pi@raspberrypi ~ ☺ # swapon --show
NAME      TYPE SIZE  USED PRIO
/var/swap file 100M 40.8M   -1

方法 1 : 通过 fallocate 命令创建交换文件

$ sudo fallocate -l 1G /swapfile #创建一个 1GB 大小 的 /swapfile
$ ls -lh /swapfile # 检查一下创建的文件的大小是否正确
-rw-r--r-- 1 root root 1.0G Jun  7 09:49 /swapfile
$ sudo chmod 600 /swapfile # 将该文件的权限设置为 600 这样只有 root 用户可以访问这个文件。
$ sudo mkswap /swapfile # 通过运行以下的命令来使交换文件生效。
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=cda50e0e-41f3-49c7-af61-b8cb4a33a464
$ vi /etc/fstab # 将新创建的交换文件添加到 fstab 文件中
/swapfile  swap  swap  defaults  0 0
$ swapon --show # 检查一下新创建的交换文件。
NAME      TYPE       SIZE   USED PRIO
/dev/sda5 partition    2G 657.8M   -1
/swapfile file      1024M     0B   -2

方法 2 : 通过 dd 命令来创建交换文件

  • if=/dev/zero 是输入文件,/dev/zero 是类 Unix 操作系统中的一个特殊文件,它提供从它读取的尽可能多的空字符(ASCII NUL,0x00)。
  • of=/swapfile1 设置输出文件。
  • bs=1G 一次性读写的大小为 1GB
  • count=1 仅复制一个输入块
$ sudo dd if=/dev/zero of=/swapfile1 bs=1G count=1 # dd 命令将创建 1GB 的 /swapfile1
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 16.6154 s, 64.6 MB/s
$ ls -lh /swapfile1 # 检查一下创建的文件的大小是否正确。
-rw-r--r-- 1 root root 1.0G Jun  7 09:58 /swapfile1
$ sudo chmod 600 /swapfile1 # 将该文件的权限设置为 600 这样只有 root 用户可以访问这个文件。
$ sudo mkswap /swapfile1 # 通过运行以下的命令来将此文件转换为交换文件。
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=96def6d7-b2da-4954-aa72-aa32316ec993
$ sudo swapon /swapfile1 # 使交换文件生效。
$ vi /etc/fstab # 将新创建的交换文件添加到 fstab 文件中
/swapfile1  swap  swap  defaults  0 0
$ swapon --show # 检查新创建的交换文件。
NAME       TYPE       SIZE USED PRIO
/dev/sda5  partition    2G 1.3G   -1
/swapfile  file      1024M   0B   -2
/swapfile1 file      1024M   0B   -3

方法 3 : 通过硬盘分区来创建交换文件

如果你已经在你的另一个硬盘上通过 fdisk 命令创建了一个新的分区,假设我们已经创建了一个叫做 /dev/sda4 的分区。

$ sudo mkswap /dev/sda4 # 使用 mkswap 命令来将这个分区转换成交换分区。
$ sudo swapon /dev/sda4 # 通过运行以下命令来使交换文件生效。
$ vi /etc/fstab # 把新增的交换文件添加到 fstab 文件中
/dev/sda4  swap  swap  defaults  0 0
$ swapon --show # 检查新创建的交换文件。
NAME       TYPE       SIZE USED PRIO
/dev/sda5  partition    2G 1.3G   -1
/swapfile  file      1024M   0B   -2
/swapfile1 file      1024M   0B   -3
/dev/sda4  partition    1G   0B   -4

转自https://linux.cn/article-8699-1.html

» 转载请注明来源:呢喃 » 创建或扩展交换分区

Leave a Reply

Your email address will not be published. Required fields are marked *

1 × five =