On Sun, Mar 11, 2012 at 05:09:12AM -0400, Walter Dnes wrote:
>   This revision makes 2 changes...

> A) The removal of udev is now standard instead of optional.  udev-181
> and higher will be pulling in kmod, and anything else that kmod depends
> on.  Removing udev will avoid unnecessary cruft on your machine.

> B) Splitting up step 3) into 3a) and 3b) for greater clarity as
> requested in user feedback.

>   The usual warnings apply...
> * this is a beta
> * use a spare test machine
> * if you don't follow the instructions correctly, the result might be
>   an unbootable linux
> * even if you do follow instructions, the result might be an unbootable
>   linux

Yep, I got the (effectively) unbootable machine: My LVM partitions didn't
get mounted.  My precaution against it was: (i) Copy my entire (working)
root partition to a new partition.  (ii) Edit the first line of the new
/etc/fstab.  (iii) Add a new entry to /etc/lilo.conf.  It's handy having
a small root partition.  :-)

> 1) Set up your kernel to support and automount a devtmpfs filesystem at
>    /dev

> * If you prefer to edit .config directly, set
>   CONFIG_DEVTMPFS=y and CONFIG_DEVTMPFS_MOUNT=y

> * If you prefer "make menuconfig", the route is as shown below.  Note
>   that the "Autount devtmpfs..." option won't appear until you enable
>   "Maintain a devtmpf..." option.

> make menuconfig
>   Device Drivers  --->
>     Generic Driver Options  --->
>       [*] Maintain a devtmpfs filesystem to mount at /dev
>       [*]   Automount devtmpfs at /dev, after the kernel mounted the rootfs

>   Once you've made the changes, rebuild the kernel.


> 2) Set up for emerging busybox.  busybox requires the "mdev" flag in
> this situation.  The "static" flag is probably also a good idea.  In
> file /etc/portage/package.use add the line

> sys-apps/busybox static mdev

>    Now, "emerge busybox"


> 3 a) Create /sbin/linuxrc containing at least

> #!/bin/busybox ash
> mount -t proc proc /proc
> mount -t sysfs sysfs /sys
> exec /sbin/init

>   This should be enough for most users.  If you have an unusual setup,
> you may need additional stuff in there.  Remember to
> "chmod 744 /sbin/linuxrc" to make it executable.

I may have an unusual setup, but I don't think so.  I've got my root
partition as ext2 on /dev/sda5, and everything else under LVM.
Otherwise, pretty standard.

>  In the bootloader "append" line, include "init=/sbin/linuxrc".  If
> you're using lilo remember to re-run lilo to implement the changes.  If
> you're using another bootloader, make the equivalant initialization.

How do I know whether my /sbin/linuxrc actually ran?  Maybe, I mean how
can I be sure my "append = "init=/sbin/linuxrc"" actually worked?

> 4) Remove udev from the services list, and replace it with mdev.  Type
>    the following 2 commands at the command line
> rc-update del udev sysinit
> rc-update add mdev sysinit

Done

> 5) reboot to your new kernel.  You're now running without using udev.

Here's where I got problems.  None of my LVM partitions got mounted.
Here're a few lines of my bootup messages, just before the problem:

* Setting up mdev as hotplug agent ...
* Populating /dev with existing devices with mdev -s ...
* Mounting /dev/pts ...
* Mounting /dev/shm ...

Enter runlevel: 3
* Setting up system clock using the hardware clock [UTC]
* Setting up the Logical Volume Manager
* Checking local filesystems
/dev/sda5: clean, 6052/655360 files, 180423/2621440 blocks
fsck.ext3: No such file or directory while trying to open /dev/vg/usr
.....
<and so on, for all my other partitions>

> 6) Remove udev as per the following instructions...

> * execute the following command at the commandline
> emerge --unmerge sys-fs/udev

> * In file /atc/portage/package.mask, append the line
> sys-fs/udev
>   Create the file if it doesn't already exist.  You now have a totally
> udev-free machine

Help would be appreciated.

> -- 
> Walter Dnes <waltd...@waltdnes.org>

-- 
Alan Mackenzie (Nuremberg, Germany).

Reply via email to