Gentoo Archives: gentoo-user

From: "Canek Peláez Valdés" <caneko@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] My first initramfs
Date: Sun, 17 Nov 2013 16:53:33
Message-Id: CADPrc82igWr+seF96zT+P-9KcixtU2Tz6YZ0a0ZdOCxv3QsDRA@mail.gmail.com
In Reply to: Re: [gentoo-user] My first initramfs by Tanstaafl
1 On Sun, Nov 17, 2013 at 6:57 AM, Tanstaafl <tanstaafl@×××××××××××.org> wrote:
2 > On 2013-11-12 5:50 PM, Canek Peláez Valdés <caneko@×××××.com> wrote:
3 >>
4 >> You*MUST* add the necessary modules/tools to mount root and/or /usr.
5 >>
6 >> So if you have an XFS partition on a LVM volume on top of an mdraid,
7 >> and the partition is encrypted, then you need the kernel modules for
8 >> xfs, lvm, mdraid and crypt, and the corresponding userspace tools,
9 >> including fsck.xfs.
10 >
11 >
12 > Ok, re-reading these messages, this explanation is probably the most
13 > significant - thanks Canek - but I still have a few questions...
14 >
15 > Maybe part of my confusion stems from use of the word 'modules' above?
16 > Remember, the system I am talking about has always had kernel module support
17 > completely disabled (everything is built into the kernel).
18
19 In dracut, you can add kernel modules ("drivers" in dracut
20 terminology, which you don't require since you compile everything
21 in-kernel), and dracut modules. I was talking about the firsts kind.
22
23 If you have the modules compiled in the kernel, you only need the
24 corresponding userspace tools.
25
26 > So, my /usr is reiserfs (built into the kernel - and please no filesystem
27 > flame-war comments, it is what it is) on LVM (built into the kernel) on
28 > hardware RAID (driver built into the kernel), with no encryption involved.
29
30 I've never used a hardware raid. I don't know if it needs mdraid; if
31 it does, you need the *dracut* module for mdraid, otherwise you are
32 good. In either case, you need the *dracut* module for LVM: the kernel
33 alone is not able to mount LVM volumes, AFAIU; you need the userspace
34 tools.
35
36 > So, am I correct that I don't need ANY 'modules' (never have, and don't want
37 > them), leaving only the userspace tools for lvm and reiserfsck?
38
39 You need the *dracut* module for LVM, you don't need any kernel
40 module. Or better stated: you already have the kernel modules, inside
41 your kernel. What dracut does when you specify "drivers" (kernel
42 modules), is only to include them in the initramfs. So even if you
43 specify them in your dracut config file, since they are not available,
44 dracut will print a warning about the driver not being avaible, and it
45 will continue without it.
46
47 > If so then the only other question is, how to build an initramfs with just
48 > these...
49 >
50 >
51 >> I strongly recommend dracut; the modules listed in DRACUT_MODULES are
52 >> usually self explanatory, and it Just Works™.
53 >
54 >
55 > Ok, well, emerge -pvuDN dracut gives:
56 >
57 >> [ebuild N ~] sys-kernel/dracut-034-r1 USE="-debug -device-mapper -net
58 >> (-selinux)" DRACUT_MODULES="-biosdevname -bootchart -btrfs -caps -cifs
59 >> -crypt -crypt-gpg -crypt-loop -dash -dmraid -dmsquash-live -gensplash -iscsi
60 >> -livenet -lvm -mdraid -multipath -nbd -nfs -plymouth -ssh-client -syslog
61 >> -systemd" 272 kB
62 >
63 >
64 > First question: I don't see reference to reiserfs there anywhere, so how do
65 > I get reiserfsck (and is that all I need?) support into the initrams?
66
67 Filesystems are inferred from fstab and the fscks key in dracut.conf.
68 If you use the -H (host) option, you don't even need to touch fscks,
69 the information will be parsed from fstab.
70
71 > Second question: I guess I'd need to enable the device-mapper USE flag for
72 > dracut, but, since I do not use ANY kernel modules, can I ignore all of the
73 > 'DRACUT_MODULES'? Or do 'DRACUT_MODULES' have nothing to do with kernel
74 > modules?
75
76 DRACUT_MODULES have nothing to do with kernel modules (those are
77 called "drivers" inside dracut). The dracut modules are little scripts
78 which copy stuff inside the initramfs.
79
80 By the way, if you install dracut, it will do nothing in your system;
81 it's only for populate an initramfs. You can install it and it will
82 not affect your system in any way.
83
84 Regards.
85 --
86 Canek Peláez Valdés
87 Posgrado en Ciencia e Ingeniería de la Computación
88 Universidad Nacional Autónoma de México