大负翁 發表於 2020-6-8 15:48:00

Ubuntu增加Swap空间大小

<div class="article-header-box">
<div class="article-header">
<div class="article-title-box">
<h1 class="title-article"></h1>
</div>
</div>
</div>
<div id="article_content" class="article_content clearfix">
<div id="content_views" class="htmledit_views">
<h2 id="1首先用命令free查看系统内-swap-分区大小">1.首先用命令free查看系统内 Swap 分区大小</h2>
<p> <span style="text-decoration: underline"><em><strong> free -m</strong></em></span><br>  total used free shared buffers cached<br>  Mem: 2012 1960 51 0 748 950<br>  -/+ buffers/cache: 260 1751<br>  Swap: 255 0 255<br>  可以看到 Swap 只有255M,下面我们来扩大到2G。</p>
<p>&nbsp;</p>
<p><span style="color: rgba(255, 0, 0, 1)">sudo swapon --show</span></p>
<p><span style="color: rgba(255, 0, 0, 1)">交换分区路径</span></p>
<h2 id="2创建一个-swap-文件">2.创建一个 Swap 文件</h2>
<p>  找一个空间足够的目录用来存放swap文件<br>  <span style="text-decoration: underline"><strong>mkdir /swap</strong></span><br><span style="text-decoration: underline"><strong>  cd /swap</strong></span><br><span style="text-decoration: underline"><strong>  sudo dd if=/dev/zero of=<span style="color: rgba(255, 0, 0, 1); text-decoration: underline">swapfile</span> bs=1024 count=2000000</strong></span></p>
<p><br>  出现下列提示,上面命令中的 count 即代表swap文件大小。<br>  记录了2000000+0 的读入<br>  记录了2000000+0 的写出<br>  2048000000字节(2.0 GB)已复制,63.3147 秒,32.3 MB/秒<br>  把生成的文件转换成 Swap 文件</p>
<p>或者用</p>
<p>&nbsp; &nbsp;&nbsp;</p>
<div class="cnblogs_code">
<pre>sudo fallocate -l 1G /swapfile</pre>
</div>
<p>执行以下命令为 swapfile 文件设置正确的权限:</p>
<pre class="prettyprint"><span class="pln">sudo chmod <span class="lit">600<span class="pln"> <span class="pun">/<span class="pln">swapfile</span></span></span></span></span></pre>
<p><br>  <span style="text-decoration: underline"><strong>sudo mkswap -f /swapfile</strong></span><br>  Setting up swapspace version 1, size = 1999996 KiB<br>  no label, UUID=fee9ab21-9efb-47c9-80f4-57e48142dd69</p>
<p>速度都很快</p>
<h2 id="3激活-swap-文件">3.激活 Swap 文件</h2>
<p>  </p>
<div class="cnblogs_code">
<pre>sudo swapon /swapfile</pre>
</div>
<p>&nbsp;</p>
<p>  再次查看 free -m 的结果。<br>  total used free shared buffers cached<br>  Mem: 2012 1971 41 0 572 1156<br>  -/+ buffers/cache: 241 1770<br>  Swap: 2209 0 2209<br>  添加成功。</p>
<h2 id="扩展">要让创建好的 swap 分区永久生效,可以将 swapfile 路径内容写入到&nbsp;<span class="red-code">/etc/fstab&nbsp;文件当中:</span>:</h2>
<p>  </p>
<div class="cnblogs_code">
<pre>/swapfile swap swap defaults <span style="color: rgba(128, 0, 128, 1)">0</span> <span style="color: rgba(128, 0, 128, 1)">0</span></pre>
</div>
<p>&nbsp;</p>
<h2>调整Swappiness值</h2>
<p>Swappiness 是一个 Linux 内核属性,用于定义 Linux 系统使用 SWAP 空间的频率。Swappiness 值可以从&nbsp;<span class="red-code">0&nbsp;至&nbsp;<span class="red-code">100,较低的值会让内核尽可能少的使用 SWAP 空间,而较高的值将让 Linux Kernel 能够更加积极地使用 SWAP 分区。</span></span></p>
<p>Ubuntu 18.04 默认的 Swappiness 值为&nbsp;<span class="red-code">60,您可以使用如下命令来查看:</span></p>
<pre class="prettyprint"><span class="pln">cat <span class="pun">/<span class="pln">proc<span class="pun">/<span class="pln">sys<span class="pun">/<span class="pln">vm<span class="pun">/<span class="pln">swappiness</span></span></span></span></span></span></span></span></span></pre>
<p>值为 60 对于 Ubuntu 18.04 桌面还算行,但对于 Ubuntu Server 来说,SWAP 的使用频率就比较高了,所以您可能需要设置较低的值。例如,要将 swappiness 值设置为 40,请执行:</p>
<pre class="prettyprint"><span class="pln">sudo sysctl vm<span class="pun">.<span class="pln">swappiness<span class="pun">=<span class="lit">40</span></span></span></span></span></pre>
<p><img src="https://img.sysgeek.cn/img/2019/04/ubuntu-18-04-swap-3.jpg" alt="终端" width="913" height="489" class="alignnone" data-tag="bdshare"></p>
<p>如果要让设置在系统重启后依然有效,则必要在&nbsp;<span class="red-code">/etc/sysctl.conf&nbsp;文件中添加以下内容:</span></p>
<pre class="prettyprint"><span class="pln">vm<span class="pun">.<span class="pln">swappiness<span class="pun">=<span class="lit">40</span></span></span></span></span></pre>
<p>最佳 swappiness 值取决于您系统的工作负载以及内存的使用方式,您应该以小增量的方式来调整此参数,以查到最佳值。</p>
<h2>移除SWAP分区</h2>
<p>Ubuntu 18.04 要停用并删除 SWAP 文件,请按照下列步骤操作:</p>
<p><span class="post-step">1首先输入以下命令停用 SWAP 空间:</span></p>
<pre class="prettyprint"><span class="pln">sudo swapoff <span class="pun">-<span class="pln">v <span class="pun">/<span class="pln">swapfile</span></span></span></span></span></pre>
<p><span class="post-step">2在&nbsp;<span class="red-code">/etc/fstab&nbsp;文件中删除有效 swap 的行。</span></span></p>
<p><span class="post-step">3最后执行以下命令删除 swapfile 文件:</span></p>
<pre class="prettyprint"><span class="pln">sudo rm <span class="pun">/<span class="pln">swapfile</span></span></span></pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><img src="https://img.sysgeek.cn/img/2019/04/ubuntu-18-04-swap-4.jpg" alt="终端" width="913" height="489" class="alignnone" data-tag="bdshare"></p>
<p><span style="font-size: 18pt">扩大原有swap交换分区:</span></p>
<p>需要先移除,然后重新创建添加。</p>
<p>如果添加第二个swap分区,系统反而会变慢。奇怪。</p>
</div>
</div><br><br>
来源:https://www.cnblogs.com/bigben0123/p/13066136.html
頁: [1]
查看完整版本: Ubuntu增加Swap空间大小