Fórum Root.cz
Hlavní témata => Server => Téma založeno: 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ě...
-
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?
-
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.
-
RAID 1 GRUB 2 \?\?\? 3
zeby ti vmware nebootoval z dalsieho disku (sdb)...?
-
me vmware na linuxu prestal jet uplne, takze to nezkusim. ale urcite je lepsi se zeptat primo na forech vmware, celkem funguji
-
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?
-
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 grub-install /dev/sdb
-
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... :-)
-
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
-
metadata jsou v.1.2
uuid ktere to nemuze najit je zarizeni md2 ktere ma byt pripojene jako / (root)
-
Ještě přidávám obrázek, to nahoře je
ls -la /dev/disk/by-uuid/(http://kamenikjiri.cz/Debian8.x-2016-03-15-11-22-24.png)
-
ještě výpis grub.cfg
už to není obrázek, debugoval jsem síť ve vmware a už mi jede SSH :-)
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 ###
-
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
setparams blablabla {
nějakej disk
nějaký jádro
}
-
Dám sem i textovej výpis, pro lepší hledání.
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
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>
-
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
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/
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
-
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?)
-
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
-
pole ma slozit initramfs, ne? mas to v /etc/mdadm.conf ? a pregenerovat initramfs
-
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.
-
..zda filesystém na raid0...
Oprava - samozřejmě má být raid1
-
v /etc/mdadm/mdadm.conf mám
# 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
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:c3aa183ftakže v pořádku.
udělal jsem:
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ěco nám pořád chybí...
CO se stane, když vyřadíš namísto sda disk sdb? Stejná chyba?
-
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
-
A v neposlední řadě: co se stane, když se vysereš na vmware a prostě to uděláš na normálním fyzickém stroji.
-
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).
-
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í:
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:
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
}
-
...
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.
-
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) ? ;)
-
init != initrd/initramfs
Všiml jsem si, že už minimálně dva lidé mají trošku hokej v terminologii.
-
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 :)
-
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?
/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 /
-
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
-
Jeste koukni na toto: https://wiki.debian.org/InitramfsDebug
Mozna ten rootdelay? Divny, ze v nedegradovanym to neni potreba
-
Jak jsem měl, tak je to dobře?
/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 /
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
-
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)
-
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ě.
-
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. ::)
-
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.
-
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).
-
tak jsem v té initramfs consoli přes
mdadm /dev/md0 -a /dev/sda1a
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?
-
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
-
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 ;-)
-
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?
-
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 :-)
-
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?
-
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...
-
Mělo by to sdb něčemu vadit, když UUID?
-
ano, je potreba doplnit znalosti, sdX pouziva clovek, system (grub,initrd,fstab,...) davno misto toho jede pres UUID (http://wiki.ubuntu.cz/uuid)
-
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.
-
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.
-
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...
-
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:
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
-
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
-
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 lsscsi
-
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)
-
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).
-
A ty disky jsou GPT nebo MBR?
-
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?
-
A ty disky jsou GPT nebo MBR?
Disky jsou GPT
-
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?
-
Ja bych si pro instalaci linux guesta uefi nezapnul jeste minimalne nekolik let. Jake to ma v tomto pripade vyhody?
-
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.
-
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.
-
bud si vytiaho nespravny disk alebo funkcny disk nema zavadzac a mozes ho doinstalovat cez rescuecd.
E