Linuxでは、外付けのディスク(とくにUSB接続)を複数接続すると、起動時のタイミングで、異なるデバイス名になることがある。前は/dev/sdbだったものが、次回起動時は/dev/sdcになることもある。これでは、自動で特定のディレクトリにマウントすることはできないため、このような場合は、デバイス名ではなく、直接ディスクを指定してマウントする。
外付けディスクに限らずデバイス(周辺機器のこと)はユニークな名前(UUIDという)が割り振られている。これは周辺機器を識別するための名前のようなもので、メーカーの違いや種類など一切関係なく、その機器自体に割り当てられた完全に重複のない名前である(複数の英字と数字からなる文字列)。これを使用してマウントすることで、直接ディスクを指定することができる。
ディスクのUUIDを確認する。まずは、その直接指定をしてマウントしたいディスクを接続して、Linuxを起動する。そして、/dev/disk/by-uuidを確認する。以下、Ubuntu 18.04.4での実行例。
$ ls -l /dev/disk/by-uuid lrwxrwxrwx 1 root root 10 11月 1 18:52 ○○ -> ../../sdd1 lrwxrwxrwx 1 root root 10 11月 1 18:52 ×× -> ../../sdb1 lrwxrwxrwx 1 root root 10 11月 1 18:52 △△ -> ../../dm-0 lrwxrwxrwx 1 root root 10 11月 1 18:52 □□ -> ../../dm-1 lrwxrwxrwx 1 root root 10 11月 1 18:52 ◇◇ -> ../../sdc1 lrwxrwxrwx 1 root root 10 11月 1 18:52 ▽▽ -> ../../sda1
例えば、現在/dev/sddで認識されているディスクであればUUIDは○○。これを使用して、/etc/fstabに記述する。ファイルシステムがext4で/mnt/usbhddに接続するのであれば、以下のように1行追加する。
UUID=○○ /mnt/usbhdd ext4 defaults 0 2