1 |
On Freitag, 15. August 2008, Wolfgang Jankowski wrote: |
2 |
> |
3 |
> > Soweit ich das sehe hat das Paket dmraid kein Init-skript und auch kein |
4 |
> > baselayout-Addon. Also wird das nie beim booten automatisch aktiviert |
5 |
> > werden. |
6 |
> > |
7 |
> > Falls du sowas brauchst ist das schnell selber gebastelt. |
8 |
> |
9 |
> Das hört sich gut an, wo gibt es Infos über das "wie" |
10 |
|
11 |
Pakete die so etwas implementieren sind: lvm2, evms, device-mapper |
12 |
Dort liegen zwar auch mdev und udev start - die machen was anderes. |
13 |
|
14 |
# ls -l /lib/rcscripts/addons/*start.sh |
15 |
|
16 |
Diese skripte sind für baselayout-1. |
17 |
Einfachste Fassung: |
18 |
|
19 |
if [ -x /sbin/dmraid ]; then |
20 |
/sbin/dmraid -a y |
21 |
fi |
22 |
|
23 |
Ob du ein dmraid-stop.sh brauchst musst du selber wissen. |
24 |
Um das dann beim boot zu starten musst du für baselayout-1 das in irgendeiner |
25 |
config-datei aktivieren - das könnte VOLUMES heißen. |
26 |
|
27 |
# grep VOLUMES /etc/rc* /etc/conf.d/* |
28 |
|
29 |
|
30 |
Falls du ~x86 oder ~amd64 verwendest hast du schon baselayout-2/openrc, dafür |
31 |
brauchst du statt der addons ein init-skript. |
32 |
|
33 |
Alle Pakete die sowas brauchen haben im Moment eine sehr einfache Form (hier |
34 |
vom lvm2): Aufrufen des addons wenn vorhanden. |
35 |
|
36 |
depend() { |
37 |
if [ -e /lib/librc.so ]; then |
38 |
# on baselayout-1 this causes |
39 |
# dependency-cycles with checkroot (before *) |
40 |
before checkfs fsck |
41 |
after modules |
42 |
fi |
43 |
} |
44 |
|
45 |
start() { |
46 |
if [ ! -e /lib/librc.so ]; then |
47 |
eerror "The $SVCNAME init-script is written for baselayout-2!" |
48 |
eerror "Please do not use it with baselayout-1!". |
49 |
return 1 |
50 |
fi |
51 |
|
52 |
start_addon lvm |
53 |
} |
54 |
|
55 |
stop() { |
56 |
stop_addon lvm |
57 |
} |
58 |
|
59 |
|
60 |
Falls es bei dir dann mal funktioniert kannst du ja einen Bug anlegen, dass |
61 |
der entsprechende Developer das mit in das dmraid Paket einbauen kann. |
62 |
|
63 |
> |
64 |
> > ODER du lässt dir von genkernel ein initrd/initramfs erzeugen, dass dann |
65 |
> > dmraid direkt vor dem mounten der root-Partition einbindet und so auch |
66 |
> > booten von diesem Raid erlaubt. |
67 |
> |
68 |
> Bisher bin ich ohne initramfs ausgekommen. Das wäre ein neues Thema zum |
69 |
> einarbeiten. |
70 |
> |
71 |
|
72 |
Ich erzeuge mein initramfs so (fürs Booten von einer LVM-root-partition): |
73 |
# genkernel --lvm --no-initrdmodules --splash initrd |
74 |
|
75 |
|
76 |
Matthias |