您好,登錄后才能下訂單哦!
這篇文章主要介紹了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.0G 1.3G 139M 45M 483M 426M Swap: 2.0G 655M 1.4G $ swapon --show NAME TYPE SIZE USED PRIO /dev/sda5 partition 2G 655.2M -1
上面的輸出顯示了當前的交換分區空間是 2GB 。
fallocate 程序是立即創建預分配大小的文件的最佳方法。
下面這個命令會創建一個 1GB 大小 的 /swapfile。
$ sudo fallocate -l 1G /swapfile
檢查一下創建的文件的大小是否正確。
$ ls -lh /swapfile -rw-r--r-- 1 root root 1.0G Jun 7 09:49 /swapfile
將該文件的權限設置為 600 這樣只有 root 用戶可以訪問這個文件。
$ sudo chmod 600 /swapfile
通過運行以下的命令來將此文件轉換為交換文件。
$ sudo mkswap /swapfile Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=cda50e0e-41f3-49c7-af61-b8cb4a33a464
通過運行以下的命令來使交換文件生效。
$ sudo swapon /swapfile
將新創建的交換文件添加到 fstab 文件中,這樣交換分區空間的修改即使在重啟后也可以生效。
$ vi /etc/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
現在我可以看到一個新的 1GB 的 /swapfile1 文件了。重啟系統以使新的交換文件生效。
dd 命令是另一個實用程序,可以幫助我們立即創建預分配大小的文件。
以下 dd 命令將創建 1GB 的 /swapfile1。
$ sudo dd if=/dev/zero of=/swapfile1 bs=1G count=1 1+0 records in1+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
將該文件的權限設置為 600 這樣只有 root 用戶可以訪問這個文件。
$ sudo chmod 600 /swapfile1
通過運行以下的命令來將此文件轉換為交換文件。
$ sudo mkswap /swapfile1 Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=96def6d7-b2da-4954-aa72-aa32316ec993
通過運行以下的命令來使交換文件生效。
$ sudo swapon /swapfile1
將新創建的交換文件添加到 fstab 文件中,這樣交換分區空間的修改即使在重啟后也可以生效。
$ vi /etc/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
現在我可以看到一個新的 1GB 的 /swapfile1 了。重啟系統以使新的交換文件生效。
我們也推薦使用通過硬盤分區的方式來創建交換分區。
如果你已經在你的另一個硬盤上通過 fdisk 命令創建了一個新的分區,假設我們已經創建了一個叫做 /dev/sda4 的分區。
使用 mkswap 命令來將這個分區轉換成交換分區。
$ sudo mkswap /dev/sda4
通過運行以下命令來使交換文件生效。
$ sudo swapon /dev/sda4
把新增的交換文件添加到 fstab 文件中,這樣即使是重啟了系統交換分區的修改也能生效。
$ vi /etc/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
我可以看到新的交換分區 1GB 的 /dev/sda4。重啟系統就可以使用新的交換分區了。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Linux系統中如何創建和擴展交換分區”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。