Fórum Root.cz

Hlavní témata => Server => Téma založeno: Ston3 14. 03. 2016, 21:52:31

Název: GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 14. 03. 2016, 21:52:31
Zdravím ve spolek, chtěl bych nasadit RAID 1 a tak zkouším ve VMware různé scénáře jak se bude pole chovat.
Stále se mi nedaří nabootovat z degradovaného pole.
Instaluji Debian 8.2 na takto rozdělené disky

/dev/sda1 250 MB - linux raid
/dev/sda5 1 GB - linux raid
/dev/sda6 20 GB - linux raid

/dev/sdb1 250 MB - linux raid
/dev/sdb5 1 GB - linux raid
/dev/sdb6 20 GB - linux raid

tyto disky pak spojené do raidu vzniknou

/dev/md0 250 MB ext4 /boot
/dev/md1 1 GB swap
/dev/md2 20 GB ext4 /

zavaděč GRUB jsem při instalaci nainstaloval na disk /dev/sda
po instalaci a prvním bootu systému jsem GRUB nainstaloval i na sdb příkazem
grub-install /dev/sdb
Bohužel ale když vyřadím disk sda tak mi stroj nenabootuje :(

Prosím o radu co dělám špatně...
Název: Re:RAID 1 GRUB 2
Přispěvatel: Mirek Prýmek 14. 03. 2016, 21:57:11
Bohužel ale když vyřadím disk sda tak mi stroj nenabootuje :(

Prosím o radu co dělám špatně...
Tyjo, takovej pěknej začátek a tak pokazit konec... :(

Nechtěl bys stejně pěkně popsat i co znamená "tak mi stroj nenabootuje"? Co třeba screenshot z toho VMware? To přece není tolik práce, ne?
Název: Re:RAID 1 GRUB 2
Přispěvatel: Ston3 14. 03. 2016, 22:09:09
Ono není moc z čeho dělat printscreen, prostě bliká kurzor na černým pozadí. Nic to nepíše, nic to nedělá, žádnej systém, žádnej bootloader, nic.
Název: Re:RAID 1 GRUB 2
Přispěvatel: samalama 14. 03. 2016, 22:26:33
RAID 1 GRUB 2 \?\?\? 3

zeby ti vmware nebootoval z dalsieho disku (sdb)...?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: fedorac 14. 03. 2016, 23:35:41
me vmware na linuxu prestal jet uplne, takze to nezkusim. ale urcite je lepsi se zeptat primo na forech vmware, celkem funguji
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 15. 03. 2016, 10:04:33
a ten md0 ma jaky metadata? cat /proc/mdstat
tam bylo kvuli grubu potreba dat --metadata 0.9

jinak si grub proste bude cist data z prvniho disku, co je v /boot/grub/grub.cfg?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 15. 03. 2016, 10:57:40
Zaznamenal jsem nějakej pokrok.
Už mi to něco píše.
(http://kamenikjiri.cz/Debian8.x-2016-03-15-10-46-30.png)
Ale více méně jsem s tím nic nedělal, jenom jsem snad znovu udělal
Kód: [Vybrat]
grub-install /dev/sdb
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 15. 03. 2016, 11:08:27
Nastartuj do systému (z nedegradovanýho pole) a mrkni se například pomocí ls -la, kam ukazuje to, co Ti píše, tedy:
/dev/disk/by-uuid/....

Jestli míří na nějakou pitomost (/dev/sda), tak se není čemu, divit, že to nejede... :-)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 15. 03. 2016, 11:09:33
no, akorat chce cist z disku /dev/disks/by-uuid....
to asi neni to pole md0, nebo jo?

a metadata na md0 jsou jaky? cat /proc/mdstat
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 15. 03. 2016, 11:21:11
metadata jsou v.1.2
uuid ktere to nemuze najit je zarizeni md2 ktere ma byt pripojene jako / (root)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 15. 03. 2016, 11:24:15
Ještě přidávám obrázek, to nahoře je
Kód: [Vybrat]
ls -la /dev/disk/by-uuid/(http://kamenikjiri.cz/Debian8.x-2016-03-15-11-22-24.png)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 15. 03. 2016, 11:30:16
ještě výpis grub.cfg
už to není obrázek, debugoval jsem síť ve vmware a už mi jede SSH :-)

Kód: [Vybrat]
root@debian:~# cat /boot/grub/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
  set have_grubenv=true
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

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 {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod part_msdos
insmod diskfilter
insmod mdraid1x
insmod ext2
set root='mduuid/e8b86af491b164c186e96a8cc3aa183f'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint='mduuid/e8b86af491b164c186e96a8cc3aa183f'  feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e
else
  search --no-floppy --fs-uuid --set=root feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=-1
else
  if [ x$feature_timeout_style = xy ] ; then
    set timeout_style=menu
    set timeout=5
  # Fallback normal timeout code in case the timeout_style feature is
  # unavailable.
  else
    set timeout=5
  fi
fi
### 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 ###
function gfxmode {
        set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e' {
        load_video
        insmod gzio
        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
        insmod part_msdos
        insmod part_msdos
        insmod diskfilter
        insmod mdraid1x
        insmod ext2
        set root='mduuid/06812a671e67403fb3d71ef586923f55'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint='mduuid/06812a671e67403fb3d71ef586923f55'  02c134f7-a13d-4781-9232-8ac3cf8d3f49
        else
          search --no-floppy --fs-uuid --set=root 02c134f7-a13d-4781-9232-8ac3cf8d3f49
        fi
        echo    'Loading Linux 3.16.0-4-amd64 ...'
        linux   /vmlinuz-3.16.0-4-amd64 root=UUID=feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-4-amd64
}
submenu 'Advanced options for Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e' {
        menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-4-amd64-advanced-feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e' {
                load_video
                insmod gzio
                if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
                insmod part_msdos
                insmod part_msdos
                insmod diskfilter
                insmod mdraid1x
                insmod ext2
                set root='mduuid/06812a671e67403fb3d71ef586923f55'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint='mduuid/06812a671e67403fb3d71ef586923f55'  02c134f7-a13d-4781-9232-8ac3cf8d3f49
                else
                  search --no-floppy --fs-uuid --set=root 02c134f7-a13d-4781-9232-8ac3cf8d3f49
                fi
                echo    'Loading Linux 3.16.0-4-amd64 ...'
                linux   /vmlinuz-3.16.0-4-amd64 root=UUID=feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e ro  quiet
                echo    'Loading initial ramdisk ...'
                initrd  /initrd.img-3.16.0-4-amd64
        }
        menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-4-amd64-recovery-feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e' {
                load_video
                insmod gzio
                if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
                insmod part_msdos
                insmod part_msdos
                insmod diskfilter
                insmod mdraid1x
                insmod ext2
                set root='mduuid/06812a671e67403fb3d71ef586923f55'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint='mduuid/06812a671e67403fb3d71ef586923f55'  02c134f7-a13d-4781-9232-8ac3cf8d3f49
                else
                  search --no-floppy --fs-uuid --set=root 02c134f7-a13d-4781-9232-8ac3cf8d3f49
                fi
                echo    'Loading Linux 3.16.0-4-amd64 ...'
                linux   /vmlinuz-3.16.0-4-amd64 root=UUID=feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e ro single
                echo    'Loading initial ramdisk ...'
                initrd  /initrd.img-3.16.0-4-amd64
        }
}

### 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/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### 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  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 15. 03. 2016, 11:39:51
Před pár lety bylo potřeba mít metadata 0.90 (alespoň na /boot, zbytek už byl si myslím fuk).

Mimochodem - jsem debil/prase, když v grub.cfg mám jen totoM
Kód: [Vybrat]
setparams blablabla {
  nějakej disk
  nějaký jádro
}
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 15. 03. 2016, 11:40:29
Dám sem i textovej výpis, pro lepší hledání.

Kód: [Vybrat]
root@debian:~# ls -la /dev/disk/by-uuid/
total 0
drwxr-xr-x 2 root root 120 Feb 14 07:13 .
drwxr-xr-x 6 root root 120 Feb 14 07:13 ..
lrwxrwxrwx 1 root root   9 Feb 14 07:13 02c134f7-a13d-4781-9232-8ac3cf8d3f49 -> ../../md0
lrwxrwxrwx 1 root root   9 Feb 14 07:13 2015-09-06-11-12-07-00 -> ../../sr0
lrwxrwxrwx 1 root root   9 Feb 14 07:13 7a8c8e66-f470-4c88-860e-300efe490952 -> ../../md1
lrwxrwxrwx 1 root root   9 Feb 14 07:13 feda4d52-aaae-47a8-a3fa-c1d4a6d9f51e -> ../../md2

Kód: [Vybrat]
root@debian:~# cat /proc/mdstat
Personalities : [raid1]
md2 : active raid1 sda6[0] sdb6[1]
      7806976 blocks super 1.2 [2/2] [UU]
      bitmap: 1/1 pages [4KB], 65536KB chunk

md1 : active (auto-read-only) raid1 sdb5[1] sda5[0]
      975296 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sdb1[1] sda1[0]
      242496 blocks super 1.2 [2/2] [UU]
      bitmap: 0/1 pages [0KB], 65536KB chunk

unused devices: <none>
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 15. 03. 2016, 11:42:50
Před pár lety bylo potřeba mít metadata 0.90 (alespoň na /boot, zbytek už byl si myslím fuk).

Mimochodem - jsem debil/prase, když v grub.cfg mám jen totoM
Kód: [Vybrat]
setparams blablabla {
  nějakej disk
  nějaký jádro
}
V jednoduchostí je síla, bohužel ale GRUB 2 (můj) už je generovaný podle obsahu adresáře /etc/grub.d/
Kód: [Vybrat]
root@debian:~# ls -la /etc/grub.d/
total 80
drwxr-xr-x  2 root root  4096 Feb 14 06:40 .
drwxr-xr-x 72 root root  4096 Feb 14 07:18 ..
-rwxr-xr-x  1 root root  9424 Mar 23  2015 00_header
-rwxr-xr-x  1 root root  6058 Mar 23  2015 05_debian_theme
-rwxr-xr-x  1 root root 12261 Mar 23  2015 10_linux
-rwxr-xr-x  1 root root 11082 Mar 23  2015 20_linux_xen
-rwxr-xr-x  1 root root 11692 Mar 23  2015 30_os-prober
-rwxr-xr-x  1 root root  1416 Mar 23  2015 30_uefi-firmware
-rwxr-xr-x  1 root root   214 Mar 23  2015 40_custom
-rwxr-xr-x  1 root root   216 Mar 23  2015 41_custom
-rw-r--r--  1 root root   483 Mar 23  2015 README
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 15. 03. 2016, 11:45:36
Podle tohoto (https://raid.wiki.kernel.org/index.php/RAID_setup#Create_RAID_device) je potřeba mít na /boot partition metadata 1.0, ne 1.2. Příčina problému (že nelze najít root device) to asi nebude, ale stálo by za to se na to podívat.

Formát grub.cfg necháme spát, to byl jen jednoduchej dotaz (je mi jasný, že ten Tvuj je generovanej, kdo by se s tím psal ručně... a proč proboha?)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 15. 03. 2016, 11:48:54
Ještě jdu pokračovat v teorii - nenajde root device, ale initramfs startuje.

Z toho vyvozuju (aniž bych tomu věnoval hlubokou myšlenku):
1. /boot najde a vezme si z něj init (takže roblém v metadata římo nebude)
2. čeká na root, kterej ale nevidí -> podle mě nesložil pole

EDIT: V Grubu (menu, kde vybíráš, co nastartovat) dej editaci a napiš do root= natvrdo to pole (/dev/md2?). Zkus, dej vědět
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 15. 03. 2016, 12:01:33
pole ma slozit initramfs, ne? mas to v /etc/mdadm.conf ? a pregenerovat initramfs
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: dustin 15. 03. 2016, 12:02:31
Pro úspěšný start grubu2 z raid1 mám vyzkoušeno:

1. aktuální konfigurace mdadm v /etc/mdadm/mdadm.conf (klasicky přes mdadm --detail --scan >> /etc/mdadm/mdadm.conf )

2. tuto konfiguraci přenést do initramfs (např. na debianu/ubuntu pomocí update-initramfs)

3. update-grub, který mimojiné zajistí do grub.cfg loadování mdadm modulu pro grub.

Grub2 umí přistupovat na raidový disk korektně (i raid10, raid5 jsem nikdy nezkoušel/nepotřeboval), není potřeba řešit, zda filesystém na raid0 začíná od začátku, nebo je před ním superblock. http://unix.stackexchange.com/a/28445

Nicméně používáme root na raid1 a velkou datovou partišnu poslední na disku na raid10 (nebo raidX, jak kdo používá). Snadno se pak upgraduje na větší disky - root se nechá a datová partišna se postupně zvětšuje i s filesystémem, jak roste velikost disku.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: dustin 15. 03. 2016, 12:03:47
..zda filesystém na raid0...

Oprava - samozřejmě má být raid1
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 15. 03. 2016, 13:01:57
v /etc/mdadm/mdadm.conf mám
Kód: [Vybrat]
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

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

# 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=06812a67:1e67403f:b3d71ef5:86923f55 name=debian:0
ARRAY /dev/md/1  metadata=1.2 UUID=d31cc8ea:dcebcd36:8bc41858:abe4f4b1 name=debian:1
ARRAY /dev/md/2  metadata=1.2 UUID=e8b86af4:91b164c1:86e96a8c:c3aa183f name=debian:2

# This configuration was auto-generated on Sun, 14 Feb 2016 06:37:16 +0100 by mkconf
stejné jako mdadm
Kód: [Vybrat]
root@debian:~# mdadm --detail --scan
ARRAY /dev/md/0 metadata=1.2 name=debian:0 UUID=06812a67:1e67403f:b3d71ef5:86923f55
ARRAY /dev/md/1 metadata=1.2 name=debian:1 UUID=d31cc8ea:dcebcd36:8bc41858:abe4f4b1
ARRAY /dev/md/2 metadata=1.2 name=debian:2 UUID=e8b86af4:91b164c1:86e96a8c:c3aa183f
takže v pořádku.

udělal jsem:
Kód: [Vybrat]
update-initramfs
update-grub
install-grub /dev/sda
install-grub /dev/sdb

Po odstranění disku ve VMware jsem na stejné chybě jako v 10:57
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 15. 03. 2016, 14:03:52
Něco nám pořád chybí...

CO se stane, když vyřadíš namísto sda disk sdb? Stejná chyba?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 15. 03. 2016, 14:11:13
jak rika pavouk

a jeste kdyz te to vyhodi to toho shellu pri odpojenym jednom disku, tak se podivej, jestli je pole sestaveny a jestli tam je to uuid
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Lol Phirae 15. 03. 2016, 14:22:54
A v neposlední řadě: co se stane, když se vysereš na vmware a prostě to uděláš na normálním fyzickém stroji.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 15. 03. 2016, 14:24:31
a jeste kdyz te to vyhodi to toho shellu pri odpojenym jednom disku, tak se podivej, jestli je pole sestaveny a jestli tam je to uuid
Já init nikdy neměl (Gentoo... stačí mi obyčejný věci, natož si přidělávat práci), tak nvím, jak moc je tam funkční shell. Pokud je to v rámci možností použitelný, tak by samozřejmě bylo dobrý omrknout sestavení pole, případně ho sestavit a pokračovat v bootu (pokud to tedy vůbec jde).
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: pet 15. 03. 2016, 15:00:01
Formát grub.cfg necháme spát, to byl jen jednoduchej dotaz (je mi jasný, že ten Tvuj je generovanej, kdo by se s tím psal ručně... a proč proboha?)
Proč? Protože tohle stačí a udělat to tak aby to vygenerovalo ekvivalent tohohle je na pos..ní:
Kód: [Vybrat]
set default=0
set timeout=30

menuentry 'Linux 4.1.15-gentoo-r1 sda2' {
        linux /kernel-4.1.15-gentoo-r1 root=/dev/sda2 ro
}

menuentry 'Linux 4.1.12-gentoo sda2' {
        linux /kernel-4.1.12-gentoo root=/dev/sda2 ro
}

menuentry 'Linux 3.18.11-gentoo sda3' {
        linux /kernel-3.18.11-gentoo root=/dev/sda3 ro
}
menuentry "memtest86+ 4.20" {
        linux16 /memtest86plus/memtest
}
A což teprve:
Kód: [Vybrat]
default 0
timeout 30

menuentry 'ALFA position MAIN system' {
        linux /kernel-ALFA md=d127,/dev/sda,/dev/sdb root=/dev/md_d127p2 vga=1
}
menuentry 'ALFA position BACKUP system' {
        linux /kernel-ALFA md=d127,/dev/sda,/dev/sdb root=/dev/md_d127p2 vga=1 backup
}

menuentry 'BETA position MAIN system' {
        linux /kernel-BETA md=d127,/dev/sda,/dev/sdb root=/dev/md_d127p6 vga=1
}
menuentry 'BETA position BACKUP system' {
        linux /kernel-BETA md=d127,/dev/sda,/dev/sdb root=/dev/md_d127p6 vga=1 backup
}

menuentry 'Memory test' {
        linux16 /memtest86plus/memtest
}
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 15. 03. 2016, 15:11:09
...
Já se asi blbě vyjádřil. "Kdo by se s tim psal ručně" jsem myslel "Kdo by ten kód na generování psal ručně" a já osobně preferuju ty jednoduchý zápisy, jako jsi uvedl Ty. Když mám nový jádro, otevřu nano, párkrát zmáčknu Ctrl + K, pak 2x Ctrl + U, upravim čísla a je hotovo.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: nobody(ten pravej) 15. 03. 2016, 16:06:38
a co pridat kernel parametr bootdegraded, nebo upravit v /etc/initramfs-tools/conf.d/mdadm "BOOT_DEGRADED=false" na "BOOT_DEGRADED=true" (a pregenerovat init) ? ;)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: pavlix 15. 03. 2016, 17:37:09
init != initrd/initramfs

Všiml jsem si, že už minimálně dva lidé mají trošku hokej v terminologii.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 15. 03. 2016, 21:07:42
a co pridat kernel parametr bootdegraded, nebo upravit v /etc/initramfs-tools/conf.d/mdadm "BOOT_DEGRADED=false" na "BOOT_DEGRADED=true" (a pregenerovat init) ? ;)

che, to se debilanu musi rikat? to jsem nevedel :)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 16. 03. 2016, 11:20:51
a co pridat kernel parametr bootdegraded, nebo upravit v /etc/initramfs-tools/conf.d/mdadm "BOOT_DEGRADED=false" na "BOOT_DEGRADED=true" (a pregenerovat init) ? ;)

