Gentoo Archives: gentoo-user

From: Dale <rdalek1967@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Dracut and how to specify names
Date: Fri, 03 Jan 2020 10:49:37
Message-Id: eb1776ab-13fb-0881-48ba-27ce7c3f0a02@gmail.com
In Reply to: Re: [gentoo-user] Dracut and how to specify names by John Covici
1 John Covici wrote:
2 > On Fri, 03 Jan 2020 02:27:22 -0500,
3 > Dale wrote:
4 >> John Covici wrote:
5 >>> On Thu, 02 Jan 2020 21:57:29 -0500,
6 >>> Dale wrote:
7 >>>> Howdy,
8 >>>>
9 >>>> I'm trying to rebuild a kernel to include new options, see other
10 >>>> thread.  I got the kernel built but dracut is giving me grief.  I hate
11 >>>> that thing and when a previous way that worked no longer works, it
12 >>>> doesn't help me like it any more.  Still, it is what it is even if I
13 >>>> don't like it.  I read the man page, the Gentoo wiki and tried different
14 >>>> methods but it just refuses to build a init thingy that I need.  It
15 >>>> either fails right away or gets to the end and errors out without
16 >>>> completing.
17 >>>>
18 >>>> I name my kernels and such this way:
19 >>>>
20 >>>> root@fireball /usr/src/linux # ls -al /boot/kernel*
21 >>>> -rw-r--r-- 1 root root 7061552 Oct 14  2018 /boot/kernel-4.18.12-1
22 >>>> -rw-r--r-- 1 root root 7082032 May 15  2019 /boot/kernel-4.19.40-1
23 >>>> -rw-r--r-- 1 root root 7102512 Jan  2 19:46 /boot/kernel-4.19.40-2
24 >>>> -rw-r--r-- 1 root root 5858496 Jun 17  2016 /boot/kernel-4.5.2-1
25 >>>> root@fireball /usr/src/linux #
26 >>>>
27 >>>> I copy the kernels from the /usr/src/linux directory by hand as I've
28 >>>> always done.  I name them starting with kernel and then add the kernel
29 >>>> version with a sequence number on the end.  In the past, I've made it to
30 >>>> -4 before getting what I need.  Right now, I'm working on 4.19.40-2 and
31 >>>> building a init thingy for it.  This is how the init thingys end up, in
32 >>>> the past anyway:
33 >>>>
34 >>>>
35 >>>> root@fireball /usr/src/linux # ls -al /boot/initramfs*
36 >>>> -rw------- 1 root root 7752134 Oct 15  2018 /boot/initramfs-4.18.12-1.img
37 >>>> -rw------- 1 root root 8560993 May 15  2019 /boot/initramfs-4.19.40-1.img
38 >>>> -rw------- 1 root root 5377395 May 20  2016 /boot/initramfs-4.5.2-1.img
39 >>>> root@fireball /usr/src/linux #
40 >>>>
41 >>>>
42 >>>> What I need, the proper command with options to tell dracut I want to
43 >>>> build a init thingy for 4.19.40-2.  I've tried many different ways but
44 >>>> none of them work.  This includes commands I've used in the past that
45 >>>> did work.  If I have to specify the init thingy name and the location of
46 >>>> the kernel modules directory, that's fine.  I keep commands like this in
47 >>>> a file to refer back to because I do tend to forget specifics but in
48 >>>> this case, it seems dracut changed something.  Previous commands are not
49 >>>> working. 
50 >>>>
51 >>>> Does anyone know how to accomplish this task?  Hopefully something that
52 >>>> will work even if dracut changes something with its defaults.  I figure
53 >>>> if I tell it all it needs to know, then it should work even if dracut
54 >>>> changes the default method.  I just can't seem to figure out what method
55 >>>> to use here.  Maybe I'm missing a option or something. 
56 >>>>
57 >>>> Thanks much. 
58 >>> I think dracut uses the name of the /lib/modules directory, so just
59 >>> execute dracut "" <module directory name> such as in my case
60 >>> 4.19.85-gentoo . If that does not work post here, maybe you have
61 >>> spaces in your directory name, if so try using double quotes around
62 >>> it.
63 >>>
64 >>
65 >> I decided to go back to a older version, just to see if it works.  The
66 >> first example I had saved didn't work but the second did.  First was
67 >> likely from a much older version of dracut.  Do you know what changed
68 >> between dracut-046-r1 and dracut-048-r1?  I ran into this once before
69 >> when a major version number changed. 
70 >>
71 >> One reason I'd like to be able to specify everything is to avoid changes
72 >> in future versions.  That way I can use the same command each time
73 >> unless they completely change everything which I'm sure I'd read about
74 >> long before I needed to use it.  Just has a example:
75 >>
76 >> dracut /boot/<kernel name> <initramfs name> -k <path to kernel modules>
77 >>
78 >> With that, it knows where the kernel is, what to name the init thingy
79 >> and where to find the kernel modules.  Thing is, I can't find a way to
80 >> do it that way with what I see in the man page or the wiki.  I even
81 >> looked on non-Gentoo sites and didn't find anything like this. 
82 >>
83 >> I did eventually help it find the modules.  Then it ran into another
84 >> issue that even google couldn't find.  I don't mean find a solution, it
85 >> couldn't find the problem either.  It returned zero, 0, results.  I was
86 >> floored.  It's rare to see google return a stupid look.  ROFL  I also
87 >> tried renaming the kernel to see if that would help.  No change.  I know
88 >> it is picky on names but one would think it would stay the same. 
89 >> Finding something with kernel on the front shouldn't be to hard. ;-)
90 >>
91 >> May have to just bang away until I get lucky then document the new way. 
92 >> Whatever that way is.
93 >>
94 >> Thanks.
95 > I think you are over complicating things, when I use dracut, I don't
96 > specify any of those parameters, just the init thingy name which I
97 > usually leave blank and the name of the kernel I want to use, dracut
98 > finds everything fine. Why not do it that way and rename afterwards,
99 > if you don't like the name.
100 >
101
102
103 From what I recall when dracut first came out, I have to tell it what
104 kernel to build against since I have several kernels.  Otherwise, it
105 doesn't know which one I just built and want a init thingy for.  Usually
106 I pass the version including my sequence number to it and it builds it. 
107 This time it didn't do that.  What I don't want, rebuild the init thingy
108 for them all and something be wrong and they all fail.  If it builds
109 just one, I can still fall back to older ones that I've already tested. 
110
111 It may be a weird way but it's the way I been doing it pretty much ever
112 since I started using Gentoo about 15 years ago.  Ironically, one of the
113 biggest reasons I switched to Gentoo, no need for the init thingy. 
114 Trust me when I say this, dealing with the thing doesn't make me happy. 
115 It changing how it does its thing so often isn't helping.  It's like
116 having to learn it all over again each time I need to use it.
117
118 Thanks for the help.  I'll bang away at it until I make it submit or I
119 just put the older version in a overlay and use it until it no longer
120 works. 
121
122 Dale
123
124 :-)  :-)