QEMU/KVMとSSD自動マウント &フォーマットと容量

2/11/2026

Ubuntu

Kubuntuに切り替えてからも頻繁にWindows 11も併用しているが、仮想マシン用にSSDを別途設けて使っているため、マウントし忘れで引っかかることが度々あった。Kubuntu起動とともに自動マウントを行うことにした。

自動マウントを行うにあたって、そもそもSSD自体の残容量が極端に減っていることが気になってきてChatGPTに聞いたところ、仮想マシン用ならbtrfsよりext4にすべきという司令がくだったため、その作業も今回実施。

ChatGPT生成: fstabファイルにデバイスとマウント位置を記載

SSD/HDDの自動マウント

最近ChatGPTのレスポンスがとてもフレンドリーになってきている。

「Linux の儀式感が一番出るところだけど、理屈は素直です。ディスクに「名前札」を付けて、起きたら所定の席に座ってもらう。それだけ。」

手順

  1. ディスクの UUID を確認
  2. マウントポイントを作る
  3. /etc/fstab を編集する(核心部 ← あくまでChatGPTの所感)
  4. 書き間違えてないかテストする(超重要← 同上)
  5. 再起動して確認

作業

1. ディスクのUUIDを確認

~$ blkid
  % 出力例
~$ /dev/sda1: LABEL="Win11" UUID="f93e81d5-..." BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="b00..."
~$ /dev/sdb2: LABEL="kubuntu_2510" UUID="acfb5a2e-..." BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="kubuntu_2510" PARTUUID="599..."
~$ /dev/sdb1: UUID="92...." BLOCK_SIZE="512" TYPE="vfat" PARTUUID="4c29b982-..."
※ 上記出力は下記するフォーマット後なので、既にsda1のTYPEもext4となっている 

2. マウントポイントを作る

/mntフォルダか/mediaフォルダのどちらかが一般的。厳密なルールは無い様だが、/mediaはUSBドライブなどの動的なメディア用にするとわかりやすい。※これまでDolphinからマウントしていた時は勝手に/media内にユーザーフォルダが作られてマウントされていた。

作成はDolphinでもおそらくできるのだろうが、/mntにフォルダを作ろうとすると権限が足りないとのことだった。手っ取り早くKonsoleから実行することに。

~$ sudo mkdir /mnt/Win11

3. /etc/fstab を編集する

fstabファイルの編集は起動しなくなる場合もあるようなので要注意。fstabに上記で確認したUUIDとマウントポイントを記載。

% まずはバックアップ
~$ sudo cp /etc/fstab /etc/fstab.backup
% 編集(ツールはなんでもOK)
~$ sudo vi /etc/fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>     <mount point>  <type>  <options>  <dump>  <pass>
UUID=92....          /boot/efi     vfat    defaults            0 2 
UUID=acfb5a2e-...    /             ext4    discard             0 1
/swapfile                                   swap          swap    defaults            0 0 
tmpfs                                       /tmp          tmpfs   noatime,mode=1777   0 0 
UUID=f93e81d5-....   /mnt/Win11    ext4    defaults,noatime    0 2

ここで重要な呪文の意味を軽く: (ChatGPT出力のまま)

  • defaults:普通にマウント
  • noatime:アクセス時刻を書かない → SSD に優しい
  • 最後の 0 2 / 0 0:fsck(起動時チェック)の順番。データ用は 2 or 0 でOK

4. 書き間違えてないかテストする

実際に再起動して試す前に確認しておく。
~$ sudo mount -a
エラーが出たらfstabの内容再確認。出てこなければ問題なし。

5. 再起動して確認

上手く行っていれば、上記の場合/mnt/Win11にSSDがマウントされているはず。

SSDのフォーマット

仮想マシン専用として使用してきたSSDの容量は、元々170GB弱程度しかなかったが、以下の3ファイルしか無いため足りるはずだった。

  • Windows 11のISO:  7.1GB
  • virtio-winのISO:   750MB
  • 仮想ディスク(.qcow2) 128GB

今回自動マウントしようと見ていたところ残り3GBしかなかったので調査。

折角の祝日は結果的にSSDの再フォーマットに至るまでの調査と実行で半分くらいの時間を使ってしまった
ChatGPTからは様々説明がなされたが、最終的に一言でまとめさせると窒息。。。

「btrfs は「容量」ではなく「区画(chunk)」で窒息する」

とにかく、btrfsは仮想マシンとは相性が悪いらしい:

--- 
btrfs はディスクを次のように管理します。
  • データ用 chunk
  • メタデータ用 chunk
  • システム用 chunk
それぞれが 固定サイズ(通常1GB)で先取り確保されます。問題はここ。
👉 メタデータ chunk が枯渇すると、空き容量があっても「残り数GB」と表示される
qcow2・ISO のような「大きなファイルを作って削除・更新する」用途は
btrfs にとって 最悪のワークロード です。
---

更に理由を聞くと、

---
これは好みや宗派の話ではなく、設計思想の相性問題です。
一言で言うと、
 btrfs は「賢すぎるファイルシステム」で、KVM の qcow2 は「雑に書き換える巨大生物」
この組み合わせが、静かに戦争を始めます。
---
よって、ext4に再フォーマット実施。

仮想マシン関連のISOや.qcow2はメインSSDへ一旦退避。

この際いくつかポイント:

  • マウントの設定にnoatimeを入れる(fstabに記載)
        noatime が効く理由:
        noatime は「アクセス時刻を更新しない」オプション。
        仮想マシンはディスクを読むだけでも大量アクセスが発生します。

    •  atime 更新 → 余計な書き込み
    • メタデータ更新 → I/O 増加
        noatime にすると:
    • 無駄な書き込みが消える
    • SSD の寿命にも優しい
    • 仮想マシンのレイテンシが下がる
  • SSDフォーマット設定: Journalingを無効化
こまかい理屈は理解しきれていないが、JournalingがON担っている状況では書き込みが2度発生して速度が落ちる割に、VMのWindowsのファイルが壊れる可能性は対して変わらないという説明だった。

フォーマットした後でも設定可能:

% まずはマウント解除
~$ sudo umount /dev/sda1
~$ sudo tune2fs -O ^has_journal /dev/sda1
% ファイルシステムチェック
~$ sudo e2fsck -f /dev/sda1
以上で完了。


今後数日使った後でなければ効果はわからないが、ひとまず再フォーマット後は残容量はまだ変わっていなさそう。

人気の投稿

ラベル

Outdoor (23) 3D Printer (12) Raspberry Pi (10) Learning (9) Movie (7) Pico (6) Ubuntu (6) FreeCAD (5) Game (5) Blog (4) MSFS (4) Python (4) Gadget (1) Unity (1)

About

思い付きで始めた様々なコトをやった感想やメモ、Web上で見つけた後々役立ちそうなコトなどをまとめてます。 万人の役に立つコンテンツではなく自分用メモ的な内容ですが、何かの役に立てば幸いです

このブログを検索

連絡フォーム

名前

メール *

メッセージ *

QooQ