che, to se debilanu musi rikat? to jsem nevedel :)
Nemyslím si že se to musí Debianu říkat. Když jsem odpojil disk sdb tak systém nabootoval v degradovanem režimu.
Teď se mi ale chová stejně jako u sda. Nechápu to.
Soubor /etc/initramfs-tools/conf.d/mdadm mám vytvořit když není?
Začnu instalaci znova, asi už jsem to úplně rozhasil.
Nějaký best practice jak vytvořit RAID 1?
Jak jsem měl, tak je to dobře?
Kód: [Vybrat]
/dev/sda1 250 MB - linux raid
/dev/sda5 1 GB - linux raid
/dev/sda6 20 GB - linux raid

/dev/sdb1 250 MB - linux raid
/dev/sdb5 1 GB - linux raid
/dev/sdb6 20 GB - linux raid

tyto disky pak spojené do raidu vzniknou

Kód: [Vybrat]
/dev/md0 250 MB ext4 /boot
/dev/md1 1 GB swap
/dev/md2 20 GB ext4 /
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 16. 03. 2016, 11:49:31
divny to je  :o

bych si myslel, ze bez  /etc/initramfs-tools/conf.d/mdadm si vezme /etc/mdadm.conf, ale asi by to chtelo vykuchat ten initramfs a podivat se, co tam vlastne je

