スワップファイルを作成し、それをスワップとして使用する方法を知っています。しかし、私は事前にファイルのサイズを設定する必要があり、スワップが使用されるかどうかにかかわらず、ディスク上のスペースが使用されます。
初期サイズが0でオンデマンドで拡張するスワップを作成するにはどうすればよいですか?
スワップファイルを作成し、それをスワップとして使用する方法を知っています。しかし、私は事前にファイルのサイズを設定する必要があり、スワップが使用されるかどうかにかかわらず、ディスク上のスペースが使用されます。
初期サイズが0でオンデマンドで拡張するスワップを作成するにはどうすればよいですか?
回答:
スワップスペースは古く、メンテナンスされておらず、ある日、現代のシステムで問題を引き起こす可能性があります。ダイナミックスワップの最善の解決策は次のとおりです。
sudo apt install dphys-swapfile
sudo update-rc.d dphys-swapfile enable
その後、最後に設定CONF_SWAPFACTOR=2
します/etc/dphys-swapfile
sudo service dphys-swapfile start
SwapSpaceは、オペレーティングシステムの要件に応じてサイズを変更する「動的スワップファイル」を作成するユーティリティです。
したがって、仮想スワップファイルの作成を忘れて、「SwapSpace」をインストールするだけで、自動的に作成され、必要に応じてサイズを変更することもできます。
また、手動で作成されたスワップファイルと並べて「Swapspace」を使用することもできます。手動で1つがいっぱいになると、「Swapspace」は自動的にOS用に別のファイルを作成するため、OSには常にスワップスペースがあり、安定性が向上します。
「SwapSpace」のもう1つの便利な点は、可能な場合は常に、SwapSpaceのサイズを減らし、それらのバイトをユーザーファイルシステムに「解放」します。開発者によると、この削減により、スワップファイルのパフォーマンスも向上します(さらに、「貴重な」HDDスペースも無駄になりません)。
でインストール
sudo apt-get install swapspace
そして、必要に応じて構成ファイルを調整します。最小値を0
8 GB HDDのVM debianマシンに設定しました
さらに、スワップピネスを0
に設定して、VM上の貴重なHDDスペースの使用を最小限に抑えます。
システムのswappiness値を変更するには/etc/sysctl.conf
、ルートとして開きます。次に、次の行を変更するか、ファイルに追加します。
vm.swappiness = 0
(変更を有効にするために再起動します)
たとえば、fdiskを使用して作成するスワップパーティションであるAfaikは、既存のディスクのスペースを変更して別の場所に再割り当てするため、0より大きいスペースが必要になります。
とにかく、そしてあなたの質問に答えて、あなたは簡単に小さなパーティションを作り、それをfdiskの下でswapとして割り当てることができ、その後:
1)でスワッピングを無効にするswapoff -v
2)でパーティションのサイズを変更するlvresize
3)パーティションをフォーマットするmkswap
4)でスワップスペースを再度有効にするswapon -v
その後、を使用cat /proc/swaps
して、アップグレードされているかどうかを確認できます。これは、システムの仕様に応じて、スクリプトで簡単に使用でき、スワップスペースを増やす必要があるときはいつでもオンデマンドで実行できます。何かのようなもの:
$ swapoff -v /dev/swapvol1
$ lvresize /dev/swapvol1 -L +1G
$ mkswap /dev/swapvol1
$ swapon -v /dev/swapvol1