Linuxでスワップパーティションファイルを作成する方法

Linuxでスワップパーティションファイルを作成する方法

スワップの紹介

Linux のスワップ (スワップ パーティション) は、Windows の仮想メモリに似ています。メモリが不足すると、ハードディスク領域の一部がメモリとして仮想化され、メモリ容量不足の問題が解決されます。

スワップファイルの作成方法

1. 交換用のファイルを作成する

sudo fallocate -l 1G /スワップファイル

faillocate がインストールされていない場合、または「fallocate failed: Operation not support」というエラー メッセージが表示される場合は、次のコマンドを使用してスワップ ファイルを作成できます。

sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576

2. 適切な権限を設定する

スワップ ファイルの書き込みと読み取りができるのは root ユーザーのみなので、正しい権限タイプを設定します。

sudo chmod 600 /スワップファイル

3. Linuxスワップ領域を設定する

mkswap ユーティリティを使用して、ファイルを Linux スワップ領域として設定します。

sudo mkswap /スワップファイル

4. スワップを有効にする

次のコマンドでスワップ ファイルをアクティブ化します。

sudo swapon /スワップファイル

変更を永続的にするには、/etc/fstab ファイルを開き、次の行を追加します。

/swapfile swap スワップ デフォルト 0 0

5. 交換ステータスを確認する

スワップがアクティブであることを確認するには、次のように swapon または free コマンドを使用します。

sudo swapon --show

出力

名前 タイプ サイズ 使用頻度 優先順位
/swapfile ファイル 1024M 507.4M -1
sudo フリー -h

出力

       使用可能な使用済み空き共有バフ/キャッシュの合計
メモリ: 488M 158M 83M 2.3M 246M 217M
スワップ: 1.0G 506M 517M

swappiness を調整する方法

Swappiness は、システムがスワップ領域を使用する頻度を定義する Linux カーネルのプロパティです。 Swappiness は 0 から 100 までの値を取ることができます。値を低くするとカーネルはスワップをできるだけ回避しますが、値を大きくするとカーネルはスワップ領域をより積極的に使用します。

デフォルトの swappiness 値は 60 です。次のように入力すると、現在の swappiness 値を確認できます。

cat /proc/sys/vm/swappiness

出力

60

swappiness の値を 60 に設定するとデスクトップでは問題ありませんが、実稼働サーバーではより低い値を設定することをおすすめします。

たとえば、swappiness 値を 10 に設定するには、次のように入力します。

sudo sysctl vm.swappiness=10

このパラメータを再起動しても維持するには、/etc/sysctl.conf ファイルに次の行を追加します。

vm.スワップ度=10

最適な swappiness 値は、システムのワークロードとメモリの使用方法によって異なります。最適な値を見つけるには、このパラメータを少しずつ調整する必要があります。

スワップファイルを削除する方法

何らかの理由でスワップ ファイルを非アクティブ化して削除する場合は、次の手順に従ってください。

1. まず、次のコマンドを使用してスワップを非アクティブ化します。

sudo swapoff -v /スワップファイル

2. /etc/fstab ファイルからスワップ ファイル エントリ /swapfile swap swap defaults 0 0 を削除します。

3. 最後に実際のスワップファイルを削除します。

sudo rm /スワップファイル

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Golang を使用して Linux 上のファイルのアクセス/作成/変更時間を取得する
  • Linux フォルダファイルの作成と削除の解析
  • Linux パーティションまたは論理ボリュームにファイルシステムを作成する方法
  • Linux で binlog ファイルの作成時間を表示するコマンド
  • 日付フォルダまたはファイルを作成する Linux コマンドのサンプルコード
  • Linux でファイルの作成時間を取得する方法と実践的なチュートリアル

<<:  CocosCreatorでゲームコントローラーを使用する方法

>>:  Spring jdbc のデータベース操作オブジェクト モデルの詳細な例

推薦する

HTMLはa要素hrefのURLリンクを自動的に更新したり新しいウィンドウを開いたりする機能を実装する

場合によっては、次のような機能を実装したいことがあります。リンクをクリックします。リンクがブラウザで...

純粋な CSS 流星群の背景サンプルコード

GitHubアドレス、気に入ったらスターを付けてくださいプラグインのプレビューチュートリアルコード表...

CSS3マスクレイヤーのくり抜き効果を実現するさまざまな方法

この記事では、マスク レイヤーの中空化を実現する 4 つの方法を紹介します。みんなと共有し、自分用の...

HTML テーブルタグチュートリアル (7): 背景色属性 BGCOLOR

テーブルの背景色は、BGCOLOR 属性を通じて設定できます。基本的な構文<テーブル BGCO...

Vueウォッチの監視方法の概要

目次1. Vueにおけるwatchの役割はその名の通り、監視の役割です。 2. このオブジェクトのプ...

MySQL接続クエリにおけるととwhereの違いの簡単な分析

1. テーブルを作成する テーブル「学生」を作成( `id` int(11) NULLではない、 `...

Linux で MySQL のスケジュールバックアップを実装する方法

実際のプロジェクトでは、緊急事態を防ぐためにデータベースを頻繁にバックアップする必要があります。しば...

JS における for、for...in、for...of、forEach の違いと使用例

forループ基本的な構文形式: for(変数の初期化; 条件式; 演算式){ループ本体ステートメント...

CSS 前景と背景の自動カラーマッチング技術の紹介 (デモ)

1. カラーマッチング効果のプレビュー下の GIF に示すように、ボタンの背景色が徐々に薄くなると...

Vue 3 カスタムディレクティブ開発の概要

指令とは何ですか? Angular と Vue はどちらもディレクティブの概念を持っており、これは通...

Vue で PC アドレスをモバイル アドレスにリダイレクトする方法

要件:PC側とモバイル側は2つの独立したプロジェクトです。2つのプロジェクトの内容は基本的に同じで、...

Windows 10 での MySQL 8.0 のダウンロードとインストール構成のグラフィック チュートリアル

この記事では、MySQL 8.0のダウンロードとインストールについてご紹介します。具体的な内容は以下...

MySQL で datetime 型のデフォルト値を設定する方法

Navicat クライアントを通じてデフォルトの日時値を変更する際に問題が発生しました。データベース...

Element-ui レイアウト (行と列コンポーネント) の実装

目次基本的な手順と使用方法行コンポーネントの分析レンダリング機能ソースコード分析Col成分の分析コン...

JQueryはアニメーション効果の非表示と表示を実装します

この記事では、アニメーション効果の非表示と表示を実現するためのJQueryの具体的なコードを参考まで...