Subject: install/28827: 2.0 i386 sysinst trashed boot blocks when told to leave them alone
To: None <install-manager@netbsd.org, gnats-admin@netbsd.org,>
From: John Kohl <jtk@kolvir.arlington.ma.us>
List: netbsd-bugs
Date: 01/01/2005 15:00:00
>Number:         28827
>Category:       install
>Synopsis:       i386 sysinst trashed boot blocks when told to leave them alone
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    install-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Jan 01 15:00:00 +0000 2005
>Originator:     John Kohl
>Release:        NetBSD 2.0
>Organization:
NetBSD Kernel Hackers `R` Us
>Environment:
	
	
System: NetBSD desktop.john.kohl.name 2.0 NetBSD 2.0 (KOLVIR-$Revision: 1.56 $) #8: Sun Dec 19 15:56:25 EST 2004 jtk@desktop.john.kohl.name:/usr/u4/sandbox/src/sys/arch/i386/compile/KOLVIR i386
Architecture: i386
Machine: i386
>Description:
	I have a server in a co-lo facility with only remote console
access via serial line.  Upgrading from 1.6.3 to 2.0, I tested out
booting a sysinst kernel and it worked fine with the console output.
I then told it not to change boot blocks, but it did anyway, leaving my
system unbootable.

>How-To-Repeat:
	Install 1.6.3 with serial line console boot blocks.
	Copy 2.0's netbsd-INSTALL.gz to its root partition
	boot that kernel, run an upgrade install, tell it not to change
	boot blocks.
	reboot at the end and be unable to boot.

	I was able to type and select kernels in the second-level boot
	program, but no kernel would fully boot and get the network running, and
	no kernel would use the serial console for output.

	I fixed the problem by going to the co-lo facility with a boot
	CD, using it to boot the kernel on the hard disk, then rerunning
	installboot.  Somehow it seems that installboot under sysinst
	when told not to update the boot block failed to work.

	Perhaps sysinst left the sector-zero block from 1.6.3 but installed a
	new /boot?

>Fix:

>Unformatted: