[Eisfair_dev] E1 Busybox und Raid

Thomas Zweifel t2fel at gmx.net
Di Dez 23 23:45:20 CET 2014


Hallo Holger

Am 23.12.2014 um 22:38 schrieb Holger Bruenjes:
> Am 2014-12-23 um 22:10 schrieb Thomas Zweifel:
> 
>> BTW:
>> Da ich meinen 'Datenhaufen' zukünftig mit lvm verwalten möchte, musste
>> ich ein wenig im boot-Skript herumhacken.
> 
>>      if [ ! -e /proc/mounts ] ; then
>>          /bin/mount -n -t proc /proc /proc >/dev/null 2>&1
>>          /bin/mount -n -t sysfs /sys /sys >/dev/null 2>&1
> 
> /sys wird aber schon ueber die fstab einbgebunden

Das /sys ist eher für diejenigen von Interesse, die ihre Daten auf
mehreren Platten (ohne raid) verteilt haben, da fsck die Datenträger
dann parallel checken kann.

fsck.8
fsck does not check stacked devices (RAIDs, dm-crypt, ...) in parallel
with any other device. See below for FSCK_FORCE_ALL_PARALLEL setting.
The /sys filesystem is used to detemine dependencies between devices.



>>      fi
>>
>>      # assemble aditional md
>>      if [ -f /etc/mdadm/mdadm.conf ] ; then
>>          /sbin/mdadm -A -s
>>      fi
> 
> das findet eigentlich in der initrd statt

Leider nur Teilweise, diejenigen md, die nach der letzten
Kernelinstallation dazugekommen sind oder neu angelegt wurden, werden
nicht berücksichtigt.

Die 'Kaputten' md stammen von der Busybox, die korrekten vom
zusätzlichen mdadm.

service02test # mdadm -Ds
ARRAY /dev/md/1_0 metadata=0.90 UUID=ad5cae99:8a3beeae:071cdb0d:feb643d2
ARRAY /dev/md6 metadata=0.90 UUID=ed16d745:d47e905b:64294a9e:999ae535
ARRAY /dev/md/3_0 metadata=0.90 UUID=fbf4f3f2:669a9aa6:2162b165:bb7a626b
ARRAY /dev/md/2_0 metadata=0.90 UUID=a0cc27fd:6ad43b5e:032a686a:be7ad689
ARRAY /dev/md5 metadata=1.2 name=service02test:5 UUID=2eecf58...
ARRAY /dev/md7 metadata=1.2 name=service02test:7 UUID=0c1a54b...
ARRAY /dev/md8 metadata=1.2 name=service02test:8 UUID=0b8f5f9...

Damit man nicht gleich mit einer zerlegten vg dasteht, bloss weil man
vergessen hat den Kernel frisch drüberzubügeln....  :-(



>>
>>      # start lvm
>>      if [ -x /etc/init.d/boot.lvm ] ; then
>>          /etc/init.d/boot.lvm
>>      fi
>>
>>      # -C display output with progressbar
>>      FSCK_PROGRESS=''
>> --8<------
>>
>> Sowas hätte vermutlich kaum Chancen, in der Base mit aufgenommen zu
>> werden. Oder? ;-)
> 
> kaum, da sys ueber fstab eingebunden wird und mdadm in der initrd
> ausgefuehrt wird.
> 
> und ein Startskript fuer lvm, kann doch normal ueber einen Startlevel
> starten.

Das ginge schon, nur muss man nochmals separat einen fsck für die lv
machen und eine zusätzliche mount Runde, da wäre der Einstiegspunkt vor
dem eigentlichen fsck halt genau richtig.

Punkt 1 und 2 könnte ich natürlich auch in's lvm-Skript packen.
Den Einstiegspunkt vor dem fsck werde ich allerdings nicht aufgeben,
auch wenn ich nach Updates kurz einen Blick drauf werfen, und
gegebenenfalls etwas 'geradebiegen' muss. ;-)

Wenn ich es mal vergessen sollte, bleibe ich halt auf der
Reparaturkonsole hängen ohne dass schlimmeres passiert, und damit kann
ich durchaus leben.



Dank und Gruss
Thomas


Mehr Informationen über die Mailingliste Eisfair_dev