Linux ディスクのマウント、パーティション分割、容量拡張操作を実装する方法

Linux ディスクのマウント、パーティション分割、容量拡張操作を実装する方法

基本概念

操作の前に、まずいくつかの基本的な概念を理解する必要があります

ディスク

Linux システムでは、すべてのデバイスはファイルの形式で保存されます。デバイスは通常、sda、sda1、sda2、…、sdb、sdb1、…、hda、hdb の形式で /dev ディレクトリに保存されます。現在、ほとんどのデバイスは「sd」という名前が付けられていますが、非常に古いハードドライブは「ha」という名前が付けられていました。

sda: 最初のハードディスク。ディスクがパーティション化されている場合は、sda1 (最初のパーティション)、sda2 などになります。

sdb: 2 番目のハードディスク。パーティション分割後、sdb1、sdb2 などになります。

パーティション

パーティション分割の目的は管理を容易にすることです。たとえば、Windows システムでは通常、C ドライブ、D ドライブ、E ドライブなどに分割します。

Linux では、プライマリ パーティションを 4 つしか作成できません。さらにパーティションを作成する必要がある場合は、論理パーティションを作成する必要があり、論理パーティションは 1 つのプライマリ パーティションを占有する必要があります。

ファイルシステム

Linux におけるファイルシステムとは、パーティションの種類です。Windows では、NTEF、FAT32 などがあります。Linux では、Ext2、Ext3、Ext4、Linux swap、proc、sysfs、tmpfs などがあります。マウント名から、現在マウントされているファイルシステムを確認できます。

形式

パーティションを作成した後、1 つのステップはパーティションをフォーマットすることです。実際、これは Windows システムでも同じです。パーティションを作成した後、パーティションをフォーマットする必要もあります。パーティションは、特定のファイル タイプにフォーマットされた後にのみ使用できます。

マウント

Windows では、パーティションはフォーマット後に使用できますが、Linux システムでは、パーティションを特定のパスにマウントする必要があります。

一般的なコマンド

lsblk 現在のディスクステータスを表示する
df -lh ファイルシステムのステータスを表示する -l マウントポイントを表示する
parted -lはファイルシステムの種類を一覧表示します
fdisk -l 現在マウントされていないハードディスクを表示する

新しいハードドライブをマウントする

新しいハードディスクをマウントする基本的な考え方は、パーティションを作成し、ファイルシステムを作成し、マウントすることです。

1. 新しいハードドライブを確認する

まず、ハードディスクの状態を確認します。

fdisk -l

で:

ディスク /dev/sdc にはディスクの下に有効なパーティション テーブルが含まれていません。のようなメッセージが表示される場合、またはディスクの下に sdb1 sdb2 のようなメッセージが表示されない場合は、ディスクがマウントされていないことを意味します。

ここではハードディスク名が/dev/sdbであると仮定します。

2. パーティションを作成する

dfisk /dev/sdb

プロンプトに従って、「n」、「p」、「1」の順に入力し、Enterキーを2回押して、「wq」と入力します。

これは、sdb ディスク全体と同じサイズの新しいプライマリ パーティション (1) を作成し、そこに書き込むことを意味します。

注: 簡潔にするために、上記の操作ではプライマリ パーティションを 1 つだけ作成します。実際、ディスクには最大 4 つのプライマリ パーティション (1 つの拡張パーティションを含む) を作成できます。1 ~ 4 はすべてプライマリ パーティションです。パーティションを拡張パーティションとして使用することもできます (df -lh で表示されるシステムは Extended です)。

この時点ではディスクはパーティション分割されていますが、ファイル システムはまだ存在せず、ディスクはまだ使用できません。

3. システムに書き込む

mkfs.ext4 /dev/sdb

このコマンドはディスクをフォーマットし、ファイルシステムを書き込みます

4. マウント

たとえば、/dataの下にマウントします

mkdir /data # このステップが存在する場合はスキップし、mount /dev/sdb /data

5. 起動時に自動マウントを設定する

上記は一時的なマウントであり、起動時に自動的にマウントされるように設定する必要があります。

vim /etc/fstab


# 次に、コンテンツの最後に行を追加します (ファイルの種類が対応している必要があることに注意してください)。

/dev/sdb /data ext4 デフォルト 0 0

スケーリング

既存のディレクトリへのマウントについて

マウントするディレクトリが空でない場合、ファイルシステムがマウントされた後、元のディレクトリの内容は一時的に消えます。上書きされるのではなく、一時的に非表示になります。新しいパーティションがアンマウントされると、元のディレクトリの元の内容が再び表示されます。

