LinuxでディスクやパーティションのUUID、ファイルシステム種類、ラベルを確認したいときは、blkidコマンドを使用します。
前回解説したlsblkコマンドでもディスク構成やUUIDを確認できますが、blkidはブロックデバイスの識別情報をより直接的に表示するコマンドです。
特に、/etc/fstabでディスクを自動マウントしたいときや、追加ディスクのUUIDを確認したいときに役立ちます。
この記事では、Linux初心者でも実際に使えるように、blkidコマンドの基本構文、出力項目の見方、UUIDやファイルシステム種類だけを取り出す方法、lsblk -fとの違い、/etc/fstabでの使い方、よくあるエラーまで実例付きで解説します。
- blkidコマンドとは
- blkidコマンドの基本構文
- blkidの出力項目の見方
- UUIDとは
- 特定のデバイスだけ確認する方法
- UUIDだけを表示する方法
- ファイルシステム種類だけを表示する方法
- LABELだけを表示する方法
- PARTUUIDを確認する方法
- 出力形式を変更する方法
- UUIDからデバイス名を調べる方法
- LABELからデバイス名を調べる方法
- 条件を指定して検索する方法
- lsblk -fとの違い
- dfコマンドとの違い
- mountコマンドとの関係
- /etc/fstabでUUIDを使う例
- blkidコマンドの主なオプション
- blkidでよく使う実用例
- blkidコマンドでよくある注意点
- blkidコマンドでよくあるエラー
- よくある質問
- まとめ
blkidコマンドとは
blkidは、Linuxでブロックデバイスの識別情報を表示するコマンドです。
ブロックデバイスとは、HDD、SSD、USBメモリ、パーティション、LVMなど、ブロック単位でデータを読み書きするデバイスのことです。
blkidでは、主に次のような情報を確認できます。
- UUID
- LABEL
- ファイルシステム種類
- PARTUUID
- PARTLABEL
- swap領域の識別情報
ディスクを追加したあとにUUIDを確認したり、/etc/fstabへマウント設定を書くときによく使います。
blkidコマンドの基本構文
blkidコマンドの基本構文は次のとおりです。
blkid [オプション] [デバイス名]
まずは、オプションなしで実行してみます。
blkid
環境によっては一般ユーザーでも表示できますが、すべての情報を確実に確認したい場合はsudoを付けて実行します。
sudo blkid
実行結果の例です。
/dev/sda1: UUID="1111-2222" TYPE="xfs" PARTUUID="aaaa-bbbb"
/dev/sda2: UUID="3333-4444" TYPE="xfs" PARTUUID="cccc-dddd"
/dev/sdb1: LABEL="data" UUID="5555-6666-7777-8888" TYPE="ext4" PARTUUID="eeee-ffff"
各デバイスごとに、UUIDやTYPEなどの情報が表示されます。
blkidの出力項目の見方
| 項目 | 意味 |
|---|---|
/dev/sda1 |
対象のデバイス名 |
UUID |
ファイルシステムを識別するID |
LABEL |
ファイルシステムに付けたラベル名 |
TYPE |
ファイルシステム種類 |
PARTUUID |
パーティションを識別するID |
PARTLABEL |
パーティションに付けたラベル名 |
初心者がまず見るべき項目は、UUIDとTYPEです。
UUIDは/etc/fstabなどのマウント設定で使われることが多く、TYPEはext4やxfsなどのファイルシステム種類を表します。
UUIDとは
UUIDは、ファイルシステムを識別するための一意なIDです。
Linuxでは、/dev/sda1や/dev/sdb1のようなデバイス名が、接続順や環境によって変わる場合があります。
そのため、自動マウント設定では、変わる可能性があるデバイス名ではなく、UUIDを指定することがあります。
UUID=5555-6666-7777-8888 /data ext4 defaults 0 2
このようにUUIDを使うことで、デバイス名が変わっても同じファイルシステムを指定しやすくなります。
特定のデバイスだけ確認する方法
すべてのデバイスではなく、特定のパーティションだけ確認したい場合は、デバイス名を指定します。
sudo blkid /dev/sdb1
実行結果の例です。
/dev/sdb1: LABEL="data" UUID="5555-6666-7777-8888" TYPE="ext4" PARTUUID="eeee-ffff"
追加ディスクやUSBメモリなど、対象が分かっている場合に便利です。
UUIDだけを表示する方法
UUIDだけを取り出したい場合は、-sと-o valueを組み合わせます。
sudo blkid -s UUID -o value /dev/sdb1
実行結果の例です。
5555-6666-7777-8888
シェルスクリプトでUUIDを変数に入れたい場合にも使いやすい形式です。
uuid=$(sudo blkid -s UUID -o value /dev/sdb1)
echo "$uuid"
ファイルシステム種類だけを表示する方法
ファイルシステム種類だけを確認したい場合は、TYPEを指定します。
sudo blkid -s TYPE -o value /dev/sdb1
実行結果の例です。
ext4
ext4、xfs、vfat、swapなどの種類を確認できます。
LABELだけを表示する方法
ラベルだけを表示したい場合は、LABELを指定します。
sudo blkid -s LABEL -o value /dev/sdb1
実行結果の例です。
data
ラベルが設定されていない場合は、何も表示されないことがあります。
PARTUUIDを確認する方法
パーティションの識別子であるPARTUUIDを確認したい場合は、次のように実行します。
sudo blkid -s PARTUUID -o value /dev/sdb1
実行結果の例です。
eeee-ffff
UUIDはファイルシステムの識別子、PARTUUIDはパーティションの識別子です。
通常のマウント設定ではUUIDを使うことが多いですが、環境によってはPARTUUIDを使う場合もあります。
出力形式を変更する方法
blkidでは、-oオプションで出力形式を変更できます。
通常形式で表示する
sudo blkid -o full /dev/sdb1
通常の形式で詳細情報が表示されます。
値だけを表示する
sudo blkid -s UUID -o value /dev/sdb1
UUIDなどの値だけを取り出せます。
一覧形式で表示する
sudo blkid -o list
デバイス、ファイルシステム、ラベル、マウントポイントなどを表形式に近い形で確認できます。
export形式で表示する
sudo blkid -o export /dev/sdb1
実行結果の例です。
DEVNAME=/dev/sdb1
LABEL=data
UUID=5555-6666-7777-8888
TYPE=ext4
PARTUUID=eeee-ffff
変数のような形式で出力されるため、スクリプト処理で使いやすい場合があります。
UUIDからデバイス名を調べる方法
UUIDが分かっていて、そのUUIDがどのデバイスに対応しているか調べたい場合は、-Uオプションを使います。
blkid -U 5555-6666-7777-8888
実行結果の例です。
/dev/sdb1
/etc/fstabに書かれているUUIDが、実際にどのデバイスを指しているのか確認したいときに便利です。
LABELからデバイス名を調べる方法
ラベル名からデバイス名を調べる場合は、-Lオプションを使います。
blkid -L data
実行結果の例です。
/dev/sdb1
ラベルを使ってディスクを管理している環境で役立ちます。
条件を指定して検索する方法
-tオプションを使うと、条件に一致するデバイスを検索できます。
sudo blkid -t TYPE=ext4
実行結果の例です。
/dev/sdb1: LABEL="data" UUID="5555-6666-7777-8888" TYPE="ext4" PARTUUID="eeee-ffff"
特定のファイルシステム種類やUUID、LABELを持つデバイスを探したいときに利用できます。
lsblk -fとの違い
UUIDやファイルシステム情報を確認する方法として、前回解説したlsblk -fもよく使われます。
lsblk -f
lsblk -fは、ディスク構成をツリー形式で見ながら、ファイルシステムやUUIDを確認できます。
blkidは、ブロックデバイスごとのUUIDやTYPEなどの識別情報を直接表示します。
| コマンド | 主な用途 |
|---|---|
lsblk -f |
ディスク構成とUUIDを見やすく確認する |
blkid |
UUIDやTYPEなどの識別情報を直接確認する |
初心者が全体構成を確認したい場合はlsblk -f、UUIDだけを正確に取り出したい場合はblkidが便利です。
dfコマンドとの違い
dfは、ファイルシステムの空き容量や使用率を確認するコマンドです。
df -h
blkidは容量確認ではなく、UUIDやファイルシステム種類を確認するコマンドです。
| コマンド | 確認できる内容 |
|---|---|
blkid |
UUID、LABEL、TYPEなど |
df |
空き容量、使用量、使用率、マウントポイント |
ディスクの識別情報を見たい場合はblkid、空き容量を見たい場合はdf -hを使います。
mountコマンドとの関係
mountコマンドは、ファイルシステムを指定したディレクトリへ接続するためのコマンドです。
blkidでUUIDやTYPEを確認し、その情報をもとにmountや/etc/fstabの設定を行うことがあります。
たとえば、/dev/sdb1の情報を確認します。
sudo blkid /dev/sdb1
実行結果の例です。
/dev/sdb1: UUID="5555-6666-7777-8888" TYPE="ext4"
手動でマウントする場合は、次のように実行します。
sudo mount /dev/sdb1 /data
自動マウントしたい場合は、UUIDを使って/etc/fstabに設定することがあります。
/etc/fstabでUUIDを使う例
/etc/fstabは、起動時に自動マウントするファイルシステムを設定するファイルです。
追加ディスクを起動時に自動マウントしたい場合、blkidでUUIDを確認します。
sudo blkid /dev/sdb1
実行結果の例です。
/dev/sdb1: UUID="5555-6666-7777-8888" TYPE="ext4"
/etc/fstabへ次のように記述します。
UUID=5555-6666-7777-8888 /data ext4 defaults 0 2
設定後は、すぐに再起動せず、まず次のコマンドで確認します。
sudo mount -a
mount -aでエラーが出ないことを確認してから再起動すると安全です。
/etc/fstabの設定を間違えると、起動時に問題が起きる場合があります。編集前に必ずバックアップを取りましょう。
sudo cp /etc/fstab /etc/fstab.bak
blkidコマンドの主なオプション
| オプション | 説明 |
|---|---|
-s 項目 |
表示する項目を指定する |
-o 形式 |
出力形式を指定する |
-U UUID |
UUIDからデバイス名を表示する |
-L LABEL |
LABELからデバイス名を表示する |
-t 条件 |
条件に一致するデバイスを検索する |
-p |
低レベルの検出を行う |
-c ファイル |
キャッシュファイルを指定する |
--help |
ヘルプを表示する |
--version |
バージョン情報を表示する |
blkidでよく使う実用例
すべてのデバイス情報を確認する
sudo blkid
特定デバイスのUUIDを確認する
sudo blkid -s UUID -o value /dev/sdb1
特定デバイスのファイルシステム種類を確認する
sudo blkid -s TYPE -o value /dev/sdb1
UUIDからデバイス名を調べる
blkid -U 5555-6666-7777-8888
LABELからデバイス名を調べる
blkid -L data
ext4のデバイスだけ探す
sudo blkid -t TYPE=ext4
blkidコマンドでよくある注意点
空き容量は確認できない
blkidはUUIDやファイルシステム種類を確認するコマンドです。
空き容量や使用率を確認したい場合は、df -hを使用します。
df -h
ディスク構成全体を見るならlsblkが分かりやすい
ディスクとパーティションの親子関係を見たい場合は、lsblkが見やすいです。
lsblk -f
blkidは識別情報の確認に向いています。
UUIDとPARTUUIDは違う
UUIDはファイルシステムの識別子です。
PARTUUIDはパーティションの識別子です。
通常の/etc/fstab設定ではUUIDを使うことが多いですが、環境によってはPARTUUIDを使う場合もあります。
sudoが必要な場合がある
環境によっては、一般ユーザーでblkidを実行しても一部の情報が表示されないことがあります。
情報が出ない場合は、sudo blkidで確認します。
blkidコマンドでよくあるエラー
何も表示されない
blkidを実行しても何も表示されない場合、一般ユーザーでは情報を取得できていない可能性があります。
sudo blkid
また、対象デバイスにファイルシステムが作成されていない場合も、期待した情報が表示されないことがあります。
No such file or directory
blkid: error: /dev/sdb1: No such file or directory
指定したデバイスが存在しない場合に表示されます。
まずlsblkでデバイス名を確認してください。
lsblk
UUIDが表示されない
対象デバイスにファイルシステムが作成されていない可能性があります。
ディスク構成とファイルシステム情報を確認します。
lsblk -f
/etc/fstabの設定でマウントできない
UUID、マウントポイント、ファイルシステム種類のいずれかが間違っている可能性があります。
次の順番で確認します。
sudo blkid
lsblk -f
sudo mount -a
/etc/fstabを編集する前には、バックアップを取っておくと安全です。
sudo cp /etc/fstab /etc/fstab.bak
よくある質問
blkidコマンドは何に使いますか?
ディスクやパーティションのUUID、LABEL、ファイルシステム種類などを確認するために使います。
UUIDだけを確認するには?
-s UUIDと-o valueを組み合わせます。
sudo blkid -s UUID -o value /dev/sdb1
ファイルシステム種類だけを確認できますか?
TYPEを指定します。
sudo blkid -s TYPE -o value /dev/sdb1
lsblk -fとblkidの違いは何ですか?
lsblk -fはディスク構成を見ながらUUIDやファイルシステムを確認できます。blkidはUUIDやTYPEなどの識別情報を直接確認するコマンドです。
dfコマンドとの違いは何ですか?
dfはディスクの空き容量や使用率を確認します。blkidはUUIDやファイルシステム種類を確認します。
/etc/fstabで使うUUIDはblkidで確認できますか?
はい。次のように確認できます。
sudo blkid /dev/sdb1
UUIDとPARTUUIDは同じですか?
違います。UUIDはファイルシステムの識別子、PARTUUIDはパーティションの識別子です。
何も表示されない場合はどうすればよいですか?
sudoを付けて実行してください。
sudo blkid
それでも表示されない場合は、対象デバイスにファイルシステムが作成されていない可能性があります。
UbuntuやCentOS Streamでも使えますか?
はい。Ubuntu、Debian、CentOS Stream、Rocky Linux、AlmaLinuxなど、多くのLinuxディストリビューションで利用できます。
まとめ
blkidコマンドは、LinuxでディスクやパーティションのUUID、LABEL、ファイルシステム種類などを確認するためのコマンドです。
すべてのデバイス情報を確認する場合は、次のように実行します。
sudo blkid
特定デバイスの情報を確認する場合は、デバイス名を指定します。
sudo blkid /dev/sdb1
UUIDだけを取り出す場合は、次のように実行します。
sudo blkid -s UUID -o value /dev/sdb1
ファイルシステム種類だけを確認する場合は、次のように実行します。
sudo blkid -s TYPE -o value /dev/sdb1
blkidは、空き容量を確認するコマンドではありません。空き容量を見る場合はdf -h、ディスク構成を確認する場合はlsblk -fを使います。
追加ディスクのUUID確認や/etc/fstabの自動マウント設定では、blkidがとても役立ちます。




コメント