Andy Ruhl <acruhl%gmail.com@localhost> writes: > And INSTALL_FLOPPY looks like this: > > (andy@)[/usr/src/sys/arch/i386/conf] $ head -1 INSTALL_FLOPPY && grep > ahci INSTALL_FLOPPY > # $NetBSD: INSTALL_FLOPPY,v 1.1.16.4 2013/06/19 07:50:15 bouyer Exp $ > #ahcisata* at pci? dev ? function ? # AHCI SATA controllers > > So it appears that someone thinks there shouldn't be AHCI for SATA in > the install kernel. My result was the install kernel didn't detect my > SATA disks until I rebooted and put them in IDE mode in the BIOS. And > they wouldn't work with the production system until I rebooted and set > them back to AHCI (fsbn error, I didn't write it down). Somewhere > between slightly and mildly annoying. I suspect that the theory is that machines where people use floppies do not have AHCI, and that machines with AHCI will have a CDROM drive. I guess the questions are: Why are you using INSTALL_FLOPPY, rather than INSTALL on a CD? If you are updating from older netbsd-5 to newer netbsd-5, do you really need to boot like that? To point 2, I use (and partially wrote, and asked others to write) pkgsrc/sysutils/etcmanage, which has an INSTALL-NetBSD script that unpacks a build on a running system. This is pretty trivial, and the only tricky part is to use this order: back up and unpack kernel unpack sets: everthing but base and etc/xetc base DO NOT unpack etc/xetc The ordering reason is that when crossing from 4 to 5, there were new syscalls and libc used them, and if you unpacked the 5 base (including libc) on a system running a 4 kernel, nothing worked. But if you already have the kernel, you can push reset. Of course you should unpack the kernel and reboot first. The reason to do base last is that the commands to unpack base will still work when the rest have been updated. So even doing a cross-branch update and forgetting to boot the new kernel, the above is a one-reset-button method. The point of etcmanage is to decide how to update /etc. It's hard to figure out etcmanage, but once done people seem to like it. I update systems along the stable branch with this all the time, with no manual intervention - just run the INSTALL-NetBSD script and reboot. The BUILD-NetBSD script does the build and prepares some etcmanage data. There is a different package sysbuild/sysupdate that addresses much of the same issues. You can of course change the INSTALL_FLOPPY kernel config and do a full release build and use the kernel you built.
Attachment:
pgpPqVQ9rtVSt.pgp
Description: PGP signature