Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

Ubuntu サーバーはよくできたマシンです。残念ながら、キャッシュが原因で行き詰まってしまうことがあります。このガイドでは、Ubuntu システムのキャッシュをクリーンアップしてスワップを解放する方法について説明します。

Ubuntu ページのキャッシュをクリアする

ページキャッシュとは何ですか? ページ キャッシュには、バッファリングされた I/O やその他の重要な OS データなど、多くのものが含まれています。したがって、Ubuntu サーバーを実行していて、システムのページ キャッシュが急速にいっぱいになっていることに気付いた場合は、それをフラッシュするとよいでしょう。

幸いなことに、Ubuntu のページ キャッシュのフラッシュは信じられないほど簡単です。これを行うには、まずターミナル ウィンドウを開く必要があります。次に、ターミナル ウィンドウが開いて使用できる状態になったら、root として Ubuntu にログインします。

注: Ubuntu システムで root アカウントが有効になっていない場合は、suではなくsudo -sコマンドを使用して root にログインできます。

すー

root アカウントで Ubuntu のターミナル シェルにログインした後、ファイルに対してecho 1コマンドを実行して/proc/sys/vm/drop_caches、システム上のページ キャッシュを解放します。

Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

エコー 1 > /proc/sys/vm/drop_caches

Ubuntu でページ キャッシュをクリアしたら、free -w -hコマンドを実行し、「キャッシュ」列をチェックして、Ubuntu で解放されたページ キャッシュの量を確認できます。

フリー -w -h

Ubuntu のデントリと i ノードのクリア

dentry と inode とは何ですか? Dentries はディレクトリを表すデータ構造であり、inode はファイルを表すデータ構造です。dentry と inode の両方をキャッシュの保存に使用できます。キャッシュは時間を節約し、ストレージから i ノード/デントリを繰り返し読み書きする必要がないようにするために存在します。

Ubuntu では dentries キャッシュと inode キャッシュを持つことが重要ですが、いっぱいになって扱いにくくなる可能性があります。ありがたいことに、ページ キャッシュと同様に、dentry および inode キャッシュをクリアすることができます。

キャッシュをクリアするには、まずターミナル ウィンドウを開きます。ターミナル ウィンドウを開いた後、 suコマンド ( root が無効になっている場合はsudo -s )を使用して、Ubuntu の root アカウントにログインします。

すー

Ubuntu の root アカウントにログインしたら、ファイルに対してechoコマンドを使用して、システム上の dentry および inode キャッシュをクリアできます/proc/sys/vm/drop_caches

Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

エコー 2 > /proc/sys/vm/drop_caches

Linux 上のスワップ領域を解放する

Ubuntu ではスワップ スペースが便利です。特に、大量の RAM を使用するが、物理的なシステム メモリがそれほど多くないサーバーを実行している場合に便利です。ただし、Ubuntu でスワップを大量に使用している場合は、スワップが頻繁に不足することに気づくかもしれません。

Ubuntu システム上のスワップ スペースを空にしたい場合は、スワップ スペースをオンまたはオフにすることができます。Ubuntu でスワップをオフにするには、まずターミナル ウィンドウを開きます。次に、 su (またはUbuntu で root が無効になっている場合はsudo -s )を使用して root アカウントにログインします。

すー

Ubuntu の root アカウントにログインした後、swapoffコマンドを実行できます。このコマンドはスワップをオフにします。また、Ubuntu のスワップ スペースを使用しているプログラムもすべて消去されます (基本的にはクリーンにフラッシュされます)。

Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

スワップオフ -a

スワップが終了すると、すべてがクリアされます。swaponコマンドを使用して、スワップ領域を再びオンにできるようになりました。

Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

スワポン -a

Ubuntu 上の他のキャッシュをクリアする

ページ キャッシュ、デントリ キャッシュ、inode キャッシュ、およびスワップ スペースのクリアは役立ちますが、Ubuntu サーバーをクリーンアップするためにできることはこれだけではありません。コマンド ラインで Bleachbit クリーナーを使用して他のものをクリアすることもできます。

