[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Trouble upgrading in a chroot -- no /dev



I'm upgrading my network front end from etch to lenny, now that security 
support is being dropped in a few days.  As I've done before (from sarge 
to etch, for example) I copied the entire partition containing my system 
using tar/untar (and it *is* all in one partition). edited the copied /
etc/fstab, checked that the copy booted, rebooted the original system,  
chrooted to the copy, and started upgrading.

Why this convoluted scheme?  Because this way I still have an unupgraded 
working system incase the upgrade fails.  (And it has failed in the past).

I upgrade inside the chroot so the unupgraded system can go on serving my 
users while the upgrade happens.

This time I encountered a new problem:

dpkg-preconfigure: unable to open stdin

Now I presume this is because /dev is absent from the chroot and it's 
trying to use /dev/fd/0 -- the device that acts like stdin.  What do I do 
to set things up so that I have a valid /dev?  The /dev outside the 
chroot is set up by udev.  Is there some way of mounting it from inside 
the chroot?  Is there some way of duplicate-mounting it from outside so 
it's visible inside?  And there are probably similar problems with /proc, 
though I haven't hit them yet.

-- hendrik



Reply to: