FreeBSD 8.4 Boot failure
Hello all, Not sure if this is the correct list. I've run into a problem with one of my servers where it no longer boots. It uses GPT and ZFS for root. Recently, I did an upgrade from 8.2 up to 8.4. That went fine, and I rebooted a few times after that to finish installing updates. During those reboots, I also updated ZFS to the most recent version to take advantage of dedupe and the new compression algorithm. The server has two zpools, zroot which has the system on it, and data, which has everything else (except /usr/home, which is on zroot). I followed this guide a long, long time ago: https://wiki.freebsd.org/RootOnZFS/GPTZFSBoot/RAIDZ1 While deleting several large files, the system stopped responding to SSH/HTTP/everything except ping. Thinking it was just taking a long time to finish, I let it sit for about a day. When it didn't recover, I had to do a hard power-off, as it wasn't accepting key strokes at the console. When it boots back up, it gets past POST and then goes to a black screen with just a spinner in the upper left-hand corner. No text, no logo, nothing else. The spinner used to spin around a few times, now it does nothing. I've managed to get boot zpools loaded up in the fixit console, they don't show any errors. I tried reinstalling the boot blocks from both the fixit live filesystem and also mounting zroot and using the files there in case they were different. Neither one seems to change anything. I've let it sit at the (mostly) blank screen for two hours with no change. I'm at the end of my wits, and haven't been able to find any information as to what could be causing this. There are no error messages at the console, and the only output is that frozen spinner. >From what I remember, I didn't change anything on the zroot zpool during the upgrade, only the data zpool to enable the new compression and dedupe on a couple file systems where they would be useful. I've checked /boot/loader.conf and /etc/fstab, and neither one has changed since it was last working. My only though is if the zroot zpool was borked somehow, but it still loads up without any issue in the fixit console (Though I had to use the -f flag on both zpools when I first loaded them, as they were "still in use" from when the server crashed). All the disks appear to be fine. The server still boots from USB and CD without throwing any errors. Does anyone have any ideas as to what the problem could be, or how I could troubleshoot this Further? ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: FreeBSD 8.4 Boot failure
Luckily, in this case, I had set a cron job long, long ago to do daily snapshots. So I have a snapshot from before the upgrade - There are indeed two different loaders. The newer one matches "zfs" when grepped, the older one does not... But, since it was working before, I restored the older loader and tried to boot again. No dice - it still sticks at that screen where all I see is "/" in the upper left. I also tried putting the older zfsboot and zfsloader back in place (with the old loader) to try and get a different error - still no dice. I'm still stuck wondering if that screen is from FreeBSD attempting to boot, or from the BIOS - but nothing changed for booting, as far as I know. I'll poke through the BIOS more tomorrow as well to see if some option got reset during a power-off. I'll get a more thorough look at what all changed in /boot tomorrow too, and get a list of all the files. It's almost 4am here and I have to work tomorrow :) (well, today I suppose). I'll also check to see if I can find anything about if zfs boot works differently in 8.4 vs 8.3 and older, as I may not have rebooted after the final "freebsd-update install" command (I *think* I did, but my memory gets fuzzy). Thanks for the input! I hope you have a good morning, and I'll let you know tomorrow/later today with anything new and interesting I find :) On Wed, Sep 25, 2013 at 1:45 AM, Terje Elde wrote: > On 25. sep. 2013, at 06:59, Tyler Sweet wrote: >> I tried reinstalling the boot blocks from both >> the fixit live filesystem and also mounting zroot and using the files >> there in case they were different. > > Disclaimer: I haven't gotten (enough) morning-coffee yet, but... > > Disclaimer 2: at times tracking how zfs-booting is done in the different > versions can be a bit tricky. This is a moving target, and I've lost track of > the 8-branch. > > That said, assuming you have the correct bootcode (gptzfsboot), here's what > might have happened: > > You installed 8.2, with a loader supporting zfs. Then you upgraded your > /boot-stuffs, and bootcode on disk (correctly), but got left with a loader > without zfs support. Then tried to upgrade the bootcode, but you're still > left with a loader not supporting zfs. > > If I recall correctly, then the zfs-bootcode for 9+ will use "zfsloader" > (supporting zfs and built by default), while earlier versions depend on > "loader" with zfs support (built without by default). > > If that's the case, you could dump LOADER_ZFS_SUPPORT into /etc/make.conf and > rebuild/reinstall it, or install /boot/loader from the fixit (if it has zfs > support in 8.4). > > That's my first thought at least... If that doesn't fix it (remember backups > of any files you replace or upgrade), it'd be interesting to see the output > of: > ls -l /boot/*loader /boot/*boot > On the /boot you're using. Anything that didn't get built or installed? > > Also, did you snapshot your zfs before upgrading? Could be a working > /boot/loader there, which might be the easiest way to get the system up, > before rebuilding with ZFS-capable loader... if I'm right, which isn't a > given (ref disclaimers). > > Terje > ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: FreeBSD 8.4 Boot failure
Well, I wasn't able to continue troubleshooting. I took the opportunity that the server was already down to upgrade the BIOS. HP kindly does not provide any checks or warnings letting you know that you need to do a stepped upgrade, so the server is bricked. *sigh*. So this likely won't get investigated more. I'll be setting up a new server and attempting to import the zpools there. Thank for your advice anyhow! If this happens again on another server, I'll see about trying more things. On Wed, Sep 25, 2013 at 3:46 AM, Tyler Sweet wrote: > Luckily, in this case, I had set a cron job long, long ago to do daily > snapshots. So I have a snapshot from before the upgrade - There are > indeed two different loaders. The newer one matches "zfs" when > grepped, the older one does not... But, since it was working before, I > restored the older loader and tried to boot again. No dice - it still > sticks at that screen where all I see is "/" in the upper left. > > I also tried putting the older zfsboot and zfsloader back in place > (with the old loader) to try and get a different error - still no > dice. I'm still stuck wondering if that screen is from FreeBSD > attempting to boot, or from the BIOS - but nothing changed for > booting, as far as I know. I'll poke through the BIOS more tomorrow as > well to see if some option got reset during a power-off. > > I'll get a more thorough look at what all changed in /boot tomorrow > too, and get a list of all the files. It's almost 4am here and I have > to work tomorrow :) (well, today I suppose). I'll also check to see if > I can find anything about if zfs boot works differently in 8.4 vs 8.3 > and older, as I may not have rebooted after the final "freebsd-update > install" command (I *think* I did, but my memory gets fuzzy). > > Thanks for the input! I hope you have a good morning, and I'll let you > know tomorrow/later today with anything new and interesting I find :) > > On Wed, Sep 25, 2013 at 1:45 AM, Terje Elde wrote: >> On 25. sep. 2013, at 06:59, Tyler Sweet wrote: >>> I tried reinstalling the boot blocks from both >>> the fixit live filesystem and also mounting zroot and using the files >>> there in case they were different. >> >> Disclaimer: I haven't gotten (enough) morning-coffee yet, but... >> >> Disclaimer 2: at times tracking how zfs-booting is done in the different >> versions can be a bit tricky. This is a moving target, and I've lost track >> of the 8-branch. >> >> That said, assuming you have the correct bootcode (gptzfsboot), here's what >> might have happened: >> >> You installed 8.2, with a loader supporting zfs. Then you upgraded your >> /boot-stuffs, and bootcode on disk (correctly), but got left with a loader >> without zfs support. Then tried to upgrade the bootcode, but you're still >> left with a loader not supporting zfs. >> >> If I recall correctly, then the zfs-bootcode for 9+ will use "zfsloader" >> (supporting zfs and built by default), while earlier versions depend on >> "loader" with zfs support (built without by default). >> >> If that's the case, you could dump LOADER_ZFS_SUPPORT into /etc/make.conf >> and rebuild/reinstall it, or install /boot/loader from the fixit (if it has >> zfs support in 8.4). >> >> That's my first thought at least... If that doesn't fix it (remember >> backups of any files you replace or upgrade), it'd be interesting to see the >> output of: >> ls -l /boot/*loader /boot/*boot >> On the /boot you're using. Anything that didn't get built or installed? >> >> Also, did you snapshot your zfs before upgrading? Could be a working >> /boot/loader there, which might be the easiest way to get the system up, >> before rebuilding with ZFS-capable loader... if I'm right, which isn't a >> given (ref disclaimers). >> >> Terje >> ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"