亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

 

本教程討論了 linux 中交換文件的概念,為什么使用它以及它相對(duì)于傳統(tǒng)交換分區(qū)的優(yōu)勢(shì)。你將學(xué)習(xí)如何創(chuàng)建交換文件和調(diào)整其大小。

-- Abhishek Prakash(作者)

本教程討論了 Linux 中交換文件的概念,為什么使用它以及它相對(duì)于傳統(tǒng)交換分區(qū)的優(yōu)勢(shì)。你將學(xué)習(xí)如何創(chuàng)建交換文件和調(diào)整其大小。

什么是 Linux 的交換文件?

交換文件允許 Linux 將磁盤空間模擬為內(nèi)存。當(dāng)你的系統(tǒng)開(kāi)始耗盡內(nèi)存時(shí),它會(huì)使用交換空間將內(nèi)存的一些內(nèi)容交換到磁盤空間上。這樣釋放了內(nèi)存,為更重要的進(jìn)程服務(wù)。當(dāng)內(nèi)存再次空閑時(shí),它會(huì)從磁盤交換回?cái)?shù)據(jù)。我建議 閱讀這篇文章,了解 Linux 上的交換空間的更多內(nèi)容 。

傳統(tǒng)上,交換空間是磁盤上的一個(gè)獨(dú)立分區(qū)。安裝 Linux 時(shí),只需創(chuàng)建一個(gè)單獨(dú)的分區(qū)進(jìn)行交換。但是這種趨勢(shì)在最近幾年發(fā)生了變化。

使用交換文件,你不再需要單獨(dú)的分區(qū)。你會(huì)根目錄下創(chuàng)建一個(gè)文件,并告訴你的系統(tǒng)將其用作交換空間就行了。

使用專用的交換分區(qū),在許多情況下,調(diào)整交換空間的大小是一個(gè)可怕而不可能的任務(wù)。但是有了交換文件,你可以隨意調(diào)整它們的大小。

最新版本的 Ubuntu 和其他一些 Linux 發(fā)行版已經(jīng)開(kāi)始 默認(rèn)使用交換文件 。甚至如果你沒(méi)有創(chuàng)建交換分區(qū),Ubuntu 也會(huì)自己創(chuàng)建一個(gè) 1GB 左右的交換文件。

讓我們看看交換文件的更多信息。

檢查 Linux 的交換空間

在你開(kāi)始添加交換空間之前,最好檢查一下你的系統(tǒng)中是否已經(jīng)有了交換空間。

你可以用 Linux 上的 free 命令 檢查它。就我而言,我的 戴爾 XPS 有 14GB 的交換容量。

free -h
 total used free shared buff/cache available
Mem: 7.5G 4.1G 267M 971M 3.1G 2.2G
Swap: 14G 0B 14G

free 命令給出了交換空間的大小,但它并沒(méi)有告訴你它是真實(shí)的交換分區(qū)還是交換文件。swapon 命令在這方面會(huì)更好。

swapon --show
NAME TYPE SIZE USED PRIO
/dev/nvme0n1p4 partition 14.9G 0B -2

如你所見(jiàn),我有 14.9GB 的交換空間,它在一個(gè)單獨(dú)的分區(qū)上。如果是交換文件,類型應(yīng)該是 file 而不是 partition。

swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 2G 0B -2

如果你的系統(tǒng)上沒(méi)有交換空間,它應(yīng)該顯示如下內(nèi)容:

free -h
 total used free shared buff/cache available
Mem: 7.5G 4.1G 267M 971M 3.1G 2.2G
Swap: 0B 0B 0B

而 swapon 命令不會(huì)顯示任何輸出。

在 Linux 上創(chuàng)建交換文件

如果你的系統(tǒng)沒(méi)有交換空間,或者你認(rèn)為交換空間不足,你可以在 Linux 上創(chuàng)建交換文件。你也可以創(chuàng)建多個(gè)交換文件。

讓我們看看如何在 Linux 上創(chuàng)建交換文件。我在本教程中使用 Ubuntu 18.04,但它也應(yīng)該適用于其他 Linux 發(fā)行版本。

步驟 1:創(chuàng)建一個(gè)新的交換文件

首先,創(chuàng)建一個(gè)具有所需交換空間大小的文件。假設(shè)我想給我的系統(tǒng)增加 1GB 的交換空間。使用fallocate 命令創(chuàng)建大小為 1GB 的文件。

sudo fallocate -l 1G /swapfile

建議只允許 root 用戶讀寫該交換文件。當(dāng)你嘗試將此文件用于交換區(qū)域時(shí),你甚至?xí)吹筋愃?ldquo;不安全權(quán)限 0644,建議 0600”的警告。

sudo chmod 600 /swapfile

請(qǐng)注意,交換文件的名稱可以是任意的。如果你需要多個(gè)交換空間,你可以給它任何合適的名稱,如 swap_file_1、swap_file_2 等。它們只是一個(gè)預(yù)定義大小的文件。

步驟 2:將新文件標(biāo)記為交換空間

你需要告訴 Linux 系統(tǒng)該文件將被用作交換空間。你可以用 mkswap 工具做到這一點(diǎn)。

sudo mkswap /swapfile

你應(yīng)該會(huì)看到這樣的輸出:

Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=7e1faacb-ea93-4c49-a53d-fb40f3ce016a

步驟 3:?jiǎn)⒂媒粨Q文件

