При создании RAID1 например:
# atacontrol create RAID1 ad0 ad2система создает raid массив но на него пока ничего не пишеться. Но статус у него READY:
# atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: READYСистема считает что после создания raid, на нем создадут слайсы,
и партиции, после чего на них запишут данные.(что и происходит при установке системы на ar0)
при этом все данные не будут нарушать целостность raid.
Но систему можно обмануть.# atacontrol list
ATA channel 0:
Master: ad0 <ST380011A/3.06> ATA/ATAPI revision 6 //живая система
Slave: no device present
ATA channel 1:
Master: ad2 <ST380011A/3.06> ATA/ATAPI revision 6 //новый диск
Slave: no device present# atacontrol detach 1
Теперь мы имеем целостный RAID1 состоящий из одного диска с системой.
# atacontrol status ar0
ar0: ATA RAID1 subdisks: ad0 DOWN status: DEGRADEDПрописываем ar0 в fstab
# Device Mountpoint FStype Options Dump Pass#
/dev/ar0s1b none swap sw 0 0
/dev/ar0s1a / ufs rw 1 1
/dev/ar0s1e /tmp ufs rw 2 2
/dev/ar0s1f /usr ufs rw 2 2
/dev/ar0s1d /var ufs rw 2 2перегружаем систему (!!!должна нормально смонтировать все файловые системы, внимательно смотрите лог загрузки)
после перезагрузки:# atacontrol status ar0
ar0: ATA RAID1 subdisks: ad0 DOWN status: DEGRADED
# atacontrol addspare ar0 ad2
# atacontrol rebuild ar0
# atacontrol status ar0
ar0: ATA RAID1 subdisks: ad0 ad1 status: REBUILDING 1% completedПосле окончания rebuild система готова к использованию.
URL: http://www.opennet.me/base/sys/freebsd_atacontrol_raid.txt.html
Обсуждается: http://www.opennet.me/tips/info/896.shtml
Круто, спасибо за полезный совет. Обязательно попробую на днях.
Весьма любопытно и интересно, много проще чем vinum!
Правильно ли я понял, что файловая система остается 4.2BSD?
А в отношении к gmirror, может ли, кто-нибудь дать краткую сравнительную характеристику или хотя бы просто поделиться своими впечатлениями?
gmirror наряду с vinum'ом очень универсальные решения - не требуют аппаратного контроллера. Не знаю, как в этом отношении vinum, а gmirror мне понравился тем, что при незначительном нарушении целостности в результате, например, перезагрузки по сбою питания, для восстановления массива не требуется вмешательство и оное (восстановление) происходит в фоновом режиме.
P.S. хотелось бы узнать, как в этом отношении у atacontrol с поддерживаемыми контроллерами, а то однажды обнаружил неделю или дольше рассинхронизированный аппаратный массив (дело было в Linux'е), после чего решил не рисковать с аппаратными контроллерами; пришлось манипулировать с загрузкой с одним диском для выяснения, на котором актуальная информация.
Не получилось. После перезагрузки fsck сказал про /usr о поломанном суперблоке и починить не смог. Подозреваю, что метод в этой статье не совсем корректный, должен же где-то atacontrol хранить служебную инфу? Вобщем я переразбил всё, загрузился с livefs и сделал всё нормально.
на готовом рейде решил проверить как оно без винта подниматься будет.
ar0: ATA RAID1 subdisks: ad0 ad1 status: READYотключил винт, запустилось на одном, все хорошо.
вернул винт назад, биос говорит Degraded mode (восстанавливать не иду, в надежде что восстановлю из фри).
Загружаеться Фря, видит 2 винта, говорит - READY !!!
и тут ей становиться плохо, от того что файловые системы рассинхронизировые (kernel panic).
Ok, говорим detach на винт со старой версией(ad0) и уходим в ребут.поднимаемся опять на одном винте(том же ad1) - фря уже видит Degrade. Пытаемся восстановить рейд.
##atacontrol list
ATA channel 0:
Master: acd0 <SONY DVD-ROM DDU1612/DYS3> ATA/ATAPI revision 5
Slave: no device present
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad0 <SAMSUNG SP2004C/VM100-33> Serial ATA v1.0
Serial ATA II
Slave: no device present
ATA channel 3:
Master: ad1 <SAMSUNG SP2004C/VM100-33> Serial ATA v1.0
Serial ATA II
Slave: no device present
]##atacontrol status ar0
ar0: ATA RAID1 subdisks: DOWN ad1 status: DEGRADED##atacontrol addspare ar0 ad0
atacontrol: ioctl(ATARAIDADDSPARE): Device busy##atacontrol detach 2
##atacontrol attach 2
теперь уже получилось
##atacontrol addspare ar0 ad0
#перегружаем систему (!!!должна нормально смонтировать все файловые системы, внимательно смотрите лог загрузки)#
а если не смонтировала, в чем может быть проблема?
схема сработала на freebsd 6.1, только будьте внимательны поменялся синтаксис atacontrol. к имени канала приписывается ata приставка. например:
atacontrol detach ata1
работает.если выдаст такое сообщение
main /root #atacontrol addspare ar0 ad4
atacontrol: ioctl(ATARAIDADDSPARE): Device busyто надо сделать
main /root #atacontrol detach 2
main /root #atacontrol attach 2
Master: ad4 <WDC WD1600JS-00NCB1/10.02E02> Serial ATA v1.0
Serial ATA II
Slave: no device presentну и потом
main /root #atacontrol addspare ar0 ad4
main /root #atacontrol rebuild ar0
main /root #atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: REBUILDING 0% completed
atacontrol addspare ar0 ad12
atacontrol: ioctl(ATARAIDADDSPARE): Device busyделаю
atacontrol detach ata7
atacontrol attach ata7
получаю
Master: no device present
Slave: no device presentНо до detach там висел девайс ) куда копать?
Та же тема: после детача ничего не возвращается на место:
Master: no device present
Slave: no device present
Косяк контроллера (фря создаёт два массива ar0 и ar1).
Не совсем верно делать:
atacontrol detach ata7
atacontrol attach ata7
лучше:
atacontrol delete ar1 - (где ar1 "ненужный" массив)а затем уже:
atacontrol addspare ar0 ad12
у меня FreeBSD 6.2 в самом начале установки видит ar0 но размер детектит почему-то как у raid0. проверил тулзой к материнке - там показывает raid1
FreeBSD 6.2 на ASUS P5M2-R (RS120-E4/PA2)
Во время перезагрузки по этому how2 после определения ad4, до определения ar0 вылетает fatal trap 12
Лечится так: в RAID-BIOS у ранее выключенного винта статус Offline member. Сделать его non-raid (пункт 3), внести опять в рейд, продолжить загрузку. При этом автоматически рейд почему-то не начинает ребилдиться - надо руками с detach, attach, addspare, rebuildВывод: опасайтесь перегружаться с новым винтом в такой фейкрейде
у меня есть небольшая проблемка. после перезагрузки не монтирует фс. как поправить пока не знаю.
а в fstab не пробовал заменить ad* на ar0? :)бабушка рассказывала, помогает :-)
Решили добавить 3й жесткий на биллинг с raid1, и рейд упал, состояние degraded. ППЦ,вылетает fatal trap 12, прям ж..й лужу. Рэйд встроенный, intel. Выходит что добавление третьего диска ведет к рассихронизации рейда ?
>Решили добавить 3й жесткий на биллинг с raid1, и рейд упал, состояние
>degraded. ППЦ,вылетает fatal trap 12, прям ж..й лужу. Рэйд встроенный, intel.
>Выходит что добавление третьего диска ведет к рассихронизации рейда ?погоди, 3й диск в рейд1 ?
Нет, не в рейд1, просто отдельным диском.
1. А на новом винте нужно делать какую либо разметку? Или просто нулевый винт можно подключать?2. В fstab сейчас уже есть такое:
/dev/ad4s1b none swap sw 0 0
/dev/ad4s1a / ufs rw 1 1
/dev/ad4s1g /home ufs rw,userquota,groupquota 2 2
/dev/ad4s1d /tmp ufs rw 2 2
/dev/ad4s1e /usr ufs rw,userquota,groupquota 2 2
/dev/ad4s1f /var ufs rw 2 2Т.е. насколько я понимаю нужно просто заменить ad4 на ar0 верно?
3. В BIOS насколько я понимаю тоже необходимо включить RAID?
Спасибо
11:07am /home/user# atacontrol status ar0
ar0: ATA RAID1 status: READY
subdisks:
0 ad6 ONLINE
1 ad4 ONLINEВсе работает :)
вырезка из fstab
# Device Mountpoint FStype Options Dump Pass#
/dev/ar0s1b none swap sw 0 0
/dev/ar0s1a / ufs rw 1 1
/dev/ar0s1e /tmp ufs rw 2 2
/dev/ar0s1f /usr ufs rw 2 2
/dev/ar0s1d /var ufs rw 2 2
/dev/md0 /tmp mfs rw,noatime,async,-s128m
/dev/acd0 /cdrom cd9660 ro,noauto 0 0
Кстати, расскажите плз как эту хрень теперь разобрать без опасения потерять данные, ибо дисковая подсистема с мускулем тормозит нещадно :))))
фря 7.1 райд1. HP ML110
Создаю ar0, отключаю второй диск, перепивываю fstab, но после перезагрузки фря не видит ar0. приходится вручную монтировать и править fstab обратно.
после перезагрузки addspare говорит device busy
я всегда пользуюсь райдом1...и никаких проблем...
ставил все ---> http://blogfreebsd.com/freebsd/sozdanie-programmnogo-raid1-p... можно и http://it-admin.org/os-freebsd/sozdanie-programmnogo-raid1-p...