Ubuntu でクリーニング プロセスを開始するには、ターミナル ウィンドウを開く必要があります。開いたら、sudo apt installコマンドを使用して「bleachbit」パッケージをインストールします。

sudo apt インストールbleachbit

上記のコマンドを入力すると、Ubuntu はパスワードの入力を求めます。キーボードを使用してパスワードを入力します。次に、Y を押してインストールを確認します。

Bleachbit ツールをインストールしたら、bleachbit –listコマンドを実行して、システムで使用できるクリーナーのリストを表示します。

Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

ブリーチビット --リスト

実行可能なクリーナーのリストを確認します。次に、bleachbit –previewコマンドを実行して、Bleachbit コマンドライン ツールがシステムから何を消去するかを確認します。たとえば、「system.tmp」クリーナーをプレビューするには、次を実行します。

Ubuntuでキャッシュをクリーンアップしてスワップを解放する方法

sudobleachbit --preview system.tmp

クリーナーを調べて、Ubuntu から何が消去されるかを確認した後、bleachbit –cleanコマンドを実行できます。

sudobleachbit --clean クリーナー名.name


UbuntuサーバーにGitLabをインストールする方法

UbuntuサーバーにGitLabをインストールする方法

GitLab を Ubuntu サーバー上で動作させたいと考えていますか? GitLab は、GitHub のようなサービスに代わる、強力な自己ホスト可能な代替サービスです。これを使用すると、次のことができます

SELinux による Ubuntu Linux サーバーの保護

SELinux による Ubuntu Linux サーバーの保護

SELinux をインストールしてアクティブ化することで、Ubuntu Linux サーバーにセキュリティを追加する方法を学びます。

Cockpit を使用して Linux サーバー上で NFS を構成する

Cockpit を使用して Linux サーバー上で NFS を構成する

Linux サーバーに NFS 共有をマウントする簡単な方法が必要ですか? Cockpit アプリを使用して NFS 共有をマウントする方法を学びます。

Ubuntu 22.04 LTS にアップグレードする方法

Ubuntu 22.04 LTS にアップグレードする方法

Ubuntu 22.04 の長期サポートが登場しました! デスクトップまたはラップトップを最新の Ubuntu リリースにアップグレードする方法を学びます。

最新の Nvidia GPU ドライバーを Linux にインストールする方法

最新の Nvidia GPU ドライバーを Linux にインストールする方法

最新の Nvidia GPU ドライバーを Linux にインストールする方法

Dockerコンテナにファイルを転送する方法

Dockerコンテナにファイルを転送する方法

ファイルを Docker コンテナに転送する必要がありますか? Docker cp ツールを使用すると、コンテナーとの間でファイルを簡単に移動できます。

Linux に DEB ファイルをインストールする方法

Linux に DEB ファイルをインストールする方法

.DEB ファイルとは何ですか? それを使って何をしますか?Linux PC に DEB ファイルをインストールするさまざまな方法を学びましょう。

GOG Galaxy を Linux 上で動作させる方法

GOG Galaxy を Linux 上で動作させる方法

GOG.com のゲームを所有していますか? ビデオ ゲームを楽しむために Linux PC に GOG Galaxy クライアントをセットアップしたいですか? このガイドに従ってください。

CentOS に Docker エンジンをインストールする方法

CentOS に Docker エンジンをインストールする方法

Docker Engine は、Linux およびその他のプラットフォーム用のオープン コンテナ化プログラムです。Docker Engine は、次のように動作する自己完結型コンテナを管理します。

Ferdi とすべてのチャットを 1 つにまとめる方法

Ferdi とすべてのチャットを 1 つにまとめる方法

Slack、Discord、その他多くの生産性向上ツールを Linux システムにインストールすることにうんざりしていませんか? それらをすべて 1 つに結合できたらいいのにと思いますか