# Upgrading udev - reboot required?

## libertytrek

Hi,

I noticed there's an update to udev available now, but I don't recall ever updating this before (except possibly when I did a world update when the new GCC was marked stable), so had a question...

Will a reboot be required when I update this? Not that I'm averse to rebooting, but my server's been up for almost a year, and I'd prefer to know if a reboot will be required, so I can do this on a Friday evening - so if anything goes wrong, I have all weekend to fix it...  :Smile: 

Anyway - current version of udev is: 104-r13, wants to update to 114...

If it matters, I'm everything's running on a 3ware RAID controller (9500S- :Cool: , with first two drives RAID 1 (mirror) for /boot (ext2), /swap and / (ext3), and /var and /home on RAID 10/LVM (reiserfs).

Also, I'm on kernel 2.6.17-r4 (I know, plan on updating that soon, but have a reason for putting it off)...

Thanks for any pointers, caveats or gotchas to be aware of...

Charles

----------

## ttuegel

You will not need to reboot to install a new version of udev, but you will need to reboot to use the new version.

Note that there's probably some crazy magic you can pull off to stop and restart udev completely with your system up, but I'll leave it up to a more experienced guru to tell you how to do that: I'm a chicken and reboot when it comes time to upgrade something like that  :Wink: 

----------

## libertytrek

Ok, thanks, good to know...

By the way... is there a definitive list of things that *do* require a reboot when installing - assuming, of course, that you want to *use* it too...  :Wink: 

The only one I'm absolutely sure of is the kernel...  :Smile: 

----------

## Paapaa

 *libertytrek wrote:*   

> By the way... is there a definitive list of things that *do* require a reboot when installing - assuming, of course, that you want to *use* it too... 

 

Well, everything related to booting: kernel, init system, grub, BIOS etc.

----------

## eccerr0r

don't forget libc - probably the biggest one.  Though you do start using it right away, there are apps still running that depend on it that will keep on using the old version until it's restarted, and restarting stuff like init can be hard...

sshd is a sometimes a tough one to deal with and may just be easier to reboot.

----------

## Akkara

Don't forget to take care of all your etc-update after updating udev, and before rebooting!

----------

## swimmer

 *ttuegel wrote:*   

> You will not need to reboot to install a new version of udev, but you will need to reboot to use the new version.
> 
> Note that there's probably some crazy magic you can pull off to stop and restart udev completely with your system up, but I'll leave it up to a more experienced guru to tell you how to do that: I'm a chicken and reboot when it comes time to upgrade something like that 

 

Oh? So udevstart reads only in the changed rules but doesn't really restart udev with the new version?

Just curious

swimmer

----------

## libertytrek

 *Paapaa wrote:*   

>  *libertytrek wrote:*   By the way... is there a definitive list of things that *do* require a reboot when installing - assuming, of course, that you want to *use* it too...  
> 
> Well, everything related to booting: kernel, init system, grub, BIOS etc.

 

Ok, thanks - but what package[es] make up the 'init system'?

 *Quote:*   

> don't forget libc - probably the biggest one. Though you do start using it right away, there are apps still running that depend on it that will keep on using the old version until it's restarted

 

Hmmm... I don't think I rebooted after the last libc update - but everything seems fine. I did restart all of the important apps, but not sure about any of the system processes. Oh well - I'm gonna be rebooting soon anyway when I upgrade the procs, so guess it doesn't matter...

 *Quote:*   

> sshd is a sometimes a tough one to deal with and may just be easier to reboot.

 

Well... I have updated SSH a few times without rebooting... all I did was /etc/init.d/sshd restart... thats not enough?

 *Quote:*   

> Don't forget to take care of all your etc-update after updating udev, and before rebooting!

 

Heh - yeah, thats a given...

Thanks for all the replies!

----------

## ttuegel

 *swimmer wrote:*   

> Oh? So udevstart reads only in the changed rules but doesn't really restart udev with the new version?

 

Reading the man page for udevstart, it doesn't sound like udevstart even _starts_ udevd, it just populates the /dev directory once (i.e., it makes nodes for whatever is connected to your system _now_, then exits, so new devices don't get nodes created).

So, you'd get a new set of nodes that would be made with your new version of udev, but you'd still have an old version of udevd running.  You can probably restart udevd on a running system (as I mentioned before) but I'm not sure how to _safely_ do that, so I'm going to keep my mouth shut  :Smile: 

----------

## Rob1n

 *ttuegel wrote:*   

> You can probably restart udevd on a running system (as I mentioned before) but I'm not sure how to _safely_ do that, so I'm going to keep my mouth shut 

 

You should be able to just kill udevd off and restart it - I've done that without any issues anyway.  In fact, a quick check of the ebuild shows that this should be done automatically as part of the upgrade process.

----------

## ttuegel

 *Rob1n wrote:*   

> You should be able to just kill udevd off and restart it - I've done that without any issues anyway.  In fact, a quick check of the ebuild shows that this should be done automatically as part of the upgrade process.

 

Sounds good.  I was somewhat concerned that if you killed udevd off the device nodes would, you know... cease to be there.  Wasn't sure if that would be problematic.  It makes sense, though, that the ebuild does it.

----------

## Rob1n

 *ttuegel wrote:*   

>  *Rob1n wrote:*   You should be able to just kill udevd off and restart it - I've done that without any issues anyway.  In fact, a quick check of the ebuild shows that this should be done automatically as part of the upgrade process. 
> 
> Sounds good.  I was somewhat concerned that if you killed udevd off the device nodes would, you know... cease to be there.  Wasn't sure if that would be problematic.  It makes sense, though, that the ebuild does it.

 

No, the device nodes are static - all udevd does is listen for new notifications from the kernel and then create/delete nodes and symlinks according to the udev rules files.  The only risk you have in stopping it is that you may miss a notification - I'm not sure whether there's any queueing of these within the kernel or whether they need to be handled immediately.

----------

## swimmer

Thanks for the clarification Rob1n  :Smile: 

----------

