Posted at

uuidによるデバイスのマウント

More than 1 year has passed since last update.

※ はてなブログから技術ネタを移動しました

初稿:2011-02-14

試行錯誤の後、目標が達成された技術項目についてはTipsというカテゴリーで日記を書くことにする。

id:qpSHiNqp:20110214:1297651801 の最後の方にちょっと書いたが、UUIDを用いてデバイスをマウントする設定法をメモしておく。

UUIDを用いてfstabを記述することで、デバイスの接続順に関わらず(≒/dev/sd*の*の部分に関わらず)、任意のデバイスを任意のマウントポイントにマウントすることができる。

たとえば、USBメモリその1とUSBメモリその2があるとする。/dev/sda, /dev/sdbといったデバイス・ファイル名はUSBメモリの接続順に影響を受けるが、UUIDを使うと接続順に関係なくUSBメモリその1を/mnt/usb1, USBメモリその2を/mnt/usb2にひと通りにマウントするということができるということ。

これはUUIDの特性によるものだ。


自分の機器を管理・識別するために使える−−。そんな不思議なIDが「UUID」(universally unique identifier)です。日本語では「汎用一意識別子」などと訳しますが,実際にこちらを使うことはまずありません。

http://itpro.nikkeibp.co.jp/article/Keyword/20090206/324330/


つまり、特定のデバイスをUUIDで指定して、それをどのマウントポイントにマウントするかという指定をfstabに書くことができるのだ。

UUIDを使ったfstabの書式は以下である

#                

UUID=7AAE-3D22 /mnt/usb vfat defaults 0 0
UUID=a6855e1f-dde5-4322-b671-84d46ab24ce6 /mnt/backup2T ext4 defaults 0 0

普段の/dev/sdaとかの部分がUUID=hogehogeに置き換わっただけである。

デバイスのUUIDの調べ方は、


先駆者様を探したら、blkidを使った事がある人いた。真似して、恐る恐る

sudo blkid /dev/sda1 

と打ったら、

/dev/sda1: UUID="0xxxxxxxxxxxxx" LABEL="Local" TYPE="ntfs" 

とでた。(ノ´▽`)ノオオオオッ♪

http://ankyo.blog.so-net.ne.jp/2010-01-26


ということらしいです。

# sudo vim /etc/fstab [Enter] 

として上記のfstabの書式に従い追記し、

# sudo mount -a 

とすると、ちゃんとマウントされます。

UUIDの調べ方については、


最初調べたときにvol_idというコマンドでUUIDがわかるって書いてあったのにDebianにもUbuntuにもそんなコマンドなくて驚愕したけど

ls -l /dev/disk/by-uuid/ | grep sda1 

とか

sudo tune2fs -l /dev/sda1 | grep UUID 

とか

sudo blkid /dev/sda1 

とか、あらゆる方法でUUIDを調べることができるのであった。

http://d.hatena.ne.jp/kamipo/20101107/1289137788


こんなのもあるようで。