欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

千鋒扣丁學(xué)堂Linux培訓(xùn)之如何創(chuàng)建和使用交換文件

2019-09-17 15:00:18 4312瀏覽

今天千鋒扣丁學(xué)堂Linux培訓(xùn)老師給大家分享一篇關(guān)于如何在Linux上創(chuàng)建和使用交換文件的詳細(xì)介紹,為什么使用它以及它相對于傳統(tǒng)交換分區(qū)的優(yōu)勢。你將學(xué)習(xí)如何創(chuàng)建交換文件和調(diào)整其大小,下面我們一起來看一下吧。



什么是Linux的交換文件?

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

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

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

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

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

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

檢查Linux的交換空間

在你開始添加交換空間之前,最好檢查一下你的系統(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命令給出了交換空間的大小,但它并沒有告訴你它是真實的交換分區(qū)還是交換文件。swapon命令在這方面會更好。

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

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

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

如果你的系統(tǒng)上沒有交換空間,它應(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命令不會顯示任何輸出。

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

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

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

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

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

sudo fallocate -l 1G /swapfile

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

sudo chmod 600 /swapfile

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

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

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

sudo mkswap /swapfile

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

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

步驟3:啟用交換文件

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

sudo swapon /swapfile

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

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

步驟4:讓改變持久化

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

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

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

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

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

/swapfile none swap sw 0 0

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

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

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

調(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值?因為交換空間比內(nèi)存慢,為了獲得更好的性能,應(yīng)該盡可能多地使用內(nèi)存。在服務(wù)器上,性能因素至關(guān)重要,因此swappiness應(yīng)該盡可能低。

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

sudo sysctl vm.swappiness=25

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

vm.swappiness=25

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

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

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

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

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

sudo swapoff /swapfile

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

sudo fallocate -l 2G /swapfile

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

sudo mkswap /swapfile

并再次啟用交換文件:

sudo swapon /swapfile

你也可以選擇同時擁有多個交換文件。

刪除Linux中的交換文件

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

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

sudo swapoff /swapfile

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

最后,你可以刪除該文件來釋放空間:

sudo rm /swapfile

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

以上就是關(guān)于千鋒扣丁學(xué)堂Linux培訓(xùn)之如何創(chuàng)建和使用交換文件的全部內(nèi)容,想了解更多內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢。想要學(xué)好Linux開發(fā)小編給大家推薦口碑良好的扣丁學(xué)堂,扣丁學(xué)堂有專業(yè)老師制定的Linux學(xué)習(xí)路線圖輔助學(xué)員學(xué)習(xí),此外還有與時俱進(jìn)的Linux課程體系和Linux視頻教程供大家學(xué)習(xí),想要學(xué)好Linux開發(fā)技術(shù)的小伙伴快快行動吧??鄱W(xué)堂Linux技術(shù)交流群:422345477。


                          JavaEE/微服務(wù)/源碼解析/分布式/企業(yè)級架構(gòu)【VIP體驗課】


     【關(guān)注微信公眾號獲取更多學(xué)習(xí)資料】        【掃碼進(jìn)入JavaEE/微服務(wù)VIP免費公開課】



查看更多關(guān)于“Linux培訓(xùn)資訊”的相關(guān)文章>>

標(biāo)簽: Linux培訓(xùn) Linux視頻教程 紅帽Linux視頻 Linux學(xué)習(xí)視頻 Linux入門視頻 紅帽RHCE/RHCSA考試

熱門專區(qū)

暫無熱門資訊

課程推薦

微信
微博
15311698296

全國免費咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權(quán)所有   北京市海淀區(qū)寶盛北里西區(qū)28號中關(guān)村智誠科創(chuàng)大廈4層
京ICP備2021002079號-2   Copyright ? 2017 - 2022
返回頂部 返回頂部