ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

【ubuntu】/dev/vda1 と /dev/vdb1 の違い

仮想サーバを使っていたら /dev/vda1 がいっぱいになって docker の書き込みに失敗してしまいました。
この辺よくわかってないので、調べたことをここにメモします。

名前のルール(命名規則)

Linuxでは、ディスクドライブに特定のルールに沿った名前を付けます。

「vd」と「sd」などの接頭辞(タイプ)

  • vd (Virtio Disk): KVMやQEMUなどの仮想化環境で使われる「仮想ディスク」を指します。物理マシンではなく、クラウド(AWS, GCP, クラウドVPSなど)でよく見かける形式です。
  • sd (SCSI Disk): 一般的な物理サーバーやPC(SATA接続のHDD/SSD、USBメモリなど)で使われる形式です。

「a」や「b」のアルファベット(順番)

  • vda: システムが最初に認識した1番目の仮想ディスク。
  • vdb: システムが次に認識した2番目の仮想ディスク。

「1」などの数字(パーティション)

ディスクの中を区切った「部屋(パーティション)」の番号です。vda1 は「1番目のディスクの、1番目の区画」という意味になります。

具体的な違いの比較

項目 /dev/vda1 /dev/vdb1
ディスクの順序 1番目のディスク (a) 2番目のディスク (b)
役割(一般的) OS(ルートディレクトリ)が入っていることが多い データ保存用の追加ディスクであることが多い
物理的な意味 仮想マシンに割り当てられた最初のストレージ 後から追加した2枚目のストレージ

サーバで中身を確認する方法

$ lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
loop0     7:0    0  105M  1 loop /snap/core/17272
loop1     7:1    0 63.8M  1 loop /snap/core20/2682
loop2     7:2    0 63.8M  1 loop /snap/core20/2686
loop3     7:3    0 73.9M  1 loop /snap/core22/2216
loop4     7:4    0   46M  1 loop /snap/crystal/2906
loop5     7:5    0   46M  1 loop /snap/crystal/2924
loop6     7:6    0 91.4M  1 loop /snap/lxd/36558
loop7     7:7    0 91.4M  1 loop /snap/lxd/36918
loop8     7:8    0 50.9M  1 loop /snap/snapd/25577
loop9     7:9    0 48.1M  1 loop /snap/snapd/25935
vda     252:0    0   30G  0 disk 
├─vda1  252:1    0 29.9G  0 part /
├─vda14 252:14   0    4M  0 part 
└─vda15 252:15   0  106M  0 part /boot/efi
vdb     252:16   0  200G  0 disk 
└─vdb1  252:17   0  200G  0 part /data