coz asi nemusis kuchat, staci nastartovat s odpojenym diskem, coz se nepovede a spadne do shellu a v tom shellu kouknout:
1. co je v /etc/mdadm/mdadm.conf nebo podobna cesta
2. co je v /dev/disk/by-uuid/
3. co je v /proc/mdstat, tedy jestli se vubec neco sestavilo

disky jsou rotacni? jestli jo, tak se swap daval prvni, tam je disk o kapku rychlejsi

a misto RAID1 bych na / a swap dal RAID10 --layout=f2, coz dela to, ze mas kazdej sektor porad dvakrat, ale na jinym miste na jednom disku nez na druhym, coz pak znamena, ze nekdy precte rychleji z jednoho disku a jindy z druhyho

na boot bych dal asi RAID1 --metadata=0.9

nebo bych se na RAID v / vyprdnul a dal tam zrcadleni primo v btrfs nebo zfs
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Trubicoid2 16. 03. 2016, 12:32:02
Jeste koukni na toto: https://wiki.debian.org/InitramfsDebug
Mozna ten rootdelay? Divny, ze v nedegradovanym to neni potreba
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 16. 03. 2016, 13:10:01
Jak jsem měl, tak je to dobře?
Kód: [Vybrat]
/dev/sda1 250 MB - linux raid
/dev/sda5 1 GB - linux raid
/dev/sda6 20 GB - linux raid

