Софт raid 5 на debian squeeze (Софт raid 5 на debian squeeze)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

dr753
Сообщения: 9

Софт raid 5 на debian squeeze

Сообщение dr753 »

Есть 4 винта по 500 гб
Создаю рэйд в процессе установки ситемы (корневой и все остальные разделы на рэйде), все проходит нормально система с рэйда стартует , хочу попробовать заменить один из винтов (для тренировки)
делаю следующее

Код: Выделить всё

делаю
полмечаю диск как сбойный

mdadm --manage /dev/md0 --fail /dev/sdd1

Выводим его из массива (mdadm)

mdadm --manage /dev/md0 -r /dev/sdd1

смотрим

root@serverbackup:~# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Mon Mar 18 11:00:14 2013
     Raid Level : raid5
     Array Size : 1465148928 (1397.27 GiB 1500.31 GB)
  Used Dev Size : 488382976 (465.76 GiB 500.10 GB)
   Raid Devices : 4
  Total Devices : 3
    Persistence : Superblock is persistent

    Update Time : Thu Mar 21 14:06:18 2013
          State : clean, degraded
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

           Name : serverbackup:0  (local to host serverbackup)
           UUID : 1d501f90:cbfcf7ee:15761fed:3e30f025
         Events : 96

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       1       8       17        1      active sync   /dev/sdb1
       2       8       33        2      active sync   /dev/sdc1
       3       0        0        3      removed


/dev/sdd1 удален из рэйда

теперь по идее нужно сделать следующее

Код: Выделить всё

Добавим информацию о изменениях в raid массиве в конфиг mdadm
mdadm --examine --scan >> /etc/mdadm/mdadm.conf
пересоберем initrd
update-initramfs -u
перезагружаю комп (диск пока физически не извлек)
дохожу до меню grub выбираю любой пункт загрузки
вылетает следующее

kernel panic -not syncing:VFS Unable to mount root fs on unknown-block (0,0)

если диск извлечь и вставить новый получаю

Uncompression error system halted

Причем c установочного диска в rescue raid видится исобирается (как из 3х(без извлеченного) так и из 4х винтов). Подскажите где туплю ?
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Софт raid 5 на debian squeeze

Сообщение Bluetooth »

Вообще-то, от удаления диска массивы не меняются, соотвественно, обновление настроек и обновление initrafms делать не надо было. А не грузится сейчас как раз из-за того, что во время этих процедур что-то пошло не так. Были сообщения об ошибке во время обновления initramfs? покажите /etc/mdadm/mdadm.conf
Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
22.03.2013 23:18
Вообще-то, от удаления диска массивы не меняются, соотвественно, обновление настроек и обновление initrafms делать не надо было. А не грузится сейчас как раз из-за того, что во время этих процедур что-то пошло не так. Были сообщения об ошибке во время обновления initramfs? покажите /etc/mdadm/mdadm.conf


Мой mdadm.conf
после
mdadm --examine --scan >> /etc/mdadm/mdadm.conf

Код: Выделить всё

bash: mccat: команда не найдена

root@backup:/etc/mdadm# cat mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

# This file was auto-generated on Mon, 25 Mar 2013 07:40:36 +0300
# by mkconf 3.1.4-1+8efb9d1
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

Во время обновления initrafms никаких сообщений об ошибках не было
Но после обновления загрузится не могу вообще вылетает это

Код: Выделить всё

kernel panic -not syncing:VFS Unable to mount root fs on unknown-block (0,0)
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Софт raid 5 на debian squeeze

Сообщение Bluetooth »

Как видите, ничего не поменялось:

Код: Выделить всё

# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

# This file was auto-generated on Mon, 25 Mar 2013 07:40:36 +0300
# by mkconf 3.1.4-1+8efb9d1
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0
Верхняя строчка - при установке, нижняя - при mdadm --examine --scan.

Во-первых, уберите одну строчку.

