How to rebuild udev?

Post here if you are a new Porteus member and you're looking for some help.
ndiamond
White ninja
White ninja
Posts: 5
Joined: 28 Dec 2011, 06:42
Location: Tokyo

How to rebuild udev?

Post#1 by ndiamond » 26 Feb 2016, 03:45

I use an old version of Porteus because I customized it several years ago. But occasionally I replace the Linux kernel. It's comparatively easy to build the latest stable kernel and kernel modules, and update Porteus modules.

Now I have to update udev. I found various dependencies and could finally make udev compile, but the components get installed in unfamiliar places. For example a simple udev build puts some stuff in /usr/libexec/udev, but Porteus still puts stuff in old familiar locations like /sbin. How can I configure udev's build configuration to target the same installation folders that Porteus uses?

Also, while I've been sleeping, /dev/.udev was changed to /run. I see that there's a tmpfs mounted on /run, but can't find anything in the init scripts that creates /run. Where is it, or how is it done?

User avatar
brokenman
Site Admin
Site Admin
Posts: 6105
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v4 all desktops
Location: Brazil

Re: How to rebuild udev?

Post#2 by brokenman » 26 Feb 2016, 04:48

but can't find anything in the init scripts that creates /run. Where is it, or how is it done?
/run is created in the initrd and then bound in /etc/rc.d/rc.S at around line 41

Slackware-current uses eudev instead of udev to avoid the systemd dependency.
How do i become super user?
Wear your underpants on the outside and put on a cape.

ndiamond
White ninja
White ninja
Posts: 5
Joined: 28 Dec 2011, 06:42
Location: Tokyo

Re: How to rebuild udev?

Post#3 by ndiamond » 01 Mar 2016, 09:07

Thank you so far.

Now I haven't actually built an eudev download yet, because the problem's going to be tougher.

I downloaded fresh builds of Porteus 3.1 32-bit and 64-bit today, and burned them to CDs.

One computer is an NEC VersaPro VF-6. On this computer, and only this computer, the following happens.

Porteus 3.1 64-bit works fine.

Portus 3.1 32-bit hangs during boot in udevadm trigger, because udevd and the kernel can't handle something. It isn't a 2-minute delay in udevadm settle because it never gets that far. When udevd hangs, the CapsLock key doesn't work, NumLock key doesn't work, Ctrl+Alt+Delete doesn't work, etc.

Porteus 3.1 32-bit with the nohotplug kernel parameter gets to a login screen, but then it starts X, and in X there's no keyboard and no mouse because of nohotplug. Ctrl+Alt+F1 doesn't work, Ctrl+Alt+Delete doesn't work, etc.

Porteuis 3.1 32-bit text mode with the nohotplug kernel parameter works in text mode.

How can I find out what is hanging udevd in 32-bit mode that doesn't have any problem in 64-bit mode?

User avatar
brokenman
Site Admin
Site Admin
Posts: 6105
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v4 all desktops
Location: Brazil

Re: How to rebuild udev?

Post#4 by brokenman » 03 Mar 2016, 01:23

Sounds difficult. Are you certain that the kernel and the base modules are not somehow being mixed up. For example, the 64bit kernel is called and then loads a 32bit OS?

The only way to glean information in this scenario is to activate the ssh daemon on boot. Then once it hangs see if you can ssh in from a different machine and peruse the logs. Principally dmesg.
How do i become super user?
Wear your underpants on the outside and put on a cape.

Post Reply