Linuxのディスクパーティション作成方法
はじめに
VMware上に作成した仮想マシンに仮想ディスクを追加し、パーティション作成を行う方法を調べました。パーティション作成後、ファイルシステムの作成、マウントまでの工程を備忘録として残しておきます。
※VMwareFusion上にFedoraServer42の仮想マシンを作成しrootユーザーで操作します。
作成するディスク構成
- ディスクサイズ : 60GB
- ラベル : gpt
- ファイルシステム : ext4
- パーティションの分割は行わない
仮想ディスク情報の確認
root@fedora:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 1024M 0 rom
zram0 251:0 0 3.8G 0 disk [SWAP]
nvme0n2 259:0 0 60G 0 disk
├─nvme0n2p1 259:1 0 200M 0 part /boot/efi
├─nvme0n2p2 259:2 0 20G 0 part
│ ├─fedora-var 252:0 0 10G 0 lvm /var
│ └─fedora-home 252:1 0 10G 0 lvm /home
├─nvme0n2p3 259:3 0 20G 0 part /
└─nvme0n2p4 259:4 0 954M 0 part
nvme0n1 259:5 0 60G 0 disk
仮想マシンが認識しているデバイス情報を確認。
root@fedora:~# parted -l
エラー: /dev/nvme0n1: ディスクラベルが認識できません。
モデル: VMware Virtual NVMe Disk (nvme)
ディスク /dev/nvme0n1: 64.4GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: unknown
ディスクフラグ:
モデル: VMware Virtual NVMe Disk (nvme)
ディスク /dev/nvme0n2: 64.4GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt
ディスクフラグ:
番号 開始 終了 サイズ ファイルシステム 名前 フラグ
1 1049kB 211MB 210MB fat16 EFI System Partition boot, esp
2 211MB 21.7GB 21.5GB lvm
3 21.7GB 43.2GB 21.5GB ext4
4 43.2GB 44.2GB 1000MB ext4 primary
新規に追加した仮想ディスクは/dev/nvme0n1。このディスクのパーティションを作成していく。
パーティションの作成
root@fedora:~# parted /dev/nvme0n1
GNU Parted 3.6
/dev/nvme0n1 を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted)
partedコマンドを使用し、対話形式でパーティション操作を行なっていく。
(parted) mklabel gpt
(parted) print
モデル: VMware Virtual NVMe Disk (nvme)
ディスク /dev/nvme0n1: 64.4GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt
ディスクフラグ:
番号 開始 終了 サイズ ファイルシステム 名前 フラグ
mklabelコマンドでパーティションテーブルの種類を指定。今回はGPTラベルを指定する。
(※MBRラベルは古いディスクラベル、2TB以上のディスクに対応していないなどの制限がある)
(parted) mkpart primary ext4 0% 100%
(parted) print
モデル: VMware Virtual NVMe Disk (nvme)
ディスク /dev/nvme0n1: 64.4GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt
ディスクフラグ:
番号 開始 終了 サイズ ファイルシステム 名前 フラグ
1 1049kB 64.4GB 64.4GB ext4 primary
(parted) quit
mkpartコマンドでパーティションを作成。
ファイルシステムをext4で指定しているが、このコマンドで実際にファイルシステムが作成されている訳ではない。(ファイルシステムの識別子のようなものを設定しているだけ)
フラグにはprimaryを指定しているが、GPT形式を設定する必要はない。MBR形式の場合はprimaryかextendedを指定してあげる必要がある。
root@fedora:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 1024M 0 rom
zram0 251:0 0 3.8G 0 disk [SWAP]
nvme0n2 259:0 0 60G 0 disk
├─nvme0n2p1 259:1 0 200M 0 part /boot/efi
├─nvme0n2p2 259:2 0 20G 0 part
│ ├─fedora-var 252:0 0 10G 0 lvm /var
│ └─fedora-home 252:1 0 10G 0 lvm /home
├─nvme0n2p3 259:3 0 20G 0 part /
└─nvme0n2p4 259:4 0 954M 0 part
nvme0n1 259:5 0 60G 0 disk
└─nvme0n1p1 259:7 0 60G 0 part
/dev/nvme0n1p1パーティションが作成された。ただし、パーティションを作成しただけではディレクトリやファイルの操作ができないので、ファイルシステムを作成する必要がある。
ファイルシステムの作成
root@fedora:~# mkfs.ext4 /dev/nvme0n1p1
mke2fs 1.47.2 (1-Jan-2025)
Creating filesystem with 15728128 4k blocks and 3932160 inodes
Filesystem UUID: 7ff0b578-e436-4913-aba0-83cdf9245a82
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Allocating group tables: done
Writing inode tables: done
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done
/dev/nvme0n1p1 にファイルシステムを作成する。
root@fedora:~# lsblk -f
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
sr0
zram0 swap 1 zram0 7a113fe5-895c-4863-a851-ac563cdbfa0f [SWAP]
nvme0n2
├─nvme0n2p1 vfat FAT16 07B4-EAEC 188M 6% /boot/efi
├─nvme0n2p2 LVM2_member LVM2 001 8bihnE-V15J-cPUo-TdVL-Ks2e-r0eA-e0cmaP
│ ├─fedora-var xfs a255f080-aed7-41c5-bfc1-69ecea8eb38b 9.1G 9% /var
│ └─fedora-home ext4 1.0 d9d1bb43-b680-436e-add5-c766d50413dc 8.7G 5% /home
├─nvme0n2p3 ext4 1.0 401b6565-c3b0-4439-bc67-26400048932c 13.3G 27% /
└─nvme0n2p4 ext4 1.0 5d912270-3b5e-46f4-8a0b-cd2df608a7bb
nvme0n1
└─nvme0n1p1 ext4 1.0 7ff0b578-e436-4913-aba0-83cdf9245a82
nvme0n1p1 にext4ファイルシステムが作成された。
作成したパーティションをマウント
root@fedora:~# mount /dev/nvme0n1p1 /mnt
作成したパーティションを /mnt にマウントする。
root@fedora:~# df -T
ファイルシス タイプ 1K-ブロック 使用 使用可 使用% マウント位置
/dev/nvme0n2p3 ext4 20466256 5467916 13933380 29% /
devtmpfs devtmpfs 4096 0 4096 0% /dev
tmpfs tmpfs 1991848 0 1991848 0% /dev/shm
efivarfs efivarfs 256 33 224 13% /sys/firmware/efi/efivars
tmpfs tmpfs 796740 1256 795484 1% /run
tmpfs tmpfs 1024 0 1024 0% /run/credentials/systemd-journald.service
tmpfs tmpfs 1991848 0 1991848 0% /tmp
/dev/nvme0n2p1 vfat 204580 12060 192520 6% /boot/efi
/dev/mapper/fedora-home ext4 10218772 532076 9146024 6% /home
/dev/mapper/fedora-var xfs 10420224 902256 9517968 9% /var
tmpfs tmpfs 1024 0 1024 0% /run/credentials/systemd-resolved.service
tmpfs tmpfs 1024 0 1024 0% /run/credentials/getty@tty1.service
tmpfs tmpfs 398368 12 398356 1% /run/user/0
/dev/nvme0n1p1 ext4 61609772 2072 58445692 1% /mnt
df -Tコマンドでちゃんとマウントできている事を確認。
さいごに
無事にパーティションの作成が完了しました。ちなみに作成済みのパーティションを操作するとデータが消失する可能性もあるので、取扱いには注意してください。
Discussion