Portál AbcLinuxu, 5. května 2025 23:31
Stejnému fyzickému disku může při každém bootu být přiřazeno jiné jméno zařízení (v /dev), což znamená, že zprávy v jaderném logu a výstup různých nástrojů nemusí odpovídat pohledu správce na systém.
Stejnému fyzickému disku může při každém bootu být přiřazeno jiné jméno zařízení (v /dev)Například pokud jsou v systému namíchaná ata a sata zařízení, jádro je při každém bootu uvidí v jiném pořadí a přidělí jim jiné názvy zařízení (sda, sdb a tak..). Čili správce se musí řídit něčím jiným než kernelími názvy zařízení, jinak nenapíše ani fstab.
což znamená, že zprávy v jaderném logu a výstup různých nástrojů nemusí odpovídat pohledu správce na systém.Pohled správce na systém:
LABEL=data11 /cache ext4 defaults,noatime 0 2Kernelí hláška:
EXT4-fs (sdb3): mounted filesystem with writeback data mode. Opts: (null)Fakt nevím co zrovna dnes je sdb3 a pokud bych tu hlášku chtěl luštit, musel bych jít a zjistit to.
Root fs už je potřeba uvést něčím stabilním, např. UUID, např. UUID, jinak tam jádro skutečně začne vyrábět náhodu.
Přesněji řečeno jádro žádné UUID nezná. To je výmysl udevu a tudíž ve skutečnosti parametr root zpracuje skript z initramdisku, UUID přeloží na skutečný název zařízení (například /dev/sdb3), a tento dá připojit. Jinak řečeno UUID a podobné jsou záležitost čistě uživatelského prostoru, jádro o tom nemá nejmenší tušení (jinak by muselo při každém mount(2) zkoumat obsah všech blokových zařízení).
Kapacitance je zdánlivý odpor součástky, jednotkou je tedy Ω.Ano, toho jsem si vědom. Nicméně v anglickém originálu je taky capacitance a nikoliv capacity
Zrovna dneska jsem upgradoval v serveru jádro na 2.6.39.2 a co myslíš? Mám ho tam. IDE subsystém s hd* názvy.
V jádře si stále můžeš vybrat mezi IDE a ATA. Kde si ale už nevybereš, je udev, který od jisté verze IDE názvosloví nepodporuje.
A zrovna v tom stroji mám více disků. A jako na potvoru taky kopii souborového systému, protože jeden z disků se začal poroučet. Takže třeba tady LABEL nepomůže, protože tam jsou dva systémy s touže jmenovkou (a obecně LVM snímky jich takových mohou navyrábět mnoho).
Takže začínám zkoumat, jestli initramdisk bude nebo nebude potřeba, jestli subsystém ATA dokáže nebo nedokáže na IDE hardwaru držet stabilní číslování podle topologie nebo ne.
Očekával bych, že na tohle (rozumnějme například přejímání informací o úložištích z BIOSu) má jádro nějaká pravidla, stejně jako ujasnění, jak se vypořádává s umístěním disků na IDE kanálech, SATA rozhraní podle čísel, prioritu SATA před PATA a podobně... Kde tedy udělali chybu? Nebo jsem jenom přespříliš naivní, neznalý?Pokud vím, tak jádro přiděluje jména SCSI diskům tak, jak se detekují, a to nejen "krátká jména" (
sda
, sdb
...), ale i ta dlouhá SCSIcky sběrnicoidní (dev:bus:target:lun
), protože i jednotlivé řadiče se mohou nadetekovat v různém pořadí.
Já osobně už jsem několikrát viděl, jak se uspaný disk odmítl včas probrat (hlásil "link is slow to respond, please be patient
") a byl v důsledku toho přejmenován, protože ho disk, který se za běžných okolnosti detekoval jako poslední (je to PATA disk, přípojený na přídfavném řadiči od Promise), předstihl a detekoval se dříve.
Očekával bych, že na tohle (rozumnějme například přejímání informací o úložištích z BIOSu) má jádro nějaká pravidla, stejně jako ujasnění, jak se vypořádává s umístěním disků na IDE kanálech, SATA rozhraní podle čísel, prioritu SATA před PATA a podobně...
Takové stálé a neměnné pořadí by sice bylo fajn, ale v plné obecnosti ho ani zajistit nejde. A i kdyby šlo, stejně by čas od času nastala situace, kdy se nějaké zařízení v důsledku chyby (ať už softwarové nebo hardwarové) nepodaří inicializovat a všechna další se posunou. Takže je lepší nepředstírat, že je možné persistenci pořadí zajistit.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.