Gentoo Archives: gentoo-user

From: "Canek Peláez Valdés" <caneko@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Beta test Gentoo with mdev instead of udev; version 5
Date: Sun, 11 Mar 2012 18:41:12
Message-Id: CADPrc80g-W9sjbFcftpzRPMjkehAZroo3YmQ1OGyJsR6pqAfHg@mail.gmail.com
In Reply to: Re: [gentoo-user] Beta test Gentoo with mdev instead of udev; version 5 by Alan McKinnon
1 On Sun, Mar 11, 2012 at 8:17 AM, Alan McKinnon <alan.mckinnon@×××××.com> wrote:
2 > On Sun, 11 Mar 2012 07:27:05 -0400 (EDT)
3 > Daddy <daddy@×××××××××××××××××××××.com> wrote:
4 >
5 >> On March 11, 2012 at 5:09 AM Walter Dnes <waltdnes@××××××××.org>
6 >> wrote:
7 >>
8 >> >   This revision makes 2 changes...
9 >> >
10 >> > A) The removal of udev is now standard instead of optional.
11 >> > udev-181 and higher will be pulling in kmod, and anything else that
12 >> > kmod depends on.  Removing udev will avoid unnecessary cruft on
13 >> > your machine.
14 >> >
15 >> > B) Splitting up step 3) into 3a) and 3b) for greater clarity as
16 >> > requested in user feedback.
17 >> >
18 >> >   The usual warnings apply...
19 >> > * this is a beta
20 >> > * use a spare test machine
21 >> > * if you don't follow the instructions correctly, the result might
22 >> > be an unbootable linux
23 >> > * even if you do follow instructions, the result might be an
24 >> > unbootable linux
25 >> >
26 >> >
27 >> > 1) Set up your kernel to support and automount a devtmpfs
28 >> > filesystem at /dev
29 >> >
30 >> > * If you prefer to edit .config directly, set
31 >> >   CONFIG_DEVTMPFS=y and CONFIG_DEVTMPFS_MOUNT=y
32 >> >
33 >> > * If you prefer "make menuconfig", the route is as shown below.
34 >> > Note that the "Autount devtmpfs..." option won't appear until you
35 >> > enable "Maintain a devtmpf..." option.
36 >> >
37 >> > make menuconfig
38 >> >   Device Drivers  --->
39 >> >     Generic Driver Options  --->
40 >> >       [*] Maintain a devtmpfs filesystem to mount at /dev
41 >> >       [*]   Automount devtmpfs at /dev, after the kernel mounted the
42 >> rootfs
43 >> >
44 >> >   Once you've made the changes, rebuild the kernel.
45 >> >
46 >> >
47 >> > 2) Set up for emerging busybox.  busybox requires the "mdev" flag in
48 >> > this situation.  The "static" flag is probably also a good idea.  In
49 >> > file /etc/portage/package.use add the line
50 >> >
51 >> > sys-apps/busybox static mdev
52 >> >
53 >> >    Now, "emerge busybox"
54 >> >
55 >> >
56 >> > 3 a) Create /sbin/linuxrc containing at least
57 >> >
58 >> > #!/bin/busybox ash
59 >> > mount -t proc proc /proc
60 >> > mount -t sysfs sysfs /sys
61 >> > exec /sbin/init
62 >> >
63 >> >   This should be enough for most users.  If you have an unusual
64 >> > setup, you may need additional stuff in there.  Remember to
65 >> > "chmod 744 /sbin/linuxrc" to make it executable.
66 >> >
67 >> >  In the bootloader "append" line, include "init=/sbin/linuxrc".  If
68 >> > you're using lilo remember to re-run lilo to implement the
69 >> > changes.  If you're using another bootloader, make the equivalant
70 >> > initialization.
71 >> >
72 >> >
73 >> > 4) Remove udev from the services list, and replace it with mdev.
74 >> > Type the following 2 commands at the command line
75 >> > rc-update del udev sysinit
76 >> > rc-update add mdev sysinit
77 >> >
78 >> >
79 >> > 5) reboot to your new kernel.  You're now running without using
80 >> > udev.
81 >> >
82 >> >
83 >> > 6) Remove udev as per the following instructions...
84 >> >
85 >> > * execute the following command at the commandline
86 >> > emerge --unmerge sys-fs/udev
87 >> >
88 >> > * In file /atc/portage/package.mask, append the line
89 >> > sys-fs/udev
90 >> >   Create the file if it doesn't already exist.  You now have a
91 >> > totally udev-free machine
92 >> >
93 >> > --
94 >> > Walter Dnes <waltdnes@××××××××.org>
95 >> >
96 >>
97 >> Having personally long considered Lennart Poettering a 'spawn of the
98 >> devil' my question is ... is this your reaction to systemd?
99 >
100 >
101 > No, it's his reaction to the fantastical amount of kitchen-sinking
102 > going on surrounding udev. Most specifically, it's the recent
103 > "requirement" foisted on the udev-using community to require
104 > either /usr to be part of / or to use an initramfs.
105 >
106 > Walter simply wants to show that mdev is a suitable replacement for
107 > udev in simple environments eg embedded, simple desktops without
108 > complex hotplug requirements, and servers.
109 >
110 > Canek will no doubt chip in about how this is the way things are going,
111 > it is inevitable, the boot sequence is becoming complex and various
112 > other rehashings of what's coming out of udev upstream.
113
114 No, I will not ;)
115
116 As I have said before, I admire a lot what Walter et al. are doing,
117 and as I always will say, this is how our community works: people
118 writing the code (as Walter is doing) are the ones that get things
119 done. This is the correct (and only) way to address a problem
120 (perceived or real) with the current status: write the code that does
121 the thing the way you want it. Complaining and crying that you don't
122 like the direction some part of the stack is taking is at best a waste
123 of time, and at worst idiotic. Actually doing something about it (as
124 Walter is doing) is the smart thing to do.
125
126 I personally will not use Walt's work. Not in my desktop, laptop, nor
127 in my servers or embedded systems (I don't know if my Media Center
128 qualifies as "embedded", if I'm truthful); they all run amazingly well
129 with systemd. But that's my decision: if anybody else wants to go the
130 mdev route, that's their absolute right.
131
132 This is open source: code talks. If anyone with enough interest and
133 capabilities wants to implement any feature (or anti feature) they
134 want, they will. That's what Walter is doing, and I sincerely salute
135 that effort.
136
137 Regards.
138 --
139 Canek Peláez Valdés
140 Posgrado en Ciencia e Ingeniería de la Computación
141 Universidad Nacional Autónoma de México