/dev/sdb1 250 MB - linux raid
/dev/sdb5 1 GB - linux raid
/dev/sdb6 20 GB - linux raid

tyto disky pak spojené do raidu vzniknou

Kód: [Vybrat]
/dev/md0 250 MB ext4 /boot
/dev/md1 1 GB swap
/dev/md2 20 GB ext4 /
To navržení disků pro RAID1 máš dobře. Sám to tak přímo provozuju. Já ale jedu na Gentoo a tam se bude dost věcí lišit (hlavně - nemám initramfs, mám jen jádro, grub.cfg jsem si psal sám apod.)

Poud se nemýlím, jel jsem rámcově podle tohoto návodu (https://forums.gentoo.org/viewtopic-t-71860-start-0.html) z roku 2003 ;D
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 16. 03. 2016, 13:12:39
tak jsem stáhl novější Debian 8.3 netinstall a světe div se, ono se to zase chová jinak.
Tentokrát už po instalaci systém nenaběhne :D
Přikládám pár screenshotů.
Rozdělení disků při instalaci:
(http://kamenikjiri.cz/Debian8.x-2016-03-16-11-45-42.png)
První boot, jsou připojené oba disky, následně výpisy podle trubicoid2:
(http://kamenikjiri.cz/initramfs_20160316_1304.png)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 16. 03. 2016, 13:19:12
Sice Ti to nijak nepomůže, ale tohle je chvíle, kdy jsem rád, že provozuju Gentoo. Tak nějak mi připadá, že ho mám víc pod kontrolou.

Nicméně zpět. Je vidět, že pole je sestavený z sdb disku. Divný ale je, že byl nalezenej i sda, kterej ale neni v RAID aktivní...

Hele, asi bych šel cestou, kterou jsem se vydal já, když jsem to dělal doma na Gentoo. Nabootoval jsem (na fyzickym stroji) instalačku Gentoo a pole si skládal ručně a viděl případný chyby (proč se to nesestaví apod.). Pokud to jde, tak nabootuj nějaký live, nacpi mu tyhle virtuální disky a slož pole pomocí mdadm ručně.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Lol Phirae 16. 03. 2016, 13:34:22
Já nevím, už tady bylo asi 3x linkováno, že s metadata v1.2 grub prostě nefunguje. Možná bych se nad tím konečně zamyslel.  ::)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 16. 03. 2016, 13:35:35
Já nevím, už tady bylo asi 3x linkováno, že s metadata v1.2 grub prostě nefunguje. Možná bych se nad tím konečně zamyslel.  ::)
Bylo to tu řečeno, ale taky jsme tu přímo četli, že s oběma diskama najednou systém z RAID1 najel... Z sda taky najel, problém byl jen s sdb.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 16. 03. 2016, 13:36:53
Já nevím, už tady bylo asi 3x linkováno, že s metadata v1.2 grub prostě nefunguje. Možná bych se nad tím konečně zamyslel.  ::)
Bylo to tu řečeno, ale taky jsme tu přímo četli, že s oběma diskama najednou systém z RAID1 najel... Z sda taky najel, problém byl jen s sdb.
Taky si myslím, navíc nešlo o chybu na /boot, ale na /(root).
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 16. 03. 2016, 14:09:18
tak jsem v té initramfs consoli přes
Kód: [Vybrat]
mdadm /dev/md0 -a /dev/sda1a
Kód: [Vybrat]
mdadm /dev/md1 -a /dev/sda5přidal disky který chyběly a systém už naběhl s tím že md2 je degradovanej a chybí mu disk /dev/sda6

