Zrdcadlo pouzitim /dev/ar

Dan Lukes dan at obluda.cz
Sat Aug 27 14:07:56 CEST 2011


Jan Dušátko wrote:
> Zdravim,
> Mam (doufam) na systemu zrdcadlo pouzivajici SATA interface /dev/ad4 a
> /dev/ad6.
> Zrdcadlo je namountovane jako /dev/ar0. Z duvodu kolize AHCI a RAID
> jepouzivam AHCI interface.

Kdybys pouzival skutecne ahci ovladace nejmenoval by se device /dev/ad4 
ale /dev/ada0

Takze - mozna mas BIOS prepnuty do AHCI modu, ale ovladace pouzivas IDE. 
Coz neprekvapi, protoze nad AHCI ovladaci AR neni.

> Pokud si vypisu glabel status, ukazuje mi to dva rozdilne ufsid na
> jednotlivych UFS partiích.
> To mi pripada jako problem pri synchronizaci.
>
>                    Name  Status  Components
> ufsid/4dea43017116cdff     N/A  ad4s1a
> ufsid/4dea4302f8c1c8a8     N/A  ad4s1d
> ufsid/4dea4302adb8c1bd     N/A  ad4s1e
> ufsid/4dea5c939edc8088     N/A  ad4s2a
> ufsid/4dea5c93b93eb0ad     N/A  ad4s2d
> ufsid/4dea5c9425f8f68a     N/A  ad4s2e
>
> ufsid/4e4e8ed26a8f42a1     N/A  ad6s2a
> ufsid/4e4e8ed3ec9093b7     N/A  ad6s2d
> ufsid/4e4e8ed3132471ce     N/A  ad6s2e

Uz ten samotny dotaz je v podstate ilegalni. Pokud to spravne chapu, tak 
tys vytvoril ze dvou disku mirror, ktery se jmenuje "ar". A na me jsi 
nasledne vytvoril nejake datove struktury - jako treba BSD label a 
nasledne naformatovanou UFS partition.

Pak je ale onen label i ta partition na disku /dev/ar0.

Samozrejme, ze se ten sektor asi vyskytne i nekde na discich ad4 a ad6 - 
a dost mozna na miste, kde je utilita, kterou poklads svuj dotaz, 
nespravne vyhodnoti jako platna data, to ale nic nemeni na tom, ze 
takovy dotaz je vlastne nekorektni - ptas se na obsah datovych struktur 
(BSD label) na discich (ad4 a ad6), na kterych jsi ty datove struktury 
nevytvarel. Vytvarel jsi je az na tom mirroru (ar0).

Ledaze jsi mirror delal "na praseci zpusob" - to jest - mel jsi hotovy 
disk /ad4 a nad nim jsi teprve nadefinoval mirror. I tak jsi ale UFS 
delal jen nad ad4 a ne nad ad6.

Kdovy jaky zapomenuty sektor z nejake predchozi inkarnace UFS ta utilita 
nasla ...

Pak sis jiste vedom nasledujici vety z "man gmirror":
>  Create a mirror on disk with valid data (note that the last sector of the
>      disk will be overwritten).

a ujistil jsi se, ze UFS do toho posledniho sektoru nesaha, protoze 
jinak si ta data oba subsystemy budou prepisovat.

Pokud jsi to udelal takhle, ale neujistil se, a mel trochu smulu, pak 
muzes mit zadelano na problem.

> Protoze se jedna o zivy system, kde je na prvnim disku funkcni GRUB, co mi
> doporucite? Staci jenom rebuild, nebo trosku rozsahlejsi akce pro
> znovuzprovozneni RAID1 ? Samozrejme tak, aby to bylo I nadale bootovatelne
> ;o))

No, bud' budes muset zanalyzovat jak jsou ty disky skutecne vytvorene, 
spocitat konce jednotlivych objektu (partition, slice, UFS filesystem, 
mirror), zjistit, jestli se ti ve tvem konkretnim pripade objekty 
neprekryvaji a pokud ano, tak zkusit kolize vyresit.

Nebo disk ad6 z mirroru odebrat, vycistit (dd in=/dev/zero) a vratit a 
doufat, ze tentokrat vsechno probehne spravne.

Dalsi (a mozna nejlepsi) moznost je dump&X&restore. Kde X je smazani (dd 
if=/dev/zero ...) obou fyzickych disku (alespon jejich zacatku a koncu) 
a korektni vytvoreni mirroru nad kterym teprve budes korektne vytvaret 
dalsi struktury (bsdlabel, UFS).

Pozor, pokud je to bootovaci disk a neeliminoval jsi moznost, ze by se 
na takovy disk nekdy mohl ukladat coredump jadra (po nejakem abendu) tak 
je nutna specialni arange. See "NOTES" in man gmirror.

Pravda je takova, ze presne kvuli tomu gmirror (a nasledne cely GEOM) 
nemam rad - neni to dotazene do bezpecneho a stabilniho konce. Jakmile 
je jednou disk aktualne zivym diskem v ramci mirroru, tak preci nemuzu 
dovolit soucasne s nim pracovat jako se samostatnym diskem. Zadne ad4s1a 
ani ad6s2e, ktere je momentale v tvem /dev videt ve skutecnosti 
neexistuje. To jen GEOM nespravne interpretuje datove struktury na 
disku, ktere si tam ulozil nekdo jiny (ovladac mirroru).

Ale to odbocuju - ve zkratce je to jednoduche - jakmile je disk soucasti 
mirroru, zapomen, ze existuje a na nic se na nem neptej (o zapisech uz 
nemluvim vubec).

Dan


More information about the Users-l mailing list