「設定 - ストレージのフォーマットとパーティション」の版間の差分
編集の要約なし |
|||
1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
Linuxにおいて、新しいストレージを準備することは簡単である。<br> | Linuxにおいて、新しいストレージを準備することは簡単である。<br> | ||
<br> | <br> | ||
# | ここでは、以下の4つのセクションにおいて、ストレージのフォーマット手順を記載する。<br> | ||
<br> | |||
# システム上のストレージを識別する。 | |||
# ストレージ全体にまたがる単一のパーティションを作成する。 | # ストレージ全体にまたがる単一のパーティションを作成する。 | ||
# | # Ext4等のファイルシステムでパーティションをフォーマットする。 | ||
# | # ストレージを自動マウントおよび手動マウントする。 | ||
<br><br> | <br><br> | ||
== | == パーティションソフトウェアのインストール == | ||
ここでは、ストレージをパーティション分割するには、partedを使用する。<br> | ここでは、ストレージをパーティション分割するには、partedを使用する。<br> | ||
このソフトウェアは、多くのLinuxディストリビューションにおいて、標準でインストールされている。<br> | このソフトウェアは、多くのLinuxディストリビューションにおいて、標準でインストールされている。<br> | ||
<br> | <br> | ||
もし、インストールされていない場合は、以下のコマンドを実行してインストールする。<br> | |||
# CentOS | # CentOS | ||
sudo yum install parted | sudo yum install parted | ||
21行目: | 22行目: | ||
<br><br> | <br><br> | ||
== | == ストレージの確認 == | ||
ストレージをフォーマットする前に、Linux上でストレージを識別できる必要がある。<br> | |||
識別する方法は、パーティション分割スキームが無いことを確認することである。<br> | |||
<br> | <br> | ||
partedコマンドを使用して、ストレージのパーティションレイアウトを一覧表示すると、有効なパーティション構成を持たないストレージに対してエラーが発生する。<br> | partedコマンドを使用して、ストレージのパーティションレイアウトを一覧表示すると、有効なパーティション構成を持たないストレージに対してエラーが発生する。<br> | ||
47行目: | 48行目: | ||
このセクションでは、ストレージ全体にまたがる単一のパーティションを作成する。<br> | このセクションでは、ストレージ全体にまたがる単一のパーティションを作成する。<br> | ||
<br> | <br> | ||
===== パーティション形式(GPT/MBR)の選択 ===== | ===== パーティション形式(GPT / MBR)の選択 ===== | ||
最初に、使用するパーティション形式を指定する必要がある。<br> | 最初に、使用するパーティション形式を指定する必要がある。<br> | ||
特別な事情がない場合は、GPTを使用することを推奨する。<br> | <u>特別な事情がない場合は、GPTを使用することを推奨する。</u><br> | ||
<br> | <br> | ||
GPT形式を選択する場合は、以下のコマンドを実行する。<br> | GPT形式を選択する場合は、以下のコマンドを実行する。<br> | ||
55行目: | 56行目: | ||
<br> | <br> | ||
MBR形式を選択する場合は、以下のコマンドを実行する。<br> | MBR形式を選択する場合は、以下のコマンドを実行する。<br> | ||
sudo parted /dev/ | sudo parted /dev/sdb mklabel msdos | ||
<br> | <br> | ||
===== パーティションの作成 ===== | ===== パーティションの作成 ===== | ||
74行目: | 75行目: | ||
== ファイルシステムの作成 == | == ファイルシステムの作成 == | ||
ここでは、Ext4ファイルシステムとしてフォーマットする。<br> | ここでは、Ext4ファイルシステムとしてフォーマットする。<br> | ||
これを行うには、<code>mkfs.ext4</code>コマンドを実行する。<br> | |||
また、<code>-L</code>オプションを使用することで、パーティションラベルを追加できる。これは、ストレージを識別するのに役立つ。<br> | |||
sudo mkfs.ext4 -L datapartition /dev/sda1 | sudo mkfs.ext4 -L datapartition /dev/sda1 | ||
<br> | <br> | ||
<u> | <u>※注意</u><br> | ||
ストレージ全体ではなく、パーティションを渡すようにすること。<br> | <u>ストレージ全体ではなく、パーティションを渡すようにすること。(sdbではなくsdb1と入力する)</u><br> | ||
<u>Linuxにおいて、ストレージ名はsda、sdb、hda等である。これらのパーティションの末尾には番号が付加されており、sda1等を使用する。</u><br> | |||
<u>もし、NVMe SSDを使用している場合は、ストレージ名がnvme0n1等と表示される。</u><br> | |||
<br> | <br> | ||
また、後でパーティションラベルを変更する場合は、<code>e2label</code>コマンドを使用する。<br> | |||
sudo e2label /dev/sdb1 <新しいラベル名> | sudo e2label /dev/sdb1 <新しいラベル名> | ||
<br> | <br> | ||
<code>lsblk --fs</code>コマンドを実行して、パーティションの識別を確認する。<br> | |||
このコマンドにより、パーティションの名前、ラベル、およびUUIDが確認できる。<br> | |||
lsblk --fs | |||
<br> | <br> | ||
バージョンに適切なフィールドが全て表示されない場合は、以下のコマンドを実行する。<br> | |||
lsblk -o NAME,FSTYPE,LABEL,UUID,PARTUUID,FSAVAIL,FSUSE%,MOUNTPOINT | |||
# 出力 | # 出力 | ||
101行目: | 104行目: | ||
== 特殊なフォーマット : FAT32 == | == 特殊なフォーマット : FAT32 == | ||
===== Windows 10 ===== | ===== Windows 10 ===== | ||
フォーマットを行う前に、FAT32ファイルシステムでフォーマットするストレージを接続する。<br> | |||
ストレージに割り当てられている文字を確認する。<br> | ストレージに割り当てられている文字を確認する。<br> | ||
<br> | <br> | ||
156行目: | 159行目: | ||
sudo mount -a | sudo mount -a | ||
<br> | <br> | ||
===== | ===== マウントしたストレージの確認 ===== | ||
ファイルシステムのマウント後、ストレージにアクセスできることを確認する必要がある。<br> | |||
<code>df</code> | <code>df</code>コマンドを実行して、ストレージが使用可能かどうかを確認する。<br> | ||
df -h -x tmpfs -x devtmpfs | df -h -x tmpfs -x devtmpfs | ||
2020年10月28日 (水) 15:07時点における版
概要
Linuxにおいて、新しいストレージを準備することは簡単である。
ここでは、以下の4つのセクションにおいて、ストレージのフォーマット手順を記載する。
- システム上のストレージを識別する。
- ストレージ全体にまたがる単一のパーティションを作成する。
- Ext4等のファイルシステムでパーティションをフォーマットする。
- ストレージを自動マウントおよび手動マウントする。
パーティションソフトウェアのインストール
ここでは、ストレージをパーティション分割するには、partedを使用する。
このソフトウェアは、多くのLinuxディストリビューションにおいて、標準でインストールされている。
もし、インストールされていない場合は、以下のコマンドを実行してインストールする。
# CentOS sudo yum install parted # SUSE sudo zypper install partd
ストレージの確認
ストレージをフォーマットする前に、Linux上でストレージを識別できる必要がある。
識別する方法は、パーティション分割スキームが無いことを確認することである。
partedコマンドを使用して、ストレージのパーティションレイアウトを一覧表示すると、有効なパーティション構成を持たないストレージに対してエラーが発生する。
これを使用して、新しいストレージを識別できる。
sudo parted -l | grep error # 出力 Error: /dev/sdb: unrecognised disk label
また、lsblk
コマンドを使用して、関連付けられたパーティションが無いストレージを探すこともできる。
lsblk # 出力 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 253:0 0 100G 0 disk
└─sda1 253:1 0 100G 0 part /
sdb 8:0 0 50G 0 disk
ストレージに割り当てられた名前が判明したら、ストレージをパーティション分割することができる。
ストレージのパーティションの分割
このセクションでは、ストレージ全体にまたがる単一のパーティションを作成する。
パーティション形式(GPT / MBR)の選択
最初に、使用するパーティション形式を指定する必要がある。
特別な事情がない場合は、GPTを使用することを推奨する。
GPT形式を選択する場合は、以下のコマンドを実行する。
sudo parted /dev/sdb mklabel gpt
MBR形式を選択する場合は、以下のコマンドを実行する。
sudo parted /dev/sdb mklabel msdos
パーティションの作成
次に、ストレージ全体にまたがるパーティションを作成する。
sudo parted -a opt /dev/sda mkpart primary ext4 0% 100%
lsblk
コマンドを確認すると、利用可能な新しいパーティションが表示される。
lsblk # 出力 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 100G 0 disk └─sda1 8:1 0 100G 0 part / sdb 253:0 0 50G 0 disk └─sdb1 253:1 0 50G 0 part
ファイルシステムの作成
ここでは、Ext4ファイルシステムとしてフォーマットする。
これを行うには、mkfs.ext4
コマンドを実行する。
また、-L
オプションを使用することで、パーティションラベルを追加できる。これは、ストレージを識別するのに役立つ。
sudo mkfs.ext4 -L datapartition /dev/sda1
※注意
ストレージ全体ではなく、パーティションを渡すようにすること。(sdbではなくsdb1と入力する)
Linuxにおいて、ストレージ名はsda、sdb、hda等である。これらのパーティションの末尾には番号が付加されており、sda1等を使用する。
もし、NVMe SSDを使用している場合は、ストレージ名がnvme0n1等と表示される。
また、後でパーティションラベルを変更する場合は、e2label
コマンドを使用する。
sudo e2label /dev/sdb1 <新しいラベル名>
lsblk --fs
コマンドを実行して、パーティションの識別を確認する。
このコマンドにより、パーティションの名前、ラベル、およびUUIDが確認できる。
lsblk --fs
バージョンに適切なフィールドが全て表示されない場合は、以下のコマンドを実行する。
lsblk -o NAME,FSTYPE,LABEL,UUID,PARTUUID,FSAVAIL,FSUSE%,MOUNTPOINT # 出力 NAME FSTYPE LABEL UUID PARTUUID FSAVAIL FSUSE% MOUNTPOINT sda └─sda1 ext4 datapartition F2769EBE769E82D1 4b313333-a7b5-48c1-a957-d77d637e4fda 494.4M 1% sdb └─sdb1 ext4 DOROOT 1000CC2F00CC1E1A 050e1e34-39e6-4072-a03e-ae0bf90ba13a 16.6G 33% /
特殊なフォーマット : FAT32
Windows 10
フォーマットを行う前に、FAT32ファイルシステムでフォーマットするストレージを接続する。
ストレージに割り当てられている文字を確認する。
Powershellを起動して、以下のコマンドを実行する。
ここでは、FAT32でフォーマットするストレージをFドライブとする。
format /FS:FAT32 F:
次に、[Enter]キーを押下する。
ストレージ上の全てのデータが消去されることを警告するメッセージが表示されるので、[Y]キーを押下する。
[Y]キーを押下すると、フォーマット処理が開始する。
CentOS / SUSE
まず、ストレージをFAT32ファイルシステムでフォーマットするため、以下のパッケージをインストールする。
# CentOS 7 sudo yum install dosfstools # CentOS 8 sudo dnf install dosfstools # SUSE sudo zypper install dosfstools
次に、フォーマットを行うストレージ名を確認する。
ここでは、/dev/sdcとする。
sudo fdisk -l
最後に、以下のコマンドを実行して、フォーマットを行う。
フォーマットを行う前に、ストレージ上にパーティションを作成しておく必要があるので注意すること。
sudo mkdosfs -F 32 -I /dev/sdc1
ファイルシステムのマウント
パーティションの作成が完了すると、ファイルシステムをマウントして使用できるようになる。
Filesystem Hierarchy Standardでは、一時的にマウントされたファイルシステムは/mntディレクトリまたはその直下のサブディレクトリを使用することを推奨している。
このセクションでは、ストレージを/mnt/dataディレクトリ下にマウントする。
sudo mkdir -p /mnt/data
ファイルシステムの一時的なマウント
以下のコマンドを実行して、ファイルシステムを一時的にマウントできる。
sudo mount -o defaults /dev/sda1 /mnt/data
ファイルシステムの自動マウント
Linuxの起動時にファイルシステムを自動的にマウントする場合は、/etc/fstabファイルを変更する。
UUIDまたはPARTUUIDで記述することを推奨する。
sudo vi /etc/fstab # /etc/fstabファイル /dev/sdb1 /mnt/data ext4 defaults 0 2 または UUID=9811-2A4E /mnt/data ext4 defaults 0 2
以前にファイルシステムをマウントしていなかった場合は、以下のコマンドを実行してマウントできる。
sudo mount -a
マウントしたストレージの確認
ファイルシステムのマウント後、ストレージにアクセスできることを確認する必要がある。
df
コマンドを実行して、ストレージが使用可能かどうかを確認する。
df -h -x tmpfs -x devtmpfs # 出力 Filesystem Size Used Avail Use% Mounted on /dev/sda1 100G 10G 90G 10% / /dev/sdb1 50G 0M 50G 0% /mnt/data
/mnt/dataディレクトリ内のlost + foundディレクトリが表示できるはずである。これは通常、Ext2/3/4ファイルシステムのルートを示している。
ls -l /mnt/data # 出力 total 16 drwx------ 2 root root 16384 Jun 6 11:10 lost+found
テストファイルに作成することで、ファイルが読み込みおよび書き込み機能でマウントされていることを確認することができる。
echo "success" | sudo tee /mnt/data/test_file
ファイルを読み紺で、書き込みが正しく実行されたことを確認する。
cat /mnt/data/test_file
マウントしたファイルシステムが正しく機能していることを確認したら、ファイルを削除する。
sudo rm -rf /mnt/data/test_file