On Wed, Aug 14, 2002 at 08:04:56AM -0700, Chris Tillman wrote: > Perhaps there's even a semaphore capability > in the kernel that wasn't available when dpkg was written.
That won't provide exclusion of two dpkgs running under different kernels, which is possible via NFS. The file locking implemented in dpkg is good, the NFS client of the installer is broken. > Anyway, boot-floppies is now officially dead. This is definitely a > bad bug for people installing to nfs; I guess the thing to do is > document a workaround. Okay. I hope the authors of the new installer will get it right. > What would you recommend? After mounting the NFS share on /target, enable NFS locking: mount /dev/hdc /instmnt # substitute your cdrom device for /dev/hdc cd /target mkdir x cd x for i in g/glibc/libc6 t/tcp-wrappers/libwrap0 p/portmap/portmap n/nfs-utils/nfs-common do ar -x /instmnt/pool/main/$i''_*.deb zcat data.tar.gz | tar x done umount /instmnt mkdir -p /var/lib/nfs for i in portmap rpc.statd do LD_LIBRARY_PATH=lib sbin/$i done Make pre-arrangements to have this command sequence on the NFS share, or put it there using nano-tiny, so you have to type it at most once. Now install the base system as usual. Then install nfs-common: $ umount /instmnt $ chroot /target $ apt-cdrom add $ apt-get install nfs-common The messages about missing /proc can be ignored, since portmap and statd are already running. You'll need a kernel built with CONFIG_ROOT_NFS. The one on the installation CD isn't. If you don't have one and can't build one on another machine, you must build one right here in the chroot environment: $ apt-get install gcc make libc6-dev kernel-source-2.4.18 less screen links lynx wget ftp # etc. When you've made arrangements to boot the new kernel, using the NFS share as root device, back out cleanly: $ exit # from chroot shell $ cd / $ killall portmap rpc.statd $ umount /target And reboot. If it fails, then boot the installation CD, mount the NFS share on /target, enable NFS locking, chroot /target, do what you forgot to do, back out cleanly, and reboot. If it fails, try again. Good luck. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