udělal jsem
grub-install /dev/sdb
mezitím co jsem to psal, tak se mi dokončila synchronizace md2.
Zkusil jsem odebrat disk č.1, systém naběhl v degraded s diskem /dev/sda
Potom jsem zkusil odebrat disk č.2, systém naběhl také v degraded stavu, ale také s diskem /dev/sda
Takže tady jsem narazil na VMware kdy disky připojuje na nejbližší volný (virtuální) port (virtuálního) řadiče.
Nebo jestli už se tak inteligentně chová Debian 8.3 oproti 8.2?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Lol Phirae 16. 03. 2016, 14:39:13
Takže tady jsem narazil na VMware kdy disky připojuje na nejbližší volný (virtuální) port (virtuálního) řadiče.
Nebo jestli už se tak inteligentně chová Debian 8.3 oproti 8.2?

http://forum.root.cz/index.php?topic=12926.msg160505#msg160505
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 16. 03. 2016, 14:57:14
Takže tady jsem narazil na VMware kdy disky připojuje na nejbližší volný (virtuální) port (virtuálního) řadiče.
Nebo jestli už se tak inteligentně chová Debian 8.3 oproti 8.2?

http://forum.root.cz/index.php?topic=12926.msg160505#msg160505

snad doma najdu nějaký dva použitelný disky, pak dám vědět ;-)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 16. 03. 2016, 15:07:45
Zkusil jsem odebrat disk č.1, systém naběhl v degraded s diskem /dev/sda
Potom jsem zkusil odebrat disk č.2, systém naběhl také v degraded stavu, ale také s diskem /dev/sda
Takže tady jsem narazil na VMware kdy disky připojuje na nejbližší volný (virtuální) port (virtuálního) řadiče.
Nebo jestli už se tak inteligentně chová Debian 8.3 oproti 8.2?

