Como montar o UUID no nome do linux / dev / sdx /

2

Na minha estação de trabalho após a inicialização, às vezes o nome do meu mesmo disco rígido no linux muda de /dev/sdg/ para /dev/sdi/
Como posso consertar isso, que o UUID é montado exatamente com o nome /dev/sda , por exemplo?

O problema vem de criar uma máquina virtual a partir de um arquivo bruto:

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

Se agora o nome /dev/sdg for alterado para /dev/sdi , minha máquina virtual terá problemas para iniciar ...

    
por Gabriel 09.09.2014 / 10:42

2 respostas

0

A resposta é usar uma regra do 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"

em um arquivo /etc/udev/rules.d/mybootdevice.rules

(como adaptar os atributos para se adequar ao seu visual devivo aqui: aqui )

Em seguida, reinicie o udev:

sudo udevadm trigger

Em seguida, haverá um dispositivo / dev / boot

que é persistente após cada inicialização!

    
por Gabriel 10.02.2015 / 18:59
5

Use / dev / disk / by-uuid / someUUID em vez de / dev / sdaXN


Você pode usar o UUID para links simbólicos de dispositivo no sistema de arquivos /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

O link pode ser usado como

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

Em vez de UUIDs, os rótulos podem ser usados da mesma maneira - por exemplo, com o rótulo " data ":

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

Tente

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


Independentemente disso, UUID s ou rótulos também podem ser usados em /etc/fstab , em vez dos arquivos de dispositivo /dev/sdXN . (Listar etiquetas com sudo lsblk -o NAME,LABEL )

    
por Volker Siegel 09.09.2014 / 10:52