udev - Fix nevek a diszkeknek

Fórumok

Üdv!

Van egy gép, amiben eddig egyetlen HDD volt. Most kapott egy másik diszket, de a /dev alatti elnevezéseik most megborultak: A régebbi diszk, ami eddig sda volt, az most sdb lett. Az új lemez pedig felvette az sda elnevezést.

Én azt szeretném, hogy ami eddig is sda volt, az eztán is maradjon az, az új diszk pedig sdb legyen. A többi eszköz pedig utána ahogy jönnek. A google-t túrva valami ilyesmire jutottam, de nem igazán működik:

root@localhost:/etc/udev/rules.d# cat 10-persistent-hdd.rules
SUBSYSTEM=="block", ATTR{serial}=="S0DWJDRP448932", NAME:="sda"
SUBSYSTEM=="block", ATTR{serial}=="S0D7J1CLB11637", NAME:="sdb"

KERNEL=="sd*", SUBSYSTEM=="block", ATTR{serial}=="S0DWJDRP448932", NAME:="sda%n"
KERNEL=="sd*", SUBSYSTEM=="block", ATTR{serial}=="S0D7J1CLB11637", NAME:="sdb%n"

Hogy nézne ez ki helyesen, hogy bootoláskor a S0DWJDRP448932 seriallal rendelkező lemez legyen az sda, a S0D7J1CLB11637 sorszámú pedig az sdb?

Köszönöm

Hozzászólások

amennyiben tamogatott az uuid, hasznald azt, utana teljesen mind1, hogy sda vagy sdj a disked neve.

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

nem akarok a rootfs-en kívül nagyon másnál UUID-zni ha nem muszáj

Én csináltam a /mnt alá a /dev/disk/by-id alapján directorykat amelyek számomra elég beszédesek, mert például eleve benne van a gyártó neve plusz egyéb infók, és általában ebből én tudom hogy mi micsoda. Az fstab-ba pedig fel vannak véve a nofail paraméterrel. Mountkor csak a /mnt -ben lévő targetet adom meg.

Kivéve ha mégsem, mert...

Nem tudom, hogy mikori az udeved, de én Ubuntu 12.04-ben nem tudtam már ezt megoldani. Az újabb verziók ugyanis nem hajlandók más nevet adni az eszközöknek, mint amit a kernel kijelölt (vagy valami ilyesmi volt a hibaüzenet a logban, sajnos már nem emlékszem pontosan).

Ami nálam helyette megoldás lett, hogy hozzáadtam a persistent-storage.rules fájlhoz pár sort:


SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}=="SAMSUNG SP2514N ", SYMLINK+="legacy/sda%n"
SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}=="Hitachi HDS5C302", SYMLINK+="legacy/sdb%n"
SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}=="Hitachi HDS72202", SYMLINK+="legacy/sdc%n"

Így a /dev/legacy/ alatt továbbra is elérhetők a lemezeim a megszokott nevükön.

A trukk ott van, hogy meg kell cserelni a kabeleket.

Ha jol tippelek, akkor ezek SATA-s lemezek, es bar ugyan itt mar nincs Primary/Secondary vezerlo, mint az IDE eseteben, azert a bus sorrend tovabbra is letezo dolog. Ha nagyon megnezed az alaplapot, akkor be is vannak szamozva ezek a portok, SATA1, SATA2, stb. Azt kell elerni, hogy az sda diszk az kisebb sorszamu portba legyen bekotve, mint az sdb. Tekintve, hogy most pont rossz iranyban van a dolog, igy eleg, ha az alaplapon megcsereled a kabeleket.

Disclaimer: mivel nem vagyok hardveres beallitottsagu, elkepzelheto, hogy pocsek a terminologiam, a lenyeg gondolom ettol azert ertheto
--

Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal 

Nem vagyok rá büszke, de erre az esetre is van egy mocskos kis trükköm.
Még a 8.04-es Ubuntuban keveredtek össze a lemezeim egy alaplapcsere után, és mivel épp nem volt kedvem belegányolni az initrdbe ezt az egész udeves mókát, egész egyszerűen azt csináltam, hogy először csak az sda-nak szánt lemez vezérlőjének a modulját töltöttem be, aztán az rc.local scriptből a másikat (nálam is egy IDE és egy SATA lemez volt).
Sajnos ott nem volt megoldás az UUID vagy a symlink, mert volt egy raklap hobbiscriptem, amikben így hivatkoztam a partíciókra. Na azokat rettentően fájt volna normálisan megírni :)

A kernelkonfigban van egy olyan opció, hogy "IDE SCSI emulation". Ha ezt letiltod, és újraforgatod a kernelt, akkor az IDE vinyók nodjai /dev/hd[a..d][1..n] lesznek, az sd* marad sd*.
Nomeg... a BIOS-ban is lehet a merevlemezek (nem csak bootolási) sorrendjét változtatni, bár ennek a végeredménye nagyon gép/os/lemez függő...
-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.

Én LABEL-t használok, így mind1, hol van felcsatolva.

"Értem én, hogy villanyos autó, de mi hajtja?"

up
--
"'The time has come,' the Walrus said"