タイトル: mount: special device ... does not exist
| この記事の要点 |
|---|
|
エラー内容
|
mount: special device device name does not exist |
Linux/Unixで mount コマンドを実行したときに表示されるエラーです。指定したデバイスファイル(/dev/sdX 等)が存在しないことを意味します。
発生条件 / 原因
- デバイス名の打ち間違い:
/dev/sdb1と書くべきところを/dev/sda1や/dev/sd1と入力 - ディスクが認識されていない: USBディスクやSDカードが差さっていない、SATA/電源ケーブル未接続
- パーティションが切られていない:
/dev/sdbはあるが/dev/sdb1は存在しない - LVMが有効化されていない: 論理ボリュームは
/dev/mapper/...や/dev/vg/lvで参照する - 暗号化ボリューム未オープン: LUKS等で復号前のため
/dev/mapper/...がまだ出ていない - fstabの typo: 起動時に
/etc/fstab内のデバイス名が誤っている
対処法
1. デバイスの存在を確認
| $ ls -l /dev/sd* $ lsblk |
lsblk は接続中のブロックデバイスをツリー表示でき、最も確実です。
2. ディスクが認識されているか
| $ sudo fdisk -l $ dmesg | tail |
dmesg でディスク接続時のログ(SCSI/USBメッセージ等)を確認できます。
3. パーティションを切る(未パーティションの場合)
| $ sudo fdisk /dev/sdb |
4. LVMの場合は論理ボリュームを有効化
| $ sudo vgscan $ sudo vgchange -ay |
5. デバイス名を正しく指定してマウント
| $ sudo mount /dev/sdb1 /mnt/disk |
fstab で起動時に発生した場合
起動時に /etc/fstab 経由で出ている場合は、該当行をコメントアウトしてリブートし、原因のデバイス名を見直します。デバイス名でなくUUID指定にしておくと、ディスクの認識順が変わっても落ちません。
| $ sudo blkid # UUID="abcdef-..." /mnt/disk ext4 defaults 0 2 |
関連
lsblk: 接続中ブロックデバイスをツリー表示fdisk -l: 全ディスク・パーティションを一覧blkid: パーティションのUUID・ファイルシステム種別を確認dmesg: カーネルメッセージ(ハード認識ログ)を確認