abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:22 | Upozornění

    Společnosti Ticketmaster byla odcizena databáze s osobními údaji (jméno, adresa, telefonní číslo a část platebních údajů) 560 miliónů zákazníku. Za odcizením stojí skupina ShinyHunters a za nezveřejnění této databáze požaduje 500 tisíc dolarů [BBC].

    Ladislav Hagara | Komentářů: 0
    31.5. 23:55 | Nová verze

    Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

    Ladislav Hagara | Komentářů: 0
    31.5. 17:33 | Nová verze

    Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.

    Ladislav Hagara | Komentářů: 25
    31.5. 17:11 | Komunita

    Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.

    Ladislav Hagara | Komentářů: 3
    31.5. 12:55 | Nová verze

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 24.05.0 editoru videa Kdenlive (Wikipedie). Ke stažení brzy také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    31.5. 11:22 | Zajímavý článek

    David Revoy, autor mj. komiksu Pepper&Carrot, se rozepsal o své aktuální grafické pracovní stanici: Debian 12 Bookworm, okenní systém X11, KDE Plasma 5.27, …

    Ladislav Hagara | Komentářů: 9
    30.5. 22:44 | Nová verze

    Wayland (Wikipedie) byl vydán ve verzi 1.23.0. Z novinek lze vypíchnout podporu OpenBSD.

    Ladislav Hagara | Komentářů: 0
    30.5. 21:22 | Zajímavý článek

    Craig Loewen na blogu Microsoftu představil novinky ve Windows Subsystému pro Linux (WSL). Vypíchnout lze GUI aplikaci pro nastavování WSL nebo správu WSL z Dev Home.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:44 | Pozvánky

    V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:22 | Nová verze

    Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 17
    Rozcestník

    Jak jsem si naběhl s Linux MD RAID a LVM

    28.11.2008 09:18 | Přečteno: 3284× | Praxe | Výběrový blog

    Ne, nechci si stěžovat na Linux, MD RAID nebo LVM . Berte tenhle článek jako terapii na svou ... řekněme schopnost přehlédnout zjevné a taky jako návod jak věci nedělat.

    Včera jsem si totiž zařídil adrenalinové odpoledne. Vezmu to popořadě.

    Do serveru s touto konfigurací disků:

    ### Partitions
    # sfdisk -l /dev/sd[abc]
    
    Disk /dev/sda: 9039 cylinders, 255 heads, 63 sectors/track
    Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
    
       Device Boot Start     End   #cyls    #blocks   Id  System
    /dev/sda1   *      0+     24      25-    200781   fd  Linux raid autodetect
    /dev/sda2         25    9038    9014   72404955   fd  Linux raid autodetect
    /dev/sda3          0       -       0          0    0  Empty
    /dev/sda4          0       -       0          0    0  Empty
    
    Disk /dev/sdb: 9039 cylinders, 255 heads, 63 sectors/track
    Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
    
       Device Boot Start     End   #cyls    #blocks   Id  System
    /dev/sdb1   *      0+     24      25-    200781   fd  Linux raid autodetect
    /dev/sdb2         25    9038    9014   72404955   fd  Linux raid autodetect
    /dev/sdb3          0       -       0          0    0  Empty
    /dev/sdb4          0       -       0          0    0  Empty
    
    Disk /dev/sdc: 9039 cylinders, 255 heads, 63 sectors/track
    Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
    
       Device Boot Start     End   #cyls    #blocks   Id  System
    /dev/sdc1   *      0+     24      25-    200781   fd  Linux raid autodetect
    /dev/sdc2         25    9038    9014   72404955   fd  Linux raid autodetect
    /dev/sdc3          0       -       0          0    0  Empty
    /dev/sdc4          0       -       0          0    0  Empty
    
    
    ### MD RAID
    
    # cat /proc/mdstat    
    Personalities : [raid1] [raid5] 
    md1 : active raid5 sdc2[2] sdb2[1] sda2[0]
          144809472 blocks level 5, 256k chunk, algorithm 2 [3/3] [UUU]
          
    md0 : active raid1 sdc1[2] sdb1[1] sda1[0]
          200704 blocks [3/3] [UUU]
          
    unused devices: none
    
    ### LVM
    # pvs                 
      PV         VG     Fmt  Attr PSize   PFree
      /dev/md1   vg_md0 lvm2 a-   138.09G    0
    
    # vgdisplay 
      --- Volume group ---
      VG Name               vg_md0
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  11
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                8
      Open LV               8
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               138.09 GB
      PE Size               32.00 MB
      Total PE              4419
      Alloc PE / Size       4419 / 138.09 GB
      Free  PE / Size       0 / 0   
      VG UUID               SheYak-jYvW-zW3D-s5Lr-1P4P-5B3c-8Penzj
       
    # lvs
      LV        VG     Attr   LSize  Origin Snap%  Move Log Copy% 
      lv_backup vg_md0 -wi-ao 31.12G                              
      lv_data   vg_md0 -wi-ao 30.00G                              
      lv_home   vg_md0 -wi-ao 30.00G                              
      lv_root   vg_md0 -wi-ao  4.91G                              
      lv_swap   vg_md0 -wi-ao  5.88G                              
      lv_tmp    vg_md0 -wi-ao  1.97G                              
      lv_usr    vg_md0 -wi-ao  4.91G                              
      lv_var    vg_md0 -wi-ao 29.31G    
    
    

    jsem potřeboval přidat další tři disky (po 500G). Na lv_data prostě docházelo místo a na ostatních to nebylo jinak. Server jsem haltnul, přidal jsem disky a nabootoval.

    Následující postup byl:

    ### vytvoření MD RAID
    # mdadm -C /dev/md2 -l 5 -n 3 /dev/sd[def]
    
    # cat /proc/mdstat 
    Personalities : [raid1] [raid5] 
    md2 : active raid5 sdd[0] sdf[2] sde[1]
          976772992 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
          
    md1 : active raid5 sdc2[2] sdb2[1] sda2[0]
          144809472 blocks level 5, 256k chunk, algorithm 2 [3/3] [UUU]
          
    md0 : active raid1 sdc1[2] sdb1[1] sda1[0]
          200704 blocks [3/3] [UUU]
          
    unused devices: none
    
    # pvcreate /dev/md2
      Physical volume "/dev/md2" successfully created
    
    # vgextend vg_md0 /dev/md2
      Volume group "vg_md0" successfully extended
    
    # vgdisplay vg_m0
      --- Volume group ---
      VG Name               vg_md0
      System ID             
      Format                lvm2
      Metadata Areas        2
      Metadata Sequence No  12
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                8
      Open LV               8
      Max PV                0
      Cur PV                2
      Act PV                2
      VG Size               1.04 TB
      PE Size               32.00 MB
      Total PE              34227
      Alloc PE / Size       4419 / 138.09 GB
      Free  PE / Size       29808 / 931.50 GB
      VG UUID               SheYak-jYvW-zW3D-s5Lr-1P4P-5B3c-8Penzj
       
    

    Všechno šlo jako nadrátku, takže můžu začít zvětšovat LVM logické svazky. No radši rebootuji abych měl jistotu, že je vše v pořádku.

    A ouha ... Kernel panic : Can not mount root filesystem.

    V čem je chyba?

    Kdo to najde první tomu pošlu virtuálního panáka ...

    V pokračování popíšu proč se to stalo a jak se tomu vyhnout při instalaci nových serverů.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    28.11.2008 10:33 Honza Jaroš | skóre: 6 | blog: moje_strana_plotu | Bohnice
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    Že by to fakt na holém disku bez partition typu fd nejelo...?

    28.11.2008 13:14 CET
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM
    Taky mi to tak pripada. A zaroven tak trosku to nakousnul petr_p.

    Kdyz se RAID startuje z jadra, tak linux hleda oddily fd(autoraid). Protoze tak jsou nastaveni partisny na sd[abc], tak to tak vypada, ze se to pouziva. Tady je teda zrejme chyba v tom, ze ty disky sd[def] linux nepoznal jako raid a nevytvoril z toho ten /dev/md2.

    Pokud by se to nahazovalo z initrd pomoci mdadm, tak jsem nezaznamenal aktualizaci configu /etc/mdadm.conf v initrd.

    Co presne mysli petr_p tim initramfs, to nechapu.

    V obou prvnich pripadech se ale nenahodil /dev/md2, a protoze chybel PV ve VG, tak se nenahodil ani VolumeGroup a cili nejsou ani logicky disky.

    Protoze se jeste LV nezvetsily, IMHO by mohlo stacit odebrat PV /dev/md2 z VG a melo by to pri dalsim rebootu nabehnout. Pripadne bootnout nejakej LiveCD, nahodit /dev/md2 a VG rucne a vyresit to.
    11.4.2009 18:07 kamiln
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    Dekuji, ze jste mi to objasnil, kdyz uz to autor neudelal. Mel jsem podobny problem a pomoci vasi rady aktualizovat initrd se mi podarilo ho vyresit.

    28.11.2008 10:54 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    Dedukuji, že rootfs je na /dev/md0. Pak ale chybí zásadní informace, jestli se používá jaderná autodetekce raidu (jedna zastaralá a nedoporučovaná věc), nebo jestli se to staví ručně přes initrd (další zastaralá nedoporučovaná věc) nebo přes initramfs (jediná správné řešení), a v druhém/třetím případě, jak vypadají startovací skripty (které disky jsou zapojeny do scanu, jestli se pole identifikuje pres UUID atd.).

    A ještě tu může být trapná chyba se zpřeházenými názvy disků, kdy jste si přepsal běžící systém.

    28.11.2008 11:28 prOm3TheuS | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    Co je na jaderné autodetekci raidu špatného? Docela by mně to zajímalo - rád se přiučím něčemu novému. Initrd je dneska už opravdu staré a initramfs používám pouze v případě, kdy není schopen kernel získat informace o raidu právě tou autodetekci.

    28.11.2008 13:05 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    RAID Boot - Linux-raid:

    This approach can cause problems in several situations (imagine moving part of an old array onto another machine before wiping and repurposing it: reboot and watch in horror as the piece of dead array gets assembled as part of the running RAID array, ruining it); kernel autodetect is correspondingly deprecated.

    Pak jsem ještě něco zahlédnul v jaderné dokumentaci.

    28.11.2008 13:14 CET
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM
    Co presne myslis rozdilem mezi initrd a initramfs?
    28.11.2008 14:26 prOm3TheuS | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM
    Co já vím, tak initramfs je soubor utvořený jako blokové zařízení (prostě image virtuálního disku), namísto initramfs je vlastně zabalený cpio archiv, který se při bootu rozbaluje do paměti tmpfs. S initramfs se pak dají dělat docela pěkná kouzla, jako že se třeba automaticky při kompilaci jádra do něj zaintegruje. Jádro má pak třeba 10 MB, ale už se pak neumsí dávat do zavaděče položka initrd. Navíc initramfs je vlastně dokonalejším nástupcem initrd a tak se dá initrd považovat za zastaralý.
    28.11.2008 14:29 prOm3TheuS | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM
    Jsem přesně čekal, že se do toho zamotám, hned z prvu má být "co já vím, tak initrd je soubor..."
    28.11.2008 16:03 CET
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    no, z grubu se oboje nahrava jako initrd - jestli se da zaintegrovat initramfs do jadra, pak je to docela dobra featurka, nadruhou stranu se mi zda docela lepsi, ze pouze pregeneruju initrd image (at uz je to image na loopu nebo cpio), ale nemusim menit kernel. Oboje je ale nejaky maly system, ktery nastartuje zakladni veci a pak spusti hlavni init na pripojenem skutecnem root device. Takze si nejsem jistej, jaky by byl rozdil nahazovani RAID z initrd nebo z initramfs. V obojim by se to startoval zrejme pomoci mdadm a pak se nahodi VG a LV, pripoji a privot_rootem spusti system, nebo ne?

    28.11.2008 16:38 prOm3TheuS | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM
    Naprosto žádnej. Uvnitř to funguje úplně stejně akorát rozdíl jse v tom, jestli je to image a nebo cpio archiv. Jedinej rozdíl je v tom, že do kódu initrd už nikdy nikdo nehrábne a vyvíjet se bude pouze initramfs. Je tam ještě jeden limit a to, že u initrd je limit snad 4 nebo 5 MB. U initramfs je tím limitem velikost RAMky.
    28.11.2008 18:24 CET
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    No, ja mel na mysli prave ten rozdil pri spousteni. A ten neni zadnej. Proste se nahraje do pameti, pripravi, spusti linuxrc, pripravi root system, prepne do nej a spusti init. At v initrd nebo v initramfs.

    28.11.2008 22:27 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    Mezi initrd a initramfs je výrazný rozdíl z hlediska toho, jak je to uděláno v jádře. V podstatě initramfs je integrální částí jádra a i když jej vědomě nepoužíváte, tak tam stále je (reliktem je záznam /dev/rootfs v /proc/mounts). Initramfs se nekopíruje dva krát (rychlejší boot), nespouští se z něj /linuxrc, ale /sbin/init, změna rootfs se už neprovádí přes chroot+pivot_root, ale přes switchroot (v podstatě smazání obsahu initramfs, chroot a exec těžkého /sbin/init), initramfs už nelze odmountovat.

    Z hlediska správy je výhoda, že je to součástí obrazu jádra, takže řešíte jediný soubor. Taktéž výroba tohoto cpio archivu je v režii přímo kompilačního skriptu jádra, takže stačí make v /usr/src/linux a je to. Tím že se to vyrábí spolu s jádrem, tak máte jistotu, že se vám nebudou bít různé verze udevu busyboxu aj. s jaderným API.

    Přečtete si k tomu jadernou dokumentaci k initramfs (je to tam pěkně popsáno).

    Z hlediska sestavování diskového pole ten rozdíl proti initrd není. To jsem chtěl jen autora popíchnout, aby přestal používat zastaralé postupy.

    Josef Kufner avatar 28.11.2008 17:14 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM
    No ono jestli přebalit archiv nebo znovu slinkovat jadro mi už moc veliký rozdíl nepřijde. Možná to druhé bude trvat o nějakou tu sekundu víc. Ale mít to slinkované dohromady může být obrovskou výhodou při bootování ze sítě nebo při bootování z nějakých obskurních zařízení. Na druhou stranu, pro zabalení archivu není potřeba mít na disku rozkompilované zdrojáky...
    Hello world ! Segmentation fault (core dumped)
    28.11.2008 18:22 CET
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    Pro me je o hodne jednodussi

    zcat ../initrd | cpio -i
    ## make changes here
    find | cpio -o | gzip > ../initrd
    
    3.1.2009 12:34 kamiln
    Rozbalit Rozbalit vše Re: Jak jsem si naběhl s Linux MD RAID a LVM

    To by mě opravdu zajímalo, proč k tomu došlo. Kdy se dočkáme toho slíbeného pokračování?

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.