Автор Тема: Проблем с dmraid и via sata  (Прочетена 1208 пъти)

MoridinBG

  • Напреднали
  • *****
  • Публикации: 24
    • Профил
Проблем с dmraid и via sata
« -: Dec 10, 2006, 18:57 »
Имам дъно ASUS P5VD2-MX, с VIA RAID контролер. На него са закачени два хардиска Hitachi по 160GB в RAID 0. Windows си е коректно инсталиран с драйверите към тях.
Има и един АТА диск Seagate 10GB, който си взех специално за линукса, защото за този raid линукските драйвери са пълна скръб и стават само за Fedora 4.
Впоследствие качих slackware, четох един ден и се справих с откриването на raid-a и монтирането на дяловете на него. Става с device-mapper и dmraid. Всичко си работи на 6. Не се създават проблеми, Windows се стартира, Linux също.
Преди няколко дена качих VideoLinux /на практика PCLinuxOS с малко добавени пакети/ заради богатия набор програми за видео и аудио обработка. Неприятен момент беше, че ядрото с което идва няма драйвер за VIA IDE-то и съответно не ще да върви, но го подкарах във виртуална машина, прекомпилирах си ядро /2.6.18.5/ и тръгна реално /тоест на РС-то, не през vmware/.
Качих и на него dmraid, намерих си дисковете, всичко ОК. И така 2 дена. После по неизвестни причини спря да открива SATA дисковете /без dmraid Linux ги вижда като 2 нормалниа SATA диска, без значение, че са в RAID/. Без пипане по ядра и модули, без нищо /!?/. Бърниках се по модули и т.н. и дисковете отново се появиха. Само че при опит да се активират като RAID /dmraid -ay/ се изплюва следното:
Примерен код
# dmraid -ay
ERROR: via: invalid checksum on /dev/sda
ERROR: via: invalid checksum on /dev/sdb
No RAID disks

Четох пак из гугъл и т.н. но никъде не намерих разумно обяснение какво ще рече това... Някъде се спомена, че при 2.6.19 има някой големи промени по ATA/SATA и по sata_via са оправени проблеми. При мен и с 2.6.18 вървеше, но както и да е, така или иначе се налагаше да променя малко партциите, разместих ги, инсталирах на ново линукса, прекомпилирах с 2.6.19 и тръгна. Откри си sata дисковете, свалих и компилирах dmraid пускам го и пак същото
Примерен код
# dmraid -ay
ERROR: via: invalid checksum on /dev/sda
ERROR: via: invalid checksum on /dev/sdb
No RAID disks


През цялото време масивът работи напълно коректно под Windows. Всички дялове са си там, рпоблеми няма, софтуера за него казва, че грешка няма.

