Microsoft Basic Dataのフラグを削除する

Linux

はじめに

CentOS7のpartedを使ってxfsでフォーマットしたハードディスクをDebianで使ったら、「Microsoft Basic Data」とパーティションタイプが認識されてマウント出来なかったの解決方法を調べました。

環境

- CentOS7.6
    - parted 3.1-32.el7.x86_64

- Debian12 bookworm
    - parted 3.5-3

原因

parted 3.1、又はそれ以前のバージョンで作成したGPTパーティションは、「Microsoft Basic Data」のパーティションタイプが設定されるのが原因だそうです。
CentOS7に付属するpartedのバージョンを調べると3.1でした。

https://centos.pkgs.org/7/centos-x86_64/parted-3.1-32.el7.x86_64.rpm.html

解決策は、下記URLにありました。
「注記: Parted 3.1 もしくはそれ以前におけるラベル設定の誤りについて」の項目です。

熟練者向けパーティション設定 | openSUSE Leap 15.6
システムの設定を洗練させていくには、ディスクのパーティション設定も洗練させる必要があります。パーティション関係の全ての設定はインストール時に行うことができます。

実際にDebianのpartedコマンドで表示するとFlagsにmsftdataと表示されます。

Number  Start   End     Size    File system  Name     Flags
 1      1049kB  24.0TB  24.0TB  xfs          primary  msftdata

解決策

msftdataフラグを削除すれば良いそうなので、下記のコマンドを実行します:

parted デバイス名 set パーティション番号 msftdata off

「デバイス名」は一般的に(/dev/sdx)ですが、sdxのxはOSを起動するたびに変わるので、dmesgコマンドとblkidコマンドで対応付けます。
今回の対象となるハードディスクは/dev/sdaでした。

また、「パーティション番号」はpartedコマンドで確認します。

sudo parted -l /dev/sda

デバイス名は/dev/sda、パーティション番号は1だったので、以下のコマンドを実行します。

sudo parted /dev/sda set 1 msftdata off

partedコマンドでmsftdataフラグが消えていることを確認します。
消えていたら、マウントできるか確認します。

Comments