----- Forwarded message from Rich Johnson <[EMAIL PROTECTED]> ----- X-Virus-Scanner: McAfee Virus Engine X-Spam-Status: Scanner Called X-Sent: 2 Feb 2002 15:14:43 GMT From: Rich Johnson <[EMAIL PROTECTED]> To: Ben Collins <[EMAIL PROTECTED]> Subject: Re: Bug#131709: chroot segfaults X-Spam-Status: No, hits=0.0 required=6.5 tests= version=2.1
Rich Johnson wrote: > I poked around a bit more. I've distilled some of the results below/ > > The machine state is the result of: > 1) booted from floppies (mac_hfs_boot, root.bin) > 2) downloaded kernel & drivers from ftp.us.debian.org > 3) downloaded base .debs from ftp.us.debian.org > 4) extracted base .debs from ftp.us.debian.org > 5) installation of base .debs failed with "Failure trying to run : chroot > /target dpkg" > Ben-- I did still more digging--i.e. lots of reboots and manual invocations of <debootstrap >. Here's a report to pass on to the appropriate folks--perhaps it's a <dpkg> or <debootstrap> issue? a) <chroot> runs fine intslling the first few <dpkg>'s b) <chroot> start's failing with <repeat 5 ....dpkg .... $(debfor $required)> c) the system would also hang--such that <ctl-C> does't work; sometimes even <ctl-alt-del> didn't work. d) fsck after a forced reboot invariably showed several cross-linked files--almost always in /usr/share/zoneinfo. This indicates that the 3000 or so files indicated by "$(debfor required)" overstresses <dpkg>. Hanging also indicates falling into an infinite loop somewhere; perhaps a corrupted linked list or hash table? I was able to install all the packages by rewriting install_subs() to "unwind" the installation such that <dpkg> was invoked on a _single_ packages at a time. Experience with cross-linked files also caused me to defensively put a <sync> after every <dpkg>. The modified script ran to completion. This supports the hypothesis of an overstressed <dpkg>. I replaced the two <repeat 5> lines with loops. Running each loop once left nothing more to do. The <repeat> seemed superfluous, but I may be missing some subtleties . Here's the modified fragment (sorry, no diff's yet--I'm still configuring the system): <...snip...> for rdeb in ${required}; do in_target dpkg --force-depends --unpack $(debfor $rdeb) sync sleep 3; #--throttle to give time to scan results. done <...snip...> for bdeb in ${base}; do in_target dpkg --force-auto-select --force-overwrite --force-confold --skip-same-version --install $(debfor $bdeb) sync sleep 3 #--throttle to give time to scan results. done in_target dpkg --configure --pending --force-config-any --force-depends #--walk through That's all for now...on to XBoot and finishing my configuration.... --rich ----- End forwarded message ----- -- .----------=======-=-======-=========-----------=====------------=-=-----. / Ben Collins -- Debian GNU/Linux -- WatchGuard.com \ ` [EMAIL PROTECTED] -- [EMAIL PROTECTED] ' `---=========------=======-------------=-=-----=-===-======-------=--=---' -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]