jo, to je dobre
disky i na fyzicke masine se precisluji, aby zacinaly od sda, proto existuje /dev/disk/by-id, /dev/disk/by-label, /dev/disk/by-partlabel, /dev/disk/by-partuuid a /dev/disk/by-uuid

takze vsechno funguje, jak jsi chtel, ne?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: ByCzech 16. 03. 2016, 15:50:17
a co pridat kernel parametr bootdegraded, nebo upravit v /etc/initramfs-tools/conf.d/mdadm "BOOT_DEGRADED=false" na "BOOT_DEGRADED=true" (a pregenerovat init) ? ;)

che, to se debilanu musi rikat? to jsem nevedel :)

Já to taky nevím a proto mi to na Debianu vždy fungovalo bez toho :-)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 16. 03. 2016, 21:24:54
Zkusil jsem odebrat disk č.1, systém naběhl v degraded s diskem /dev/sda
Potom jsem zkusil odebrat disk č.2, systém naběhl také v degraded stavu, ale také s diskem /dev/sda
Takže tady jsem narazil na VMware kdy disky připojuje na nejbližší volný (virtuální) port (virtuálního) řadiče.
Nebo jestli už se tak inteligentně chová Debian 8.3 oproti 8.2?

jo, to je dobre
disky i na fyzicke masine se precisluji, aby zacinaly od sda, proto existuje /dev/disk/by-id, /dev/disk/by-label, /dev/disk/by-partlabel, /dev/disk/by-partuuid a /dev/disk/by-uuid

