首頁 >系統教程 >Linux >創建交換分區的兩個命令

創建交換分區的兩個命令

PHPz
PHPz轉載
2024-04-06 16:37:121120瀏覽

交換分區在實體記憶體(RAM)被填滿時用來保持記憶體中的內容。當 RAM 被耗盡,Linux 會將記憶體中不活動的頁移到交換空間中,從而空出記憶體給系統使用。雖然如此,但交換空間不應被認為是實體記憶體的替代品。

大多數情況下,建議交換記憶體的大小為實體記憶體的 1 到 2 倍。也就是說如果你有 8GB 記憶體, 那麼交換空間大小應該介於8-16 GB。

若係統中沒有配置交換分區,當記憶體耗盡後,系統可能會殺死正在運行中的進程/應用,導致系統崩潰。在本文中,我們將學習如何為 Linux 系統新增交換分割區,我們有兩個方法:

  • 使用 fdisk 指令
  • 使用 fallocate 指令
第一個方法(使用 fdisk 指令)

#通常,系統的第一塊硬碟會被命名為/dev/sda,而其中的分割區會命名為/dev/sda1/dev/ sda2。本文我們使用的是一塊有兩個主分割區的硬碟,兩個分割區分別為/dev/sda1/dev/sda2,而我們使用/dev/ sda3 來做交換分割區。

先建立一個新分割區,

$ fdisk /dev/sda

n 來建立新分割區。系統會詢問你從哪個柱面開始,直接按回車鍵使用預設值即可。然後系統詢問你到哪個柱面結束, 這裡我們輸入交換分區的大小(例如 1000MB)。這裡我們輸入 1000M

創建交換分區的兩個命令

#swap

現在我們建立了一個大小為 1000MB 的磁碟了。但是我們並沒有設定該分區的類型,我們按下 t 然後回車,來設定分區類型。

現在我們要輸入分割區編號,這裡我們輸入3,然後輸入磁碟分類號,交換分割區的分割區類型為82 (要顯示所有可用的分割區類型,按下l ) ,然後再按下w 儲存磁碟分割表。

創建交換分區的兩個命令

#swap

再下一步使用 mkswap 指令來格式化交換分割區:

$ mkswap /dev/sda3

然後啟動新建的交換分割區:

$ swapon /dev/sda3

然而我們的交換分割區在重啟後並不會自動掛載。要做到永久掛載,我們需要將內容新增到 /etc/fstab 檔案中。開啟 /etc/fstab 檔案並輸入下方行:

$ vi /etc/fstab

/dev/sda3 swap  swap  default  0  0

儲存並關閉檔案。現在每次重啟後都能使用我們的交換分割區了。

第二種方法(使用 fallocate 指令)
#

我推荐用这种方法因为这个是最简单、最快速的创建交换空间的方法了。fallocate 是最被低估和使用最少的命令之一了。 fallocate 命令用于为文件预分配块/大小。

使用 fallocate 创建交换空间,我们首先在 / 目录下创建一个名为 swap_space 的文件。然后分配 2GB 到 swap_space 文件:

$ fallocate -l 2G /swap_space

我们运行下面命令来验证文件大小:

$ ls -lh /swap_space

然后更改文件权限,让 /swap_space 更安全:

$ chmod 600 /swap_space

这样只有 root 可以读写该文件了。我们再来格式化交换分区(LCTT 译注:虽然这个 swap_space 是个文件,但是我们把它当成是分区来挂载):

$ mkswap /swap_space

然后启用交换空间:

$ swapon -s

每次重启后都要重新挂载磁盘分区。因此为了使之持久化,就像上面一样,我们编辑 /etc/fstab 并输入下面行:

/swap_space swap  swap  sw  0  0 

保存并退出文件。现在我们的交换分区会一直被挂载了。我们重启后可以在终端运行 free -m 来检查交换分区是否生效。


以上是創建交換分區的兩個命令的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:linuxprobe.com。如有侵權,請聯絡admin@php.cn刪除