《LINUX入門:三種在 Linux 上創建或擴展交換分區的簡單方法》要點:
本文介紹了LINUX入門:三種在 Linux 上創建或擴展交換分區的簡單方法,希望對您有用。如果有疑問,可以聯系我們。
用戶可以在任何 Linux 操作系統的安裝過程中或者是其它需要的時候創建交換空間.如果你在安裝 Linux 的時候忘記了創建或是你想要再增加交換分區的空間,你隨時都可以再創建或增加.
有時候在你安裝后搖升級 RAM 的時候需要增加一點交換分區的空間,好比你要將你的系統的 RAM 從 1GB 升級到 2GB 你,那么你就不得不將你的交換分區空間也升級一下(從 2GB 到 4GB),這是因為它使用的容量是物理 RAM 的雙倍容量.(LCTT 譯注:其實這里是個誤區,交換分區不一定非得是雙倍的物理內存容量,只是慣例如此.事實上,如果你的物理內存足夠的話,你完全可以不用交換分區——在這里的情形下,或許你增加了物理內存,就沒必要增加交換分區大小了.)
交換空間是當物理內存(RAM 隨機存取存儲器)的用量已滿時,被保留用作虛擬內存的磁盤上的空間. 如果系統在 RAM 滿載時需要更多的內存資源,內存中的非活動頁面將被移動到交換空間,這樣可以贊助系統運行應用程序更多的時間,但不應該把它當做 RAM 的擴展.
建議你創建一個專用的交換分區,但是如果你沒有可用的分區,那么可以使用交換文件,或交換分區和交換文件的組合. 交換空間通常建議用戶至少 4 GB,用戶也可以根據本身的要求和環境創建交換空間.
我發現大部分 VM 和 云服務器都沒有交換分區,所以在這種情況下,我們可以使用以下三種辦法創建,擴展或增加交換空間.
?
通過 free?&?swapon
命令來檢測當前的交換分區空間的年夜小.?
$ free -h
total used free shared buff/cache available
Mem:2.0G1.3G139M45M483M426M
Swap:2.0G655M1.4G
$ swapon--show
NAME TYPE SIZE USED PRIO
/dev/sda5 partition 2G655.2M-1
上面的輸出顯示了當前的互換分區空間是 2GB
.
?
fallocate
程序是立即創建預分配大小的文件的最佳辦法.
下面這個命令會創立一個 1GB 大小 的?/swapfile
.
$ sudo fallocate -l 1G/swapfile
檢查一下創立的文件的大小是否正確.
將該文件的權限設置為 600
這樣只有 root 用戶可以拜訪這個文件.
$ sudochmod600/swapfile
通過運行以下的命令來將此文件轉換為互換文件.
$ sudomkswap/swapfile
Setting up swapspace version 1,size=1024MiB(1073737728 bytes)
no label, UUID=cda50e0e-41f3-49c7-af61-b8cb4a33a464
通過運行以下的命令來使互換文件生效.
$ sudoswapon/swapfile
將新創立的交換文件添加到 fstab
文件中,這樣交換分區空間的修改即使在重啟后也可以生效.
$ vi/etc/fstab
/swapfile swap swap defaults 00
檢查一下新創立的交換文件.
$ swapon--show
NAME TYPE SIZE USED PRIO
/dev/sda5 partition 2G657.8M-1
/swapfile file1024M0B-2
現在我可以看到一個新的 ?1GB 的 /swapfile1
文件了.重啟系統以使新的互換文件生效.
?
dd
命令是另一個實用程序,可以幫助我們立即創建預分配大小的文件.
以下 dd 命令將創立 1GB 的 /swapfile1
.
$ sudoddif=/dev/zero of=/swapfile1 bs=1G count=1
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB,1.0GiB) copied,16.6154 s,64.6 MB/s
詳解:
if=/dev/zero
?是輸入文件,/dev/zero
是類 Unix 操作系統中的一個特殊文件,它提供從它讀取的盡可能多的空字符(ASCII NUL,0x00).of=/swapfile1
?設置輸出文件.bs=1G
?一次性讀寫的大小為 1GBcount=1
?僅復制一個輸入塊檢查一下創立的文件的大小是否正確.
$ ls-lh /swapfile1
-rw-r--r--1 root root 1.0GJun709:58/swapfile1
將該文件的權限設置為 600
這樣只有 root 用戶可以拜訪這個文件.
$ sudochmod600/swapfile1
通過運行以下的命令來將此文件轉換為互換文件.
$ sudomkswap/swapfile1
Setting up swapspace version 1,size=1024MiB(1073737728 bytes)
no label, UUID=96def6d7-b2da-4954-aa72-aa32316ec993
通過運行以下的命令來使互換文件生效.
$ sudoswapon/swapfile1
將新創立的交換文件添加到 fstab
文件中,這樣交換分區空間的修改即使在重啟后也可以生效.
$ vi/etc/fstab
/swapfile1 swap swap defaults 00
檢查新創立的交換文件.
$ swapon--show
NAME TYPE SIZE USED PRIO
/dev/sda5 partition 2G1.3G-1
/swapfile file1024M0B-2
/swapfile1 file1024M0B-3
現在我可以看到一個新的 ?1GB 的 /swapfile1
了.重啟系統以使新的互換文件生效.
?
我們也推薦使用通過硬盤分區的方式來創建交換分區.
如果你已經在你的另一個硬盤上通過 fdisk
命令創立了一個新的分區,假設我們已經創立了一個叫做 /dev/sda4
的分區.
使用 mkswap
命令來將這個分區轉換成互換分區.
$ sudomkswap/dev/sda4
通過運行以下命令來使互換文件生效.
$ sudoswapon/dev/sda4
把新增的交換文件添加到 fstab
文件中,這樣即使是重啟了系統交換分區的改動也能生效.
$ vi/etc/fstab
/dev/sda4 swap swap defaults 00
檢查新創立的交換文件.
$ swapon--show
NAME TYPE SIZE USED PRIO
/dev/sda5 partition 2G1.3G-1
/swapfile file1024M0B-2
/swapfile1 file1024M0B-3
/dev/sda4 partition 1G0B-4
我可以看到新的互換分區?1GB 的 /dev/sda4
.重啟系統就可以使用新的互換分區了.
(題圖:Pixabay,CC0)
via: http://www.2daygeek.com/add-extend-increase-swap-space-memory-file-partition-linux/
作者:2DAYGEEK 譯者:chenxinlong 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出
本文永遠更新鏈接地址:
維易PHP培訓學院每天發布《LINUX入門:三種在 Linux 上創建或擴展交換分區的簡單方法》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/9782.html