takze vsechno funguje, jak jsi chtel, ne?
takže se ten Debian 8.2 choval nestandardně když mi ten disk nepřejmenoval a zůstal tam sdb?
co když mi ale disk sda vypadne za provozu a on si nějakým způsobem bude pamatovat, že vypadl disk sda a po restartu bude připojen disk sdb?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Pavouk106 16. 03. 2016, 21:33:32
takže se ten Debian 8.2 choval nestandardně když mi ten disk nepřejmenoval a zůstal tam sdb?
co když mi ale disk sda vypadne za provozu a on si nějakým způsobem bude pamatovat, že vypadl disk sda a po restartu bude připojen disk sdb?

To právě chce zkusit s fyzickýma diskama. Zkus dva najít a když se nezadaří, možná vyhrabeš doma nějaký USB flash nebo paměťový karty...
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: karlik 16. 03. 2016, 21:44:52
Mělo by to sdb něčemu vadit, když UUID?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: nobody(ten pravej) 17. 03. 2016, 02:03:26
ano, je potreba doplnit znalosti, sdX pouziva clovek, system (grub,initrd,fstab,...) davno misto toho jede pres UUID (http://wiki.ubuntu.cz/uuid)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Trubicoid2 17. 03. 2016, 07:04:29
takže se ten Debian 8.2 choval nestandardně když mi ten disk nepřejmenoval a zůstal tam sdb?
co když mi ale disk sda vypadne za provozu a on si nějakým způsobem bude pamatovat, že vypadl disk sda a po restartu bude připojen disk sdb?

No je to jedno, na sda/sdb se prostě nedá spolehnout.
Jak už tu říkali, problém z toho nebude, taky proto, že na RAID disku jsou zapsaný metadata, který říkají z jakého pole to jaký disk je a kdy se na něj naposledy sahalo. Takže by to nemělo dělat problém.

Problém u mdadm RAID1 je, když disk nevypadne, teda oba jedou, ale neshodnou se v jednom místě. Máš pak víc věřit prvním nebo druhýmu? Když máš raid1 s kontrolou integrity v btrfs nebo zfs, tak se rozhodne pro ten, který splňuje integritu a je to.

Při provozu tu neshodu ani nepoznáš, mdadm RAID1 bude vracet jednou data z prvního a jednou z druhýho disku. Je potřeba udělat check a kouknout na mismatch_cnt. A pak je otrava hledat, v jakým souboru je chyba a ten vzít ze zálohy.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: pavlix 17. 03. 2016, 08:00:01
Nevím čím to bylo, ale před časem jsem slyšel jednoho kolegu vyřvávat na celé patro ohledně lokálního raid, který se rekonstruoval (nevěděl o tom) a po restartu se rekonstruoval opačným směrem a konec.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Lol Phirae 17. 03. 2016, 08:29:15
Nevím čím to bylo, ale před časem jsem slyšel jednoho kolegu vyřvávat na celé patro ohledně lokálního raid, který se rekonstruoval (nevěděl o tom) a po restartu se rekonstruoval opačným směrem a konec.

To bude asi inteligentní RAID autodetect rozdělení disku...
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: pet 17. 03. 2016, 08:31:06
disky i na fyzicke masine se precisluji, aby zacinaly od sda, proto existuje /dev/disk/by-id, /dev/disk/by-label, /dev/disk/by-partlabel, /dev/disk/by-partuuid a /dev/disk/by-uuid

takze vsechno funguje, jak jsi chtel, ne?
takže se ten Debian 8.2 choval nestandardně když mi ten disk nepřejmenoval a zůstal tam sdb?
co když mi ale disk sda vypadne za provozu a on si nějakým způsobem bude pamatovat, že vypadl disk sda a po restartu bude připojen disk sdb?

Protože se disky precislovávají, mám kousek kódu (python2), který najde na kterém portu řadiče (ve kterém šuplíku) je který disk:
Kód: [Vybrat]
class Sys :
    def __init__( self ) :
        self.discs = []
        try:
            for f in os.listdir( '/sys/block/' ) :
                l = os.readlink( '/sys/block/' + f )
                n = l.find( 'target' )
                if n != -1 :
                    self.discs.append( (f, l[n:][len('target')]) )
        except: pass
        # prave vzniklo: self.discs = [('sda', '0'), ('sdb', '1'), ('sr0', '4')]

    def get( self, disc ) :
        for d, n in self.discs :
            if disc.find( d ) == 0 :
                return n  # n je char
        return None
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 17. 03. 2016, 08:34:07
no to by se mohlo stat tim, ze se z nejakeho duvodu sahne na spatnej disk pozdeji a pak se spatnej okopiruje na dobrej, protoze si md mysli, ze novejsi je lepsi

to automaticky sestavovani md pokazde, kdyz se to nehodi, tomu opravdu nepomaha

mozna by pomohlo nenastavovat particim fd
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: trubicoid2 17. 03. 2016, 08:36:48

Protože se disky precislovávají, mám kousek kódu (python2), který najde na kterém portu řadiče (ve kterém šuplíku) je který disk:

anebo proste
Kód: [Vybrat]
lsscsi
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 02. 08. 2016, 09:03:08
Znovu oteviram toto  tema, protoze se mi objevil dalsi problem a to, instalovat podle vyse uvedeneho rozlozeni disku na disky o velikosti vetsi nez 2 TB (konkretne 3 TB). Bohuzel uz pri instalaci, pri instalaci zavadece grub, mi to napise fatal error. viz screenshoot.
Zkousel jsem instalovat grub na /dev/sda,b i /dev/md0. md0 je pripojeno jako /boot, formatovat jsem zkousel na ext4 i ext2.
Rozlozeni:
(http://kamenikjiri.cz/rozlozeni.png)
Chyba:
(http://kamenikjiri.cz/chyba.png)
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Lol Phirae 02. 08. 2016, 09:38:52
Znovu oteviram toto  tema, protoze se mi objevil dalsi problem a to, instalovat podle vyse uvedeneho rozlozeni disku na disky o velikosti vetsi nez 2 TB (konkretne 3 TB). Bohuzel uz pri instalaci, pri instalaci zavadece grub, mi to napise fatal error. viz screenshoot.

A to má bootovat jak? Pokud přes EFI, tak je rozložení disku špatně, a pokud přes MBR, tak je taky špatně (chybí nenaformátovaný bios_grub oddíl).
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: zaba v mixeru 02. 08. 2016, 09:51:00
A ty disky jsou GPT nebo MBR?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 02. 08. 2016, 10:11:57
Na fyzickym stroji predpokladam ze uz bude EFI, osobne jsem ho nevidel. Ve VMware Fusion nevim kde zapnout/vypnout EFI, predpokladam ze je zapnuto.
Jak to ma vypadat pro EFI?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 02. 08. 2016, 10:20:34
A ty disky jsou GPT nebo MBR?
Disky jsou GPT
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 03. 08. 2016, 08:40:19
docetl jsem se na netu, ze softwarovej raid 1 neni v UEFI podporovanej, takze jsem z toho odvodil ze rozdeleni disku bude nasledujici
na obou fyzickych sda a sdb:
(http://kamenikjiri.cz/rozdeleni_uefi.png)
ESP = EFI System Partition
potom bych ty vsechny oddily spojil do jednotlivejch raidů.
ALE prvni oddil ESP bych nechal na obou discich?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: naseptavac 03. 08. 2016, 11:00:45
Ja bych si pro instalaci linux guesta uefi nezapnul jeste minimalne nekolik let. Jake to ma v tomto pripade vyhody?
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: Ston3 03. 08. 2016, 12:43:35
tak jsem vypnul UEFI, rozlozeni mam takove:
(http://kamenikjiri.cz/rozlozeni-grub-bios.png)
nebo nevim jak mam udelat to bios_grub a taky jak ho dostat na druhej disk...

po nainstalovani a prvnim bootu mi to ale bohuzel hodilo chybu ze nemuze najit md:
(http://kamenikjiri.cz/grub-chyba.png)

Vypada to ze jsem zase na zacatku, jen s tim rozdilem, ze je tohle 3 TB disk, takze musi byt GPT.
Taky mi to nehodilo initramfs consoli - protoze mam pripojene oba dva disky.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: naseptavac 04. 08. 2016, 01:03:23
Myslel jsem to tak, ze se pak da pro system vyclenit normalne velky mbr disk(y) a ten obrovity gpt mit na data. Ja bohuzel nepouzivam ani debian ani VMware, takze nemohu prispet nicim konkretnim, ale ocekaval bych, ze u mensich disku vse bude zajete a odzkousene.
Název: Re:GRUB 2 nebootuje z degradovaného RAID 1
Přispěvatel: e3k 04. 08. 2016, 22:08:08
bud si vytiaho nespravny disk alebo funkcny disk nema zavadzac a mozes ho doinstalovat cez rescuecd.
E