Во-вторых, есть какой-то странный эффект, проявляющийся не всегда, выражающийся в том, что initramfs не может собрать массив, если в конфиге он указан как /dev/md/*, а не /dev/md*.

Соотвественно, попробуйте сменить /dev/md/0 в конфиге на /dev/md0. А также проверьте, какой аргумент root= передается ядру загрузчиком. Если он передает не то, что написано в конфиге (/dev/md/0), то проблема в этом.
Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
25.03.2013 12:44
Как видите, ничего не поменялось:

Код: Выделить всё

# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

# This file was auto-generated on Mon, 25 Mar 2013 07:40:36 +0300
# by mkconf 3.1.4-1+8efb9d1
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0
Верхняя строчка - при установке, нижняя - при mdadm --examine --scan.

Во-первых, уберите одну строчку.

Во-вторых, есть какой-то странный эффект, проявляющийся не всегда, выражающийся в том, что initramfs не может собрать массив, если в конфиге он указан как /dev/md/*, а не /dev/md*.

Соотвественно, попробуйте сменить /dev/md/0 в конфиге на /dev/md0. А также проверьте, какой аргумент root= передается ядру загрузчиком. Если он передает не то, что написано в конфиге (/dev/md/0), то проблема в этом.

привел mdadm.conf к к виду

Код: Выделить всё

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

# This file was auto-generated on Mon, 25 Mar 2013 07:40:36 +0300
# by mkconf 3.1.4-1+8efb9d1
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

root@backup:/etc/mdadm# cat mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays
ARRAY /dev/md0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

# This file was auto-generated on Mon, 25 Mar 2013 07:40:36 +0300
# by mkconf 3.1.4-1+8efb9d1


по поводу

Код: Выделить всё

. А также проверьте, какой аргумент root= передается ядру загрузчиком. Если он передает не то, что написано в конфиге (/dev/md/0), то проблема в этом.




на всякий случай привожу свой grub.cfg

Код: Выделить всё

root@backup:/boot/grub# cat grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod raid
insmod raid5rec
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md/0)'
search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
insmod raid
insmod raid5rec
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md/0)'
search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
set locale_dir=($root)/boot/grub/locale
set lang=ru
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod raid5rec
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md/0)'
        search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
        echo    'Loading Linux 2.6.32-5-686 ...'
        linux   /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.32-5-686
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod raid5rec
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md/0)'
        search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
        echo    'Loading Linux 2.6.32-5-686 ...'
        linux   /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro single
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.32-5-686
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###


я так поня л мне нужны блоки

Код: Выделить всё

insmod raid
insmod raid5rec
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md/0)'
search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
insmod raid
insmod raid5rec
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md/0)'
search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
set locale_dir=($root)/boot/grub/locale
set lang=ru
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod raid5rec
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md/0)'
        search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
        echo    'Loading Linux 2.6.32-5-686 ...'
        linux   /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.32-5-686
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod raid5rec
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md/0)'
        search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
        echo    'Loading Linux 2.6.32-5-686 ...'
        linux   /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro single
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.32-5-686
}

Насколько я понял проблема может быть в том что не совпадают uid ?

Код: Выделить всё

 set root='(md/0)'
        search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
        echo    'Loading Linux 2.6.32-5-686 ...'
        linux   /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro single
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.32-5-686
и
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0


или я не прав ?
Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
25.03.2013 12:44
Как видите, ничего не поменялось:

Код: Выделить всё

# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

# This file was auto-generated on Mon, 25 Mar 2013 07:40:36 +0300
# by mkconf 3.1.4-1+8efb9d1
ARRAY /dev/md/0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0
Верхняя строчка - при установке, нижняя - при mdadm --examine --scan.

Во-первых, уберите одну строчку.

Во-вторых, есть какой-то странный эффект, проявляющийся не всегда, выражающийся в том, что initramfs не может собрать массив, если в конфиге он указан как /dev/md/*, а не /dev/md*.

Соотвественно, попробуйте сменить /dev/md/0 в конфиге на /dev/md0. А также проверьте, какой аргумент root= передается ядру загрузчиком. Если он передает не то, что написано в конфиге (/dev/md/0), то проблема в этом.


Собствено вопрос - перелопатил кучу манов иногда встречается инфа о том что grub не ставится на рэйд ? Так ли это и если да то что делать ?
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Софт raid 5 на debian squeeze

Сообщение Bluetooth »

Насколько я понял проблема может быть в том что не совпадают uid ?
Нет.
linux /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro single
Ядру передается аргумент /dev/md0, а в initramfs массив инициализируется под /dev/md/0, потому и не работает.
Вы после того, как конфиг исправили, initramfs обновил?

Собствено вопрос - перелопатил кучу манов иногда встречается инфа о том что grub не ставится на рэйд ? Так ли это и если да то что делать ?
нет, это не так.
Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
25.03.2013 17:23
Насколько я понял проблема может быть в том что не совпадают uid ?
Нет.
linux /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro single
Ядру передается аргумент /dev/md0, а в initramfs массив инициализируется под /dev/md/0, потому и не работает.
Вы после того, как конфиг исправили, initramfs обновил?

Собствено вопрос - перелопатил кучу манов иногда встречается инфа о том что grub не ставится на рэйд ? Так ли это и если да то что делать ?
нет, это не так.


mdadm.conf

Код: Выделить всё

root@backup:/etc/mdadm# cat mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays
ARRAY /dev/md0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0

# This file was auto-generated on Mon, 25 Mar 2013 07:40:36 +0300
# by mkconf 3.1.4-1+8efb9d1

делаю
root@backup:/etc/mdadm# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-2.6.32-5-686
root@backup:/etc/mdadm#
система думает где сек 30-60
ребучусь
прохожу загрузку grub
и получаю
iniframs unpacking failed : junk in compressed archive
kernel panic -not syncing:VFS: Unable to mount root fs on unknown-block (0,0)

Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
25.03.2013 17:23
Насколько я понял проблема может быть в том что не совпадают uid ?
Нет.
linux /boot/vmlinuz-2.6.32-5-686 root=/dev/md0 ro single
Ядру передается аргумент /dev/md0, а в initramfs массив инициализируется под /dev/md/0, потому и не работает.
Вы после того, как конфиг исправили, initramfs обновил?

Собствено вопрос - перелопатил кучу манов иногда встречается инфа о том что grub не ставится на рэйд ? Так ли это и если да то что делать ?
нет, это не так.


С intframfs разобрался

отрабатывает при таких настройках
в grub.cfg вручную заменяю все md/0 на md0

Код: Выделить всё

insmod raid
insmod raid5rec
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md0)'
search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
insmod raid
insmod raid5rec
insmod mdraid
insmod part_msdos
insmod part_msdos
insmod part_msdos
insmod ext2
set root='(md0)'
search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
set locale_dir=($root)/boot/grub/locale
set lang=ru
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod raid5rec
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md0)'
        search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
        echo    'Loading Linux 2.6.32-5-686 ...'
        linux   /boot/vmlinuz-2.6.32-5-686 root=UUID=3e3f1c90-6a38-4502-b951-fd1560155fe1 ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.32-5-686
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod raid5rec
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md0)'
        search --no-floppy --fs-uuid --set 3e3f1c90-6a38-4502-b951-fd1560155fe1
        echo    'Loading Linux 2.6.32-5-686 ...'
        linux   /boot/vmlinuz-2.6.32-5-686 root=UUID=3e3f1c90-6a38-4502-b951-fd1560155fe1 ro single
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.32-5-686
}


mdadm.conf

Код: Выделить всё

# definitions of existing MD arrays
ARRAY /dev/md0 metadata=1.2 UUID=78e0b2e4:25c3f0c1:ef087008:db6f37d2 name=backup:0


вырубаю комп и извлекаю диск
включаю комп загрузка доходит до grub вываливается режим востановления и все. В чем может быть косяк ? Поидее ж все что нужно сделал!
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: Софт raid 5 на debian squeeze

Сообщение pelmen »

Я прошу прощения, мне честно лень читать всё. Просто на всякий случай скажу, что у меня система отказывалась грузиться с неполного массива, пока я не добавил в grub "bootdegraded=true"
linux /boot/vmlinuz-3.2.0-23-generic-pae root=/dev/md127 bootdegraded=true
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Софт raid 5 на debian squeeze

Сообщение Bluetooth »

в grub.cfg вручную заменяю все md/0 на md0
Не нужно было этого делать. Проблема у Вас была в неправильном параметре root для ядра, а Вы зачем-то меняете параметры root для загрузчика, отчего он и перестет работать. А root для ядра при этом на UUID меняете, и неизвестно, на верный ли.
Я прошу прощения, мне честно лень читать всё. Просто на всякий случай скажу, что у меня система отказывалась грузиться с неполного массива, пока я не добавил в grub "bootdegraded=true"
linux /boot/vmlinuz-3.2.0-23-generic-pae root=/dev/md127 bootdegraded=true
Да. это тоже попробуйте.
Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
26.03.2013 12:10
в grub.cfg вручную заменяю все md/0 на md0
Не нужно было этого делать. Проблема у Вас была в неправильном параметре root для ядра, а Вы зачем-то меняете параметры root для загрузчика, отчего он и перестет работать. А root для ядра при этом на UUID меняете, и неизвестно, на верный ли.
Я прошу прощения, мне честно лень читать всё. Просто на всякий случай скажу, что у меня система отказывалась грузиться с неполного массива, пока я не добавил в grub "bootdegraded=true"
linux /boot/vmlinuz-3.2.0-23-generic-pae root=/dev/md127 bootdegraded=true
Да. это тоже попробуйте.

после всех экспериментов как и следовало ожидать запорол систему , поставил все с нуля.

Опишу подробно весь процесс установки

имеем 4-е винта по 500 гб и скачанный с http://www.debian.org/ iso с последней версией debian 6 stable
начинаю установку в режиме expert graficall install
дохожу до разметки дисков создаю raid , Устанавливаю на него систему (выбираю его тип как / файловую систему ext3 )
система ругается что не создан файл подкачки, и продолжает установку. Ставится Grub
Выбираю установить системный загрузчик в главную загрузочную запись (grube-install /dev/sda)
Завершается установка , перезагружается комп , грузится система
fdisk-l и df -h

Код: Выделить всё

root@backup:~# fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0008e588

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1       60802   488384512   fd  Linux raid autodetect

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0001ce30

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       60802   488384512   fd  Linux raid autodetect

Disk /dev/sdc: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0001f739

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1       60802   488384512   fd  Linux raid autodetect

Disk /dev/sdd: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00021c93

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1       60802   488384512   fd  Linux raid autodetect

Disk /dev/md0: 1500.3 GB, 1500312502272 bytes
2 heads, 4 sectors/track, 366287232 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 524288 bytes / 1572864 bytes
Disk identifier: 0x00000000

Disk /dev/md0 doesn't contain a valid partition table



root@backup:~# df -h
Файловая система      Разм  Исп  Дост  Исп% смонтирована на
/dev/md0              1,4T  657M  1,3T   1% /
tmpfs                1006M     0 1006M   0% /lib/init/rw
udev                 1002M  212K 1001M   1% /dev
tmpfs                1006M     0 1006M   0% /dev/shm

смотрю инфу по raid

root@backup:~# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sda1[0] sdd1[3] sdc1[2] sdb1[1]
1465148928 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]

unused devices: <none>

по идее все готово и работает , теперь попытаюсь извлечь из массива 1 диск

Код: Выделить всё

Вообще-то, от удаления диска массивы не меняются, соотвественно, обновление настроек и обновление initrafms делать не надо было. А не грузится сейчас как раз из-за того, что во время этих процедур что-то пошло не так. Были сообщения об ошибке во время обновления initramfs? покажите /etc/mdadm/mdadm.conf


соответственно ничего делать не буду просто отмечу диск как сбойный и выведу его из массива

Код: Выделить всё

root@backup:~# mdadm --manage /dev/md0 --fail /dev/sdd1
mdadm: set /dev/sdd1 faulty in /dev/md0
root@backup:~# mdadm --manage /dev/md0 -r /dev/sdd1
mdadm: hot removed /dev/sdd1 from /dev/md0
root@backup:~# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sda1[0] sdc1[2] sdb1[1]
      1465148928 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]

unused devices: <none>

sdd1 выведено нормально

определяю какой из моих винтов sdd1

root@backup:~# hdparm -i /dev/sd[a,b,c,d] | grep Serial
 Model=WDC WD5000AAKX-00ERMA0, FwRev=15.01H15, SerialNo=WD-WCC2ER632649
 Model=WDC WD5000AAKX-00ERMA0, FwRev=15.01H15, SerialNo=WD-WCC2ER889938
 Model=WDC WD5000AAKX-00ERMA0, FwRev=15.01H15, SerialNo=WD-WCC2EP729130
 Model=WDC WD5000AAKX-00ERMA0, FwRev=15.01H15, SerialNo=WD-WCC2EN920568
root@backup:~#

Отключаю комп и физически извлекаю винт с серийным номером SerialNo=WD-WCC2EN920568

в mdadm.conf исправляю md/0 на md0
Включаю комп
прогружается grub выбираю нужный пункт жму E и дописываю к linux /boot/vmlinuz-2.6.32-5-amd64 root=/dev/md0 bootdegraded=true
пытаюсь загрузится
получаю
Decompressing Linux
uncompression error
--System halted

подключаю винт ситема грузится ругается что нет одного диска в raid но грузится !

Я уже и не знаю куда копать !


Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Софт raid 5 на debian squeeze

Сообщение Bluetooth »

Включаю комп
прогружается grub выбираю нужный пункт жму E и дописываю к linux /boot/vmlinuz-2.6.32-5-amd64 root=/dev/md0 bootdegraded=true
пытаюсь загрузится
получаю
Decompressing Linux
uncompression error
--System halted
Ошибка говорит о том, что загрузчик не смог прочитать образ ядра с массива.
Такой вопрос: Когда эта ошибка вылезала, выведенный из массива диск был в системе, или он был физически отключен?

Вообще, лично я рекомендую для надежности /boot или даже / делать на raid1, чтобы систему можно было загрузить в любом случае.

У меня был случай, когда / был на raid10, а админ раздолбай и не уследил за тем, что один диск из рейда вывалился. В итоге grub не мог правильно определить, где же массив, на трех "живых" или одном "мертвом", и пытался грузить с "мертвого", а с 1 диска из массива raid10 немногое прочитаешь :)
Возможно(хотя и не факт), что у Вас подобная ситуация
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Софт raid 5 на debian squeeze

Сообщение Ленивая Бестолочь »

А уже можно с пятого грузиться? Во дела.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Софт raid 5 на debian squeeze

Сообщение Bluetooth »

Ленивая Бестолочь писал(а):
31.03.2013 19:28
А уже можно с пятого грузиться? Во дела.

Груб 2 с чего только не грузится.
Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
31.03.2013 19:31
Ленивая Бестолочь писал(а):
31.03.2013 19:28
А уже можно с пятого грузиться? Во дела.

Груб 2 с чего только не грузится.

с обычного он грузится но если рэйд 5 в деградед то все алес капут grub не может достучаться до /boot (причем насколько я понял этой проблемы лишен только raid 1 ) , решил эту проблему использование двух raid 5 и1 на 1 поместил /boot на 5 / и все работает
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Софт raid 5 на debian squeeze

Сообщение Bluetooth »

dr753 писал(а):
05.04.2013 16:17
Bluetooth писал(а):
31.03.2013 19:31
Ленивая Бестолочь писал(а):
31.03.2013 19:28
А уже можно с пятого грузиться? Во дела.

Груб 2 с чего только не грузится.

с обычного он грузится но если рэйд 5 в деградед то все алес капут grub не может достучаться до /boot (причем насколько я понял этой проблемы лишен только raid 1 ) , решил эту проблему использование двух raid 5 и1 на 1 поместил /boot на 5 / и все работает

С degraded raid10 он грузится, но не всегда. А вообще Вы сделали крайне правильно :)
Спасибо сказали:
dr753
Сообщения: 9

Re: Софт raid 5 на debian squeeze

Сообщение dr753 »

Bluetooth писал(а):
05.04.2013 21:29
dr753 писал(а):
05.04.2013 16:17
Bluetooth писал(а):
31.03.2013 19:31
Ленивая Бестолочь писал(а):
31.03.2013 19:28
А уже можно с пятого грузиться? Во дела.

Груб 2 с чего только не грузится.

с обычного он грузится но если рэйд 5 в деградед то все алес капут grub не может достучаться до /boot (причем насколько я понял этой проблемы лишен только raid 1 ) , решил эту проблему использование двух raid 5 и1 на 1 поместил /boot на 5 / и все работает

С degraded raid10 он грузится, но не всегда. А вообще Вы сделали крайне правильно :)

ну все уже украдено до нас
http://habrahabr.ru/post/101299/
http://howitmake.ru/blog/ubuntu/18.html
Всем интересующимся рекомендую , вопрос можно отмечать как решенный
Спасибо сказали: