Categories: linux

LinuxでデバイスのUUIDを確認する方法:blkidコマンドの使い方をわかりやすく解説

Linuxシステムを扱う中で、ストレージデバイスの識別子である「UUID(Universally Unique Identifier)」の確認が必要になる場面は多々あります。特に、/etc/fstabでのマウント設定や、システムバックアップ・リカバリ、ストレージトラブルの調査などでUUIDの情報は欠かせません。そんなときに活躍するのが、blkidコマンドです。本記事では、Linuxで利用できるblkidコマンドの基本的な使い方から、具体的な活用方法、そして注意点までを3000文字以上にわたって丁寧に解説していきます。初心者から中級者まで役立つ内容になっていますので、ぜひ最後までご覧ください。


blkidとは何か?

blkid(ブロックID)は、Linuxにおけるブロックデバイス(HDDやSSD、USBメモリなど)の情報を表示するコマンドです。特にUUID(ユニバーサリー・ユニーク・アイデンティファイア)やラベル(LABEL)といった、ファイルシステムを識別するための情報を取得するのに使われます。

UUIDは、デバイスの名前(例:/dev/sda1)が変更されても一貫して識別できる特徴があり、安定したマウント設定などに非常に便利です。


blkidの基本的な使い方

コマンドの基本形

blkid

このコマンドを入力すると、接続されているすべてのブロックデバイスの情報が一覧表示されます。たとえば、以下のような出力が得られます:

/dev/sda1: UUID="1234-ABCD" TYPE="ext4" PARTUUID="abcd1234-01"
/dev/sdb1: UUID="5678-EFGH" TYPE="vfat" PARTUUID="efgh5678-01"

この出力から分かるのは以下の情報です:

  • UUID:デバイスのユニークな識別子
  • TYPE:ファイルシステムの種類(例:ext4、vfat、xfsなど)
  • PARTUUID:GPTまたはMBRによって管理されるパーティションID

特定のデバイスのUUIDを確認する

すべてのデバイス情報を確認するのではなく、特定のデバイス(例:/dev/sda1)のUUIDだけを知りたい場合は、以下のように入力します。

blkid /dev/sda1

出力例:

/dev/sda1: UUID="1234-ABCD" TYPE="ext4"

これにより、必要なデバイスのみの情報を素早く確認できます。


UUIDの利用例:fstabファイルでの活用

UUIDがもっとも活用される場面の一つが、/etc/fstabファイルです。fstabは、システム起動時に自動的にデバイスをマウントするための設定ファイルです。

例:

UUID=1234-ABCD /mnt/data ext4 defaults 0 2

このようにUUIDで指定しておくことで、デバイス名が変わっても正しくマウントされるため、トラブルを防げます。


blkidのオプション紹介

blkidにはいくつかの便利なオプションがあります。以下に主なものを紹介します。

-s オプション:特定の情報だけ表示

bashコピーする編集するblkid -s UUID

このコマンドではUUIDだけを表示します。

例:

/dev/sda1: UUID="1234-ABCD"
/dev/sdb1: UUID="5678-EFGH"

-s TYPEとすれば、ファイルシステムの種類だけを取得できます。


-o オプション:出力フォーマットを指定

出力形式を変更したい場合には、-oオプションが便利です。

blkid -o value -s UUID

この場合、UUIDの値だけが表示されます。

例:

1234-ABCD
5678-EFGH

スクリプトなどでUUIDを取り出したいときに重宝します。


blkidと他のコマンドとの違い

UUIDを確認するコマンドとしては、他にもlsblkudevadm infoなどがあります。それぞれの違いを見ておきましょう。

コマンド特徴
blkidUUIDやTYPEなどのファイルシステム情報に特化
lsblkブロックデバイスの階層構造とサイズ、マウントポイントを表示
udevadm infoデバイスの詳細情報を確認できるが、初心者には少し難解

blkidはとにかく「シンプルにUUIDを確認したい」という用途に最適です。


blkidを使う際の注意点

root権限が必要な場合がある

一部の環境では、通常ユーザーでblkidを実行すると何も表示されないことがあります。この場合はsudoをつけて実行しましょう。

sudo blkid

未フォーマットのデバイスにはUUIDが存在しない

フォーマットされていない新しいデバイスやパーティションにはUUIDが設定されていないため、blkidを実行しても情報が表示されません。この場合、mkfsコマンドでファイルシステムを作成することでUUIDが付与されます。


blkidを使ったトラブルシューティングの例

たとえば、USBメモリが認識されない場合、blkidを使ってデバイスが認識されているか確認できます。

sudo blkid

ここで該当のデバイスが表示されない場合、物理的な接続やデバイスの故障が疑われます。逆に表示されていれば、マウント作業やファイルシステムの整合性のチェック(fsckなど)へと移ることができます。


blkidを使ったスクリプトの例

UUIDを取得して自動的に設定ファイルを生成するスクリプトの例を以下に紹介します。

#!/bin/bash
DEVICE="/dev/sdb1"
UUID=$(blkid -s UUID -o value $DEVICE)
echo "UUID=$UUID /mnt/usb ext4 defaults 0 0" >> /etc/fstab

このようにすれば、新しいストレージデバイスを簡単に永続マウント設定に追加できます。


まとめ

blkidコマンドは、LinuxでストレージデバイスのUUIDやファイルシステムタイプなどの重要な情報を確認するのに不可欠なツールです。/etc/fstabでの安定したマウント設定やトラブルシューティング、スクリプトによる自動化など、様々な場面で活躍します。

初心者の方はまずblkidコマンドを覚え、必要なデバイス情報の取得から始めてみてください。慣れてくれば、出力オプションやスクリプトとの組み合わせによって、より高度なシステム管理ができるようになります。

今後もストレージ管理の基礎スキルとして、ぜひ活用していきましょう。

upandup

Web制作の記事を中心に、暮らし、ビジネスに役立つ情報を発信します。 アフィリエイトにも参加しています。よろしくお願いいたします。