web-dev-qa-db-ja.com

Linux名/ dev / sdx /でUUIDをマウントする方法

ブート後のワークステーションで、Linuxの同じハードディスクの名前が/dev/sdg/から/dev/sdi/に変わることがあります
UUIDがたとえば/dev/sdaという名前で正確にマウントされるように、これを修正するにはどうすればよいですか?

問題は、生ファイルから仮想マシンを作成することから生じます。

VBoxManage internalcommands createrawvmdk -filename ~/.VirtualBox/win7.vmdk -rawdisk /dev/sdg -partitions 2,3 -mbr ~/.VirtualBox/FAKE.mbr -relative

名前が/dev/sdgから/dev/sdiに変わったら、仮想マシンの起動に問題があります...

2
Gabriel

答えはudevルールを使用することです:

KERNEL=="sd[a-z][0-9]", SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}=="Crucial_CT480M50", SYMLINK+="bootdevice%n"
KERNEL=="sd?", SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}=="Crucial_CT480M50", SYMLINK+="bootdevice"

ファイル/etc/udev/rules.d/mybootdevice.rules

(ここであなたの独創的な外観に合うように属性を適応させる方法: here

次に、udevを再起動します。

Sudo udevadm trigger

次に/ dev/bootdeviceがあります

起動するたびに持続します!

0
Gabriel

/ dev/sdaXNの代わりに/ dev/disk/by-uuid/someUUIDを使用します


UUIDを使用して、/devファイルシステム内のデバイスのシンボリックリンクを作成できます。

$ ls -l /dev/disk/by-uuid/fc48808f-8f06-47fc-a1fe-5d08ee9e0a40
lrwxr[...] 14:15 /dev/disk/by-uuid/fc48808f-8f06-47fc-a1fe-5d08ee9e0a40 -> ../../sdd1

リンクは次のように使用できます

... -rawdisk /dev/disk/by-uuid/fc48808f-8f06-47fc-a1fe-5d08ee9e0a40 ...

UUIDの代わりに、ラベルを同じ方法で使用できます。たとえば、ラベル "data"を使用します。

$ ls -l /dev/disk/by-label/data 
lrwxrwxrwx 1 root root 10 Sep  4 14:15 /dev/disk/by-label/data -> ../../sde1

試してみる

ls -l /dev/disk/by-uuid 
ls -l /dev/disk/by-label


それとは別に、/etc/fstabデバイスファイルの代わりに、UUIDsまたはラベルを/dev/sdXNで使用することもできます。 (ラベルをSudo lsblk -o NAME,LABELでリストします)

5
Volker Siegel