既存のディレクトリを永続的にマウントする場合は、新しいハードディスクにファイルシステムを作成した後、一時ディレクトリにマウントし、拡張するディレクトリをこの一時ディレクトリにコピーし、拡張するディレクトリを削除して一時マウントポイントをアンマウントし、拡張するディレクトリに再マウントします。例:

# たとえば、/varを展開するには

# ファイルシステムを作成したら、一時的なマウントポイントストレージを作成します
mkdir /storage

# /dev/sdb1 を /storage にマウントします mount /dev/sdb1 /storage

# /var の下にあるすべての内容を新しいハードディスクにコピーします cp -pdr /var /storage
# または、/var ディレクトリで実行します: find . -depth -print | cpio - pldvm /temp
# 現在の /var ディレクトリの内容を削除します rm -rf /var/*
# ハードディスクを/varディレクトリに再マウントします。umount /dev/sdb1
/dev/sdb1 /var をマウントする

# ディスクがビジー状態の場合は、fuser を使用してディスクを使用しているプログラムを見つけて終了します。

フューザー -m -v /var
フューザー -m -v -i -k /var

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

以下もご興味があるかもしれません:
  • Linux ディスク パーティションの実装の原理と方法の分析
  • Linux ディスクとディスク パーティションを理解するための記事
  • Linux システム ディスクのフォーマットとスワップ パーティションの手動追加
  • Linux仮想マシンのルートパーティションディスク拡張スペースレコードの詳細な説明
  • Linux ディスク パーティションの実際的な例 (必読)
  • LINUX ディスクのパーティション分割、フォーマット、マウント、アンインストールの詳細なプロセス
  • 2T を超える Linux ディスクで GPT パーティションを使用する方法
  • Linux parted ディスク パーティション実装手順の分析

<<:  VMWare Linux MySQL 5.7.13 のインストールと設定のチュートリアル

>>:  WeChatアプレットを少なく使う方法(最適な方法)

推薦する

Reactのコンポーネント共同利用実装

目次ネスティング親子コンポーネント通信ブラザーコンポーネント通信撤回するReact の Linked...

docker を使って sonarqube を構築する方法

目次1. Dockerをインストールする2. ソナーイメージをインストールする3. ソナーを使ってコ...

数百万のデータボリュームに対する MySQL ページングクエリ方法とその最適化の提案

データベース SQL の最適化はよくある問題です。何百万ものデータ ボリュームに対してページング ク...

MySQL での SQL モードの表示と設定の詳細な説明

MySQL での SQL モードの表示と設定MySQL はさまざまなモードで実行でき、さまざまなシナ...

シンプルなメッセージボードケースを実現するJavaScript

参考までに、Javascriptを使用してメッセージボードの例(メッセージ削除あり)を実装します。具...

クラウドサーバーはBaotaを使用してPython環境を構築し、Djangoプログラムを実行します。

目次PagodaをインストールするPythonランタイム環境を構成するPythonをインストールする...

DockerにELKをインストールしてJSON形式のログ分析を実装する方法

ELKとは何ですか? ELK は、Elastic が提供するログ収集およびフロントエンド表示ソリュー...

css-loader を使用して vue-cli で css モジュールを実装する

【序文】 Vue と React の CSS モジュール ソリューションはどちらも、実装にローダーに...

チェックボックスの不確定プロパティの使用の紹介

Windows XP でフォルダーのプロパティ ダイアログ ボックスを使用すると、フォルダーの属性カ...

ElementUIテーブルのヘッダーアイコンにフローティングプロンプトを追加します。

この記事では主に、ElementUI テーブルのヘッダー アイコンにフローティング プロンプトを追加...

MySQL FAQ シリーズ: ibdata1 ファイルのサイズが突然増加しないようにする方法

0. はじめにibdata1 ファイルとは何ですか? ibdata1 は、innodb システム テ...

HTMLページが3秒後に自動的にジャンプする3つの一般的な方法

実際には、N 秒後にページを自動的にジャンプさせるにはどうすればよいかという問題によく遭遇します。私...

MySQL データベース内の varchar 型の数値のサイズを比較する方法

テストテーブルを作成する -- ---------------------------- -- ch...

Ubuntu で G++ を使用して CPP ファイルをコンパイルする

g++ を使用して初めて cpp ファイルをコンパイルしたとき、未定義の参照エラーが報告されました。...

Dockerを使用してSpringBootプロジェクトをデプロイする方法

Docker テクノロジの開発により、マイクロサービスの実装にさらに便利な環境が提供されます。Doc...