現(xiàn)在,你的系統(tǒng)知道文件 swapfile 可以用作交換空間。但是還沒(méi)有完成。你需要啟用該交換文件,以便系統(tǒng)可以開(kāi)始使用該文件作為交換。

sudo swapon /swapfile

現(xiàn)在,如果你檢查交換空間,你應(yīng)該會(huì)看到你的 Linux 系統(tǒng)會(huì)識(shí)別并使用它作為交換空間:

swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 1024M 0B -2

步驟 4:讓改變持久化

迄今為止你所做的一切都是暫時(shí)的。重新啟動(dòng)系統(tǒng),所有更改都將消失。

你可以通過(guò)將新創(chuàng)建的交換文件添加到 /etc/fstab 文件來(lái)使更改持久化。

對(duì) /etc/fstab 文件進(jìn)行任何更改之前,最好先進(jìn)行備份。

sudo cp /etc/fstab /etc/fstab.back

現(xiàn)在將以下行添加到 /etc/fstab 文件的末尾:

/swapfile none swap sw 0 0

你可以使用 命令行文本編輯器 手動(dòng)操作,或者使用以下命令:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

現(xiàn)在一切都準(zhǔn)備好了。即使在重新啟動(dòng)你的 Linux 系統(tǒng)后,你的交換文件也會(huì)被使用。

調(diào)整 swAppiness 參數(shù)

swappiness 參數(shù)決定了交換空間的使用頻率。swappiness 值的范圍從 0 到 100。較高的值意味著交換空間將被更頻繁地使用。

Ubuntu 桌面的默認(rèn)的 swappiness 是 60,而服務(wù)器的默認(rèn) swappiness 是 1。你可以使用以下命令檢查 swappiness:

cat /proc/sys/vm/swappiness

為什么服務(wù)器應(yīng)該使用低的 swappiness 值?因?yàn)榻粨Q空間比內(nèi)存慢,為了獲得更好的性能,應(yīng)該盡可能多地使用內(nèi)存。在服務(wù)器上,性能因素至關(guān)重要,因此 swappiness 應(yīng)該盡可能低。

你可以使用以下系統(tǒng)命令動(dòng)態(tài)更改 swappiness:

sudo sysctl vm.swappiness=25

這種改變只是暫時(shí)的。如果要使其永久化,可以編輯 /etc/sysctl.conf 文件,并在文件末尾添加swappiness 值:

vm.swappiness=25

在 Linux 上調(diào)整交換空間的大小

在 Linux 上有幾種方法可以調(diào)整交換空間的大小。但是在你看到這一點(diǎn)之前,你應(yīng)該了解一些關(guān)于它的事情。

當(dāng)你要求系統(tǒng)停止將交換文件用于交換空間時(shí),它會(huì)將所有數(shù)據(jù)(確切地說(shuō)是內(nèi)存頁(yè))傳輸回內(nèi)存。所以你應(yīng)該有足夠的空閑內(nèi)存,然后再停止交換。

這就是為什么創(chuàng)建和啟用另一個(gè)臨時(shí)交換文件是一個(gè)好的做法的原因。這樣,當(dāng)你關(guān)閉原來(lái)的交換空間時(shí),你的系統(tǒng)將使用臨時(shí)交換文件。現(xiàn)在你可以調(diào)整原來(lái)的交換空間的大小。你可以手動(dòng)刪除臨時(shí)交換文件或留在那里,下次啟動(dòng)時(shí)會(huì)自動(dòng)刪除(LCTT 譯注:存疑?)。

如果你有足夠的可用內(nèi)存或者創(chuàng)建了臨時(shí)交換空間,那就關(guān)閉你原來(lái)的交換文件。

sudo swapoff /swapfile

現(xiàn)在你可以使用 fallocate 命令來(lái)更改文件的大小。比方說(shuō),你將其大小更改為 2GB:

sudo fallocate -l 2G /swapfile

現(xiàn)在再次將文件標(biāo)記為交換空間:

sudo mkswap /swapfile

并再次啟用交換文件:

sudo swapon /swapfile

你也可以選擇同時(shí)擁有多個(gè)交換文件。

刪除 Linux 中的交換文件

你可能有不在 Linux 上使用交換文件的原因。如果你想刪除它,該過(guò)程類似于你剛才看到的調(diào)整交換大小的過(guò)程。

首先,確保你有足夠的空閑內(nèi)存。現(xiàn)在關(guān)閉交換文件:

sudo swapoff /swapfile

下一步是從 /etc/fstab 文件中刪除相應(yīng)的條目。

最后,你可以刪除該文件來(lái)釋放空間:

sudo rm /swapfile

你用了交換空間了嗎?

我想你現(xiàn)在已經(jīng)很好地理解了 Linux 中的交換文件概念。現(xiàn)在,你可以根據(jù)需要輕松創(chuàng)建交換文件或調(diào)整它們的大小。

如果你對(duì)這個(gè)話題有什么要補(bǔ)充的或者有任何疑問(wèn),請(qǐng)?jiān)谙旅媪粝略u(píng)論。


via: https://itsfoss.com/create-swap-file-linux/

作者: Abhishek Prakash 選題: lujun9972 譯者: heguangzhi 校對(duì): wxy

本文由 LCTT 原創(chuàng)編譯, Linux中國(guó) 榮譽(yù)推出

分享到:
標(biāo)簽:交換 文件 Linux
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定