Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Deutsches Forum (German)
  • Search

Update mdadm/RAID - Devices von md[0,1,2] auf [125,126,127]

Support-Forum
Diskussionen rund um Installation, Betrieb und Anpassungen von Gentoo und dessen Paketen sowie dabei auftretenden (technischen) Problemen.
Deutsches Portal: www.gentoo.de
Post Reply
  • Print view
Advanced search
11 posts • Page 1 of 1
Author
Message
KaterGonzo
Apprentice
Apprentice
Posts: 155
Joined: Thu Apr 01, 2004 7:51 am

Update mdadm/RAID - Devices von md[0,1,2] auf [125,126,127]

  • Quote

Post by KaterGonzo » Mon Dec 06, 2010 2:55 pm

Servus liebe Community,

folgendes Problem mit meinem Home-Server: mdadm steuert die Raid-Devices nicht mehr als /dev/md[0,1,2], sondern willkürlich als /dev/md[125,126,127] an, was das System unbootable macht.

Ich fange erst einmal mit ein paar allgemeinen Informationen an:

Kernel-Version: 2.6.34-gentoo-r6
mdadm-Version: mdadm-3.0
Software-Raid: Raid-1 (spiegeln)

Vorgeschichte
Vor langer Zeit habe ich das Software-Raid mit diesem Befehl angelegt:

Code: Select all

mdadm -C /dev/md0 -l 1 -n 2 /dev/sda1 /dev/sda2
mdadm -C /dev/md1 -l 1 -n 2  /dev/sda2 /dev/sda2
mdadm -C /dev/md2 -l 1 -n 2  /dev/sda3 /dev/sda3
Hier die daraus resultierende /etc/mdadm.conf:

Code: Select all

ARRAY /dev/md0 level=raid1 num-devices=2 metadata=0.90 UUID=cb28a94e:40d93554:4fc4e4ff:e7b86def
ARRAY /dev/md1 level=raid1 num-devices=2 metadata=0.90 UUID=860e225c:1d59d285:9224bc57:2ab24b23
ARRAY /dev/md2 level=raid1 num-devices=2 metadata=0.90 UUID=f93c01cd:70d9be28:a740eabd:3d89ce85
Ich habe regelmäßig world und system geupdatet, aber das System seit längerem nicht neugestartet (d.h. packages auf dem aktuellsten Stand, Kernel nicht). Nachdem die Kiste neugestartet wurde, stellte sich heraus, dass udev nicht mit dem alten Kernel läuft, so dass ich mit ner Gentoo-Live-CD den Kernel aktualisiert habe.

Problem: RAID-Devices werden willkürlich benannt
Neuer Kernel funktioniert, nur waren die Raid-Devices md[0,1,2] auf einmal als als 125,126,127 in der Live-CD angegeben! Ist zwar nicht toll, wenn sich die Namen ändern, aber ich habe die Devices brav in der grub.conf und fstab angepasst. Das Problem: die Devices /dev/md125, /dev/md126, /dev/md127 wechselten nach jedem Neustart!

Tja, danach habe ich wirklich aufgrund meiner Zeitnot probiert, probiert und probiert, wo ich sehr wahrscheinlich auch einige Fehler gemacht habe. Irgendwann habe ich sogar die zweite Festplatte vom System getrennt, um im Falle eines Totalausfalls zumindest ein Backup zu haben.

Der aktuelle Stand
Irgendwie habe ich die Kiste wieder zum Laufen gebracht (ohne wechselnden RAID-Devices). Was mich wundert ist, dass die RAID-Devices auf dem Echtsystem anders angesprochen werden als bei der GENTOO LIVE-CD:

Code: Select all

# ls -l /dev/md*
brw-rw---- 1 root disk 9,   0 Dec  3 14:46 /dev/md0
brw-rw---- 1 root disk 9,   1 Dec  3 14:46 /dev/md1
brw-rw---- 1 root disk 9, 126 Dec  3 14:46 /dev/md126
brw-rw---- 1 root disk 9, 127 Dec  3 14:46 /dev/md127