dmesg пък дава някой странни неща:
Примерен код
# dmesg | grep sda
SCSI device sda: 321672960 512-byte hdwr sectors (164697 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: drive cache: write back
SCSI device sda: 321672960 512-byte hdwr sectors (164697 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: drive cache: write back
 sda: sda1 sda2 sda3 sda4 < >
 sda: p3 exceeds device capacity
 sda: p4 exceeds device capacity
sd 0:0:0:0: Attached scsi disk sda
sda: rw=0, want=369478937, limit=321672960
Buffer I/O error on device sda4, logical block 0
sda: rw=0, want=369478937, limit=321672960
Buffer I/O error on device sda4, logical block 0
sda: rw=0, want=369478775, limit=321672960
Buffer I/O error on device sda3, logical block 122881024
sda: rw=0, want=369478776, limit=321672960
Buffer I/O error on device sda3, logical block 122881025
sda: rw=0, want=369478777, limit=321672960
Buffer I/O error on device sda3, logical block 122881026
sda: rw=0, want=369478778, limit=321672960
Buffer I/O error on device sda3, logical block 122881027
sda: rw=0, want=369478779, limit=321672960
Buffer I/O error on device sda3, logical block 122881028
sda: rw=0, want=369478780, limit=321672960
Buffer I/O error on device sda3, logical block 122881029
sda: rw=0, want=369478781, limit=321672960
Buffer I/O error on device sda3, logical block 122881030
sda: rw=0, want=369478782, limit=321672960
Buffer I/O error on device sda3, logical block 122881031
sda: rw=0, want=369478775, limit=321672960
sda: rw=0, want=369478776, limit=321672960
sda: rw=0, want=369478777, limit=321672960
sda: rw=0, want=369478778, limit=321672960
sda: rw=0, want=369478779, limit=321672960
sda: rw=0, want=369478780, limit=321672960
sda: rw=0, want=369478781, limit=321672960
sda: rw=0, want=369478782, limit=321672960


Примерен код
# dmesg | grep sdb
SCSI device sdb: 321672960 512-byte hdwr sectors (164697 MB)
sdb: Write Protect is off
sdb: Mode Sense: 00 3a 00 00
SCSI device sdb: drive cache: write back
SCSI device sdb: 321672960 512-byte hdwr sectors (164697 MB)
sdb: Write Protect is off
sdb: Mode Sense: 00 3a 00 00
SCSI device sdb: drive cache: write back
 sdb: unknown partition table
sd 1:0:0:0: Attached scsi disk sdb


Това с exceeds drive capacity и beyond limit нормално. Имаше го и на слака, имаше го и тук, докато работеше. Явно е защото е raid, а за линукс е 160ГБ диск с parttion table хващащ 320ГБ.

Принципно коректно работещ dmraid трябва при dmraid -ay да активира райда и да създаде устройство в /dev/mapper
Да ама не....

Някой да даде някаква насока?
Активен

MoridinBG

  • Напреднали
  • *****
  • Публикации: 24
    • Профил
Проблем с dmraid и via sata
« Отговор #1 -: Dec 24, 2006, 21:33 »
Хм... Доста време мина, проблемът си стои и никой, никъде не може да помогне.
Сменях АТА диска и пак си качих Slackware-a естествено. Веднага прекомпилиране на ядро с device-mapper, инсталация на device-mapper userspace и dmraid и естествено когато трябва да се активира масива изплюва
Примерен код
dmraid -ay
ERROR: via: invalid checksum on /dev/sda
ERROR: via: invalid checksum on /dev/sdb
No RAID disks


Сега ще прекомпилирам с някое по-старо ядро, 2.6.16 например, защото имам някакви съмнения да не е от това...

Някой да може да даде някакво инфо по темата?

Всички диагностики дават, че масивът е ОК. Вариант да го създам на ново няма. Има прекалено много информация, която ще ми създаде много работа као трябва да възстановявам...



Активен

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Проблем с dmraid и via sata
« Отговор #2 -: Dec 24, 2006, 22:10 »
Първо, този контролер не е истински РАИД контролер. Той не позволява хардуер-но мирорясване, striping и т.н операции. Той е само малко повече от който и да било PCI SATA контролер (има някаква памет, която пази конфигурацията на масива). Всички операции покрай подържането на масива се извършват от операционната система. Съдейки по това което прочетох си си изградил РАИД0 масив.

При РАИД0 имаме стрипинг, т.е двата диска формират един масив, в който няма никакво redundancy - т.е никъде не се пази резервна информация в случай че на някой от двата диска някой сектор се скапе. Имаш прекрасна производителност и двойно по-голямо пространство за сметка на влошена устойчивост на сривове. На теория да речем имаш да записваш 2 сектора информация - единият ще се запише на първият диск, едновременно с това вторият сектор ще се изпише на вторият диск.

Като следствие от това, повредата на някой сектор на един от двата диска става проблем за целият РАИД масив. Друго, което трябва да се спомене е че MBR на масива също така е пръснат по двата диска като е напълно възможно ако гледаш някой индивидуален диск, MBR-то му да е "ненормален" (дефакто всеки един от двата диска носи половината MBR). Въпреки всичко, съществува вероятност на един от двата диска да има грешен сектор точно там, където е разположен MBR-а на масива, но според мен е малко вероятно.


Не съм 100% убеден, но доколкото знам, dmraid при инициализацията на масива, записва някакви сектори с определена служебна стойност, нещо като ID на масива. Ако по някаква причина при тези сектори настане грешка, резултатът предполагам ще е подобен на описаният от теб (dmraid няма да разпознае дисковете като част от масива). Ако имаш как, бекъпирай каквото може и създай масива  наново, раздели го там както решиш и го форматирай. При софтуерните раид-ове, поради кеширането от страна на  ядрото, раид масивите са силно чувствителни към сривове на системата (имам предвид "груби" shutdown-ванки, енергопроблеми и т.н).
Активен

"Knowledge is power" - France is Bacon

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Проблем с dmraid и via sata
« Отговор #3 -: Dec 27, 2006, 17:31 »
Ама като се замисля трябва раид-а да е с много малък extent че да се случи MBR да ти се разположи по двата диска. По-вероятно на първият диск имаш работещ MBR (което що се отнася до "големите" дялове е напълно възможно), а на вторият диск просто да няма никаква информация свързана с MBR на масива. Което отговаря 100% на това което описваш.

Накратко не мисля че MBR-то е някакъв issue. По-вероятно някой сектори дето държат информация за dmraid масива (как ги водеха там...raid superblock май) са ти прецакани и дисковете като следствие не се разпознават като част от предишния масив.
Активен

"Knowledge is power" - France is Bacon

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
SATA дискове кернел 2.6.9
Настройка на програми
nakov 1 5575 Последна публикация Oct 21, 2004, 11:38
от
SATA проблем
Настройка на хардуер
RH9 0 4491 Последна публикация Oct 31, 2004, 02:08
от RH9
Проблем със стартирането от SATA HDD
Настройка на хардуер
dmvic 2 5849 Последна публикация Nov 28, 2004, 20:53
от dmvic
SATA без DMA
Настройка на хардуер
nextuser 2 5354 Последна публикация Aug 19, 2005, 09:16
от nextuser
Bsd и sata!
Системни настройки
never_mind 2 5232 Последна публикация Jun 07, 2006, 16:54
от never_mind