0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【GCE】Compute Engineで追加ディスクをマウントしてみた。sda/sdbは信用できない?

0
Posted at

はじめに

Google Cloud の Compute Engine (Linux) に追加ディスクをアタッチしてマウントする、という作業を試しました。
従来の /dev/sda /dev/sdb ではなく、Google Cloud の公式ドキュメントでは /dev/disk/by-id/google-* を使っているのが気になったので、両方を実際に試し、その理由も考えてみたというメモです。
結論としてはどちらでも作業自体は可能ですが、安全性(誤ったデバイスを指定しにくい)という観点では Google Cloud 推奨のやり方が良さそうだと感じました。

引用
(・ベスト プラクティス: Linux VM で永続デバイス名を使用する
https://docs.cloud.google.com/compute/docs/disks/set-persistent-device-name-in-linux-vm?hl=ja

Linux オペレーティング システムを使用する VM の場合、次のような手順を行うとデバイス名(/dev/sda など)が変更される場合があります。
・VM の起動と停止
・ディスクの切断と再アタッチ
・マシンタイプの変更

※ 本記事は個人環境での作業メモであり、すべての環境での再現性を保証しません。所属組織の見解ではありません。


まずは従来どおり:/dev/sdb を前提にマウントしてみる

lsblk などで追加ディスクが sdb であることを確認し、従来どおりフォーマット&マウント。再起動して確認(簡易的な手順)。
※mkfsは既存データがあるディスクに対して実行するとデータは完全に消えるので注意

# 追加ディスクの確認
lsblk -f

# フォーマット
sudo mkfs.ext4 /dev/sdb

# マウント
sudo mkdir -p /mnt/data
sudo mount /dev/sdb /mnt/data

# UUID 確認(fstab 用)
sudo blkid /dev/sdb

# fstab 編集(例: UUID=... /mnt/data ext4 defaults,nofail 0 2)
sudo vi /etc/fstab

# 設定反映&再起動
sudo mount -a
sudo reboot

# 再起動後の確認
lsblk -f

この方法で作業は問題なく完了
ただしこれは 「今この瞬間 sdb が意図したディスクである」 ことに依存します


公式寄りのやり方:/dev/disk/by-id/google-* を使ってみる(簡易的な手順)

Google Cloud の手順では、まず ls -l /dev/disk/by-id/google-* でデバイス名を確認します
※mkfsは既存データがあるディスクに対して実行するとデータは完全に消えるので注意

# by-id と実体(/dev/sdX /dev/nvme...)の対応を確認
ls -l /dev/disk/by-id/google-*
# 例) google-disk-mnt-test-20260213 -> ../../sdb

そのまま by‑id を指定して実行しても OK でした。

# フォーマット
sudo mkfs.ext4 /dev/disk/by-id/google-disk-mnt-test-20260213

# マウント
sudo mkdir -p /mnt/data
sudo mount /dev/disk/by-id/google-disk-mnt-test-20260213 /mnt/data

# UUID 確認
sudo blkid /dev/disk/by-id/google-disk-mnt-test-20260213

# fstab 編集(例: UUID=... /mnt/data ext4 defaults,nofail 0 2)
sudo vi /etc/fstab

# 設定反映&再起動
sudo mount -a
sudo reboot
lsblk -f

従来の方法 vs Google Cloud 公式寄りの手順

  • どちらでも作業は可能
  • ただし、mkfs のような取り返しのつかないコマンドを打つ場面では、
    対象ディスクを誤指定しにくいのは by‑id/UUIDだと感じました

まとめ

  • 従来の /dev/sdb でも作業はできる
  • ただし デバイス名は再起動・再アタッチ等で変わり得るため、
  • 「どちらでもできるが、安全性を考えると推奨側の識別子(UUID/by‑id)を使うのが良さそうという結論に落ち着いた

参考(公式)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?