/dev/md:
total 0
lrwxrwxrwx 1 root root 8 Dec  3 14:46 126_0 -> ../md126
lrwxrwxrwx 1 root root 8 Dec  3 14:46 127_0 -> ../md127
lrwxrwxrwx 1 root root 6 Dec  3 14:46 1_0 -> ../md1
Verstehe ich nicht, aber die Bezeichnungen bleiben konstant, so dass das System wieder problemlos bootet.

Leider fehlt dem Vogel ein Flügel zur Zeit:

Code: Select all

 # cat /proc/mdstat 
Personalities : [raid1] 
md126 : active raid1 sda1[0]
      104320 blocks [2/1] [U_]
      
md1 : active raid1 sda2[0]
      1003968 blocks [2/1] [U_]
      
md127 : active raid1 sda3[0]
      77039616 blocks [2/1] [U_]
      
unused devices: <none>
Meine Fragen

1.) Warum wurden die Devices umbenannt und wie kann ich aus dem laufenden Betrieb die Bezeichnung "fix machen". Ich habe noch ein weiteres System welches ebenfalls aktualisiert werden müsste. Würde mir hier das Theater gerne ersparen.
2.) Wie kann ich die fehlende HDD hinzufügen, ohne das es Probleme gibt. Ich darf hier keinen Fehler machen, ansonsten ist das System futsch.
Last edited by KaterGonzo on Wed Dec 08, 2010 7:01 pm, edited 1 time in total.
Top
r3tep
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 108
Joined: Sat Sep 10, 2005 2:28 pm
Contact:
Contact r3tep
Website

  • Quote

Post by r3tep » Mon Dec 06, 2010 3:54 pm

Ich habe vor einiger Zeit aus einem anderem Grund (SATA-DVD-Brenner eingebaut) von den absoluten Geräten (/dev/md1, /dev/sda ...) auf diese umgestellt:

fstab:

Code: Select all

/dev/disk/by-id/md-uuid-1ab16093:f8ba3b9c:5f642827:99c02b6d etc.
mdadm.conf

Code: Select all

ARRAY /dev/md1 metadata=0.90 UUID=1ab16093:f8ba3b9c:5f642827:99c02b6d
DEVICE /dev/disk/by-id/ata-ST3500412AS_6VV2LENC-part1 /dev/disk/by-id/ata-ST3500412AS_6VV2M0BD-part1

Da Du eine Platte Deines RAID1 entfernt hast, müssen die Platten ohnehin synchronisiert werden.

Wie bei allen anderen Arbeiten an Festplatten solltest Du natürlich ein Backup parat haben.
Top
KaterGonzo
Apprentice
Apprentice
Posts: 155
Joined: Thu Apr 01, 2004 7:51 am

  • Quote

Post by KaterGonzo » Mon Dec 06, 2010 4:11 pm

Ist die UUID (ok, der name sagt es eigentlich schon aus) eindeutig und ändert ich NIE?

1. FRAGE: Was müsste in meinem Beispiel in die /etc/fstab, was in die grub.conf eingetragen werden?

Code: Select all

# mdadm --detail /dev/md127
/dev/md127:
        Version : 0.90
  Creation Time : Wed Sep  5 08:36:21 2007
     Raid Level : raid1
     Array Size : 77039616 (73.47 GiB 78.89 GB)
  Used Dev Size : 77039616 (73.47 GiB 78.89 GB)
   Raid Devices : 2
  Total Devices : 1
Preferred Minor : 127
    Persistence : Superblock is persistent

    Update Time : Mon Dec  6 17:09:12 2010
          State : clean, degraded
 Active Devices : 1
Working Devices : 1
 Failed Devices : 0
  Spare Devices : 0

           UUID : 860e225c:1d59d285:9224bc57:2ab24b23
         Events : 0.40474146

    Number   Major   Minor   RaidDevice State
       0       8        3        0      active sync   /dev/sda3
       1       0        0        1      removed
2. FRAGE: Erkennt mdadm ausschließlich anhand des superblocks, welche Platten zu welchem RAID gehört?

Code: Select all

# mdadm -E /dev/sda3
/dev/sda3:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 860e225c:1d59d285:9224bc57:2ab24b23 <--------------- !!!!!!!!!!!!!!
  Creation Time : Wed Sep  5 08:36:21 2007
     Raid Level : raid1
  Used Dev Size : 77039616 (73.47 GiB 78.89 GB)
     Array Size : 77039616 (73.47 GiB 78.89 GB)
   Raid Devices : 2
  Total Devices : 1
Preferred Minor : 127

    Update Time : Mon Dec  6 18:29:42 2010
          State : clean
 Active Devices : 1
Working Devices : 1
 Failed Devices : 1
  Spare Devices : 0
       Checksum : a6b08bd2 - correct
         Events : 40478144


      Number   Major   Minor   RaidDevice State
this     0       8        3        0      active sync   /dev/sda3

   0     0       8        3        0      active sync   /dev/sda3
   1     1       0        0        1      faulty removed
3. FRAGE: Warum wurde nach dem Update die mdadm.conf ignoriert?
Wenn Frage 2 mit Ja beantwortet: Die UUIDs passen auch mit dem Einträgen im Superblock(?) überein. Oder hält mdadm an einer anderen Stelle die konfiguration vor?

Code: Select all

## AUSZUG mdadm.conf

ARRAY /dev/md0 level=raid1 num-devices=2 metadata=0.90 UUID=cb28a94e:40d93554:4fc4e4ff:e7b86def
ARRAY /dev/md1 level=raid1 num-devices=2 metadata=0.90 UUID=860e225c:1d59d285:9224bc57:2ab24b23
ARRAY /dev/md2 level=raid1 num-devices=2 metadata=0.90 UUID=f93c01cd:70d9be28:a740eabd:3d89ce85
Top
r3tep
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 108
Joined: Sat Sep 10, 2005 2:28 pm
Contact:
Contact r3tep
Website

  • Quote

Post by r3tep » Tue Dec 07, 2010 12:00 pm

Der UUID ist eindeutig, Software- oder Bedienungsfehler sind natürlich nicht ausgeschlossen.

1.:

In der fstab steht bei mir:

Code: Select all

# <fs>                  <mountpoint>    <type>          <opts>          <dump/pass>

/dev/sda1               /boot           auto            noatime         1 2
/dev/sda3               /                  ext3            noatime         0 1
/dev/sda2               none            swap            sw              0 0

#/dev/md1               /mnt/newhome    auto    rw,noatime,noauto       0 0
/dev/disk/by-id/md-uuid-1ab16093:f8ba3b9c:5f642827:99c02b6d     /home   auto    rw,noatime      0 2
Der UUID ersetzt bei mir einfach den Gerätenamen:

Code: Select all

ls /dev/disk/by-id/md-uuid-1ab16093:f8ba3b9c:5f642827:99c02b6d -l
lrwxrwxrwx 1 root root 9  7. Dez 12:08 /dev/disk/by-id/md-uuid-1ab16093:f8ba3b9c:5f642827:99c02b6d -> ../../md1
GRUB hat seine eigene Art und Weise die Geräte zu beschreiben. Da Du anscheinend von dem Array bootest, sollte der bisherige Eintrag weiterhin funktionieren.


2.:

Die Zuweisung von Platten zu Arrays wird bei jedem Systemstart nach Bedarf festgelegt. Bei mir hat ein neu eingebauter DVD-Brenner (jetzt sdc) das Array (sdc + sdd) verschoben (sdd +sde). Daher benutze ich jetzt die eindeutige Zuweisung.

Dazu kommt, dass die Erkennung auch durch die Kernelkonfiguration beeinflusst werden kann. Genaueres weiß ich jetzt aber auf Anhieb nicht auswendig.

Später folgt evtl. noch eine Ergänzung.
Top
KaterGonzo
Apprentice
Apprentice
Posts: 155
Joined: Thu Apr 01, 2004 7:51 am

  • Quote

Post by KaterGonzo » Tue Dec 07, 2010 1:27 pm

r3tep wrote: Da Du anscheinend von dem Array bootest, sollte der bisherige Eintrag weiterhin funktionieren.
Naja, wenn Du meine Story gelesen hast: die Devices haben sich ja geändert. Daher meine Frage, ob man die UUID auch in grub.conf eintragen kann. Ich habe mal anhand dieses Artikels die UUID in der grub.conf angegeben: https://forums.gentoo.org/viewtopic-t-7 ... art-0.html

Leider ohne Erfolg (man braucht dafür initramfs image), das habe und will ich nicht.
You have to have an initramfs (initrd) image, that was built by genkernel, loaded in order to get this support. The kernel itself does not, (and won't according to the kernel devs), support this syntax.
Warum und wer verändert denn die Devices. Bei mir siehts echt durcheinander aus:

Code: Select all

# ls -n /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 37e82044-18ef-48de-a48b-7444d23cffc5 -> ../../md127
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 ff448824-764f-4097-84f9-2971ded3ab01 -> ../../md126

# ls -n /dev/disk/by-id/
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 md-uuid-860e225c:1d59d285:9224bc57:2ab24b23 -> ../../md127
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 md-uuid-cb28a94e:40d93554:4fc4e4ff:e7b86def -> ../../md126
lrwxrwxrwx 1 0 0  9 Dec  3 14:46 md-uuid-f93c01cd:70d9be28:a740eabd:3d89ce85 -> ../../md1
Kann es sein, dass die LIVE-CD in irgendeiner Form die Superblocks der Partitionen geändert hat? Der Inhalt in /dev/disk/by-uuid/ und /dev/disk/by-id/ unterscheidet sich nicht nur in der Menge, sondern die UUIDs sind völlig unterschiedlich. Das was in /dev/disk/by-id/ steht, stimmt mit den Werten überein, was mdadm anzeigt.
Top
Max Steel
Advocate
Advocate
User avatar
Posts: 2324
Joined: Mon Feb 12, 2007 6:35 pm
Location: My own world! I and Gentoo!

  • Quote

Post by Max Steel » Tue Dec 07, 2010 4:45 pm

Gebe statt diesem root=UUID=foo-bar-123-456 welches wie du richtig erkannt hast durch eine initrd erst umgesetzt werden muss,
Lieber den kompletten Pfad an, also root=/dev/disk/by-uuid/foo-bar-123-456.

Davon abgesehen verwendet mein Vater lieber die Zuweißung per ID
also /dev/disk/by-id/ata-MAXTOR_STM3320620A_9QF31Y34-part1 (als Bsp.)
Denn anders als die UUID die sich mit jeder formatierung ändern können, kann sich die ID nicht ändern, da sie die Seriennummer der Festplatte sowie die Partitionierung "enthält".

Analog gibt es für die dm-Geschichten:
/dev/disk/by-id/dm-name-vg0-distfiles

(Ist hier ein lvm2)
mfg
Steel
___________________

Heim-PC: AMD Ryzen 9 5950X, 64GB RAM, RX 9070 XT
Laptop: AMD Ryzen 5 7640U, 32GB RAM, Radeon onCPU Graphics
Arbeit-PC: AMD Ryzen 3 Pro 7335U, 16GB RAM, AMD Radeon Graphics (leider WSL2)
Top
firefly
Watchman
Watchman
Posts: 5385
Joined: Thu Oct 31, 2002 8:24 pm

  • Quote

Post by firefly » Tue Dec 07, 2010 6:28 pm

Max Steel wrote:Gebe statt diesem root=UUID=foo-bar-123-456 welches wie du richtig erkannt hast durch eine initrd erst umgesetzt werden muss,
Lieber den kompletten Pfad an, also root=/dev/disk/by-uuid/foo-bar-123-456.

Davon abgesehen verwendet mein Vater lieber die Zuweißung per ID
also /dev/disk/by-id/ata-MAXTOR_STM3320620A_9QF31Y34-part1 (als Bsp.)
Denn anders als die UUID die sich mit jeder formatierung ändern können, kann sich die ID nicht ändern, da sie die Seriennummer der Festplatte sowie die Partitionierung "enthält".

Analog gibt es für die dm-Geschichten:
/dev/disk/by-id/dm-name-vg0-distfiles

(Ist hier ein lvm2)
sicher dass der kernel ohne eine initrd/initramfs die Einträge unter /dev/disk/ kennt? AFAIK werden die Einträge unter /dev/disk/*/* von udev angelegt.
siehe auch
http://forums.gentoo.org/viewtopic-p-6172663.html
https://bbs.archlinux.org/viewtopic.php?id=53351
https://wiki.archlinux.org/index.php/Pe ... ot_manager

EDIT: Gerade in ner VM mit gentoo, grub2 und einem 2.6.34 kernel getestet. Der kernel kann das root-device nicht finden, wenn als root=/dev/disk/by-uuid/* angegeben wird.
Ein Ring, sie zu knechten, sie alle zu finden,
Ins Dunkel zu treiben und ewig zu binden
Im Lande Mordor, wo die Schatten drohn.
Top
Max Steel
Advocate
Advocate
User avatar
Posts: 2324
Joined: Mon Feb 12, 2007 6:35 pm
Location: My own world! I and Gentoo!

  • Quote

Post by Max Steel » Tue Dec 07, 2010 6:34 pm

So schnell kanns gehen: Habe da etwas durcheinandergewürfelt.
Danke dir.
mfg
Steel
___________________

Heim-PC: AMD Ryzen 9 5950X, 64GB RAM, RX 9070 XT
Laptop: AMD Ryzen 5 7640U, 32GB RAM, Radeon onCPU Graphics
Arbeit-PC: AMD Ryzen 3 Pro 7335U, 16GB RAM, AMD Radeon Graphics (leider WSL2)
Top
KaterGonzo
Apprentice
Apprentice
Posts: 155
Joined: Thu Apr 01, 2004 7:51 am

  • Quote

Post by KaterGonzo » Tue Dec 07, 2010 8:33 pm

Richtig! Bei mir bootet die Kiste auch nicht und sagt, dass das Device nicht gefunden wird.

Außerdem: Deine Aussage, dass die Einträge in /dev/disk/by-id fest sind, scheint nicht zu stimmen. Außerdem haben meine RAID-Devices keinen Hardware-Hersteller :-)

Code: Select all

# ls -n /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 37e82044-18ef-48de-a48b-7444d23cffc5 -> ../../md127
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 ff448824-764f-4097-84f9-2971ded3ab01 -> ../../md126

# ls -n /dev/disk/by-id/
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 md-uuid-860e225c:1d59d285:9224bc57:2ab24b23 -> ../../md127
lrwxrwxrwx 1 0 0 11 Dec  3 14:46 md-uuid-cb28a94e:40d93554:4fc4e4ff:e7b86def -> ../../md126
lrwxrwxrwx 1 0 0  9 Dec  3 14:46 md-uuid-f93c01cd:70d9be28:a740eabd:3d89ce85 -> ../../md1
In by-id sind die aktuellen UUIDs, welche vom RAID verwendet werden. Die passen aber nicht mit dem Inhalt aus by-uuid überein.

Irgendjemand (verdammt, aber wer????) hat die UUIDs angepasst. Macht das die GENTOO-LIVE-CD?
Top
Josef.95
Advocate
Advocate
Posts: 4857
Joined: Mon Sep 03, 2007 9:46 am
Location: Germany

  • Quote

Post by Josef.95 » Tue Dec 07, 2010 8:58 pm

Jo, sofern in der GRUB Kernelzeile etwas wie
root=UUID=xxxxxxxx
oder
root=LABEL="xxx"
verwendet werden soll wird eine initrd benötigt.
So eine kann aber zb mithilfe der genkernel Scripte recht einfach und schnell erstellt werden,
zb

Code: Select all

# genkernel --oldconfig --no-ramdisk-modules ramdisk
erstellt eine schlanke initrd ohne Module --> /boot
(diese muss dann natürlich noch in der grub.conf mit angegeben werden)
Top
firefly
Watchman
Watchman
Posts: 5385
Joined: Thu Oct 31, 2002 8:24 pm

  • Quote

Post by firefly » Mon Dec 13, 2010 8:22 pm

Hinweis: ab 2.6.37 unterstützt der kernel auch ohne eine initrd das mounten des root-dateisystems über eine UUID:
source: http://git.kernel.org/?p=linux/kernel/g ... b78fc0e100
Ein Ring, sie zu knechten, sie alle zu finden,
Ins Dunkel zu treiben und ewig zu binden
Im Lande Mordor, wo die Schatten drohn.
Top
Post Reply
  • Print view

11 posts • Page 1 of 1

Return to “Deutsches Forum (German)”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic