Rafal Pratnicki
2009-Jan-02 10:56 UTC
[zfs-discuss] Error 16: Inconsistent filesystem structure after a change in the system
I''ve hit this bug on my home machine couple of times and finally decided to log it since I''ve spend 2 days configuring my "OpenSolaris 2008.11 snv_101b_rc2 X86" and after installing the SUNWsmbfskr package I ended up in the grub> menu. The package contains a necessary module for CIFS. After pkg install SUNWsmbfskr, I rebooted the box. There was no grub menu anymore but only the grub prompt. I managed to boot it manually using another BE. I was unable to use the original BE getting this error message during the manual boot: bootfs rpool/ROOT/rp01 OK kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS OK module$ /platform/i86pc/$ISADIR/boot_archive after this command I got the error: Error 16: Inconsistent filesystem structure. I had to use a different BE to boot up the system. I''ve tried to repair boot_archive from the rp01 BE but unsuccessfully every time ending up in the grub menu forced to manually boot the system using a different BE. My unsuccessful method to rebuild boot_archive: # mkdir /a # bootadm mount rp01 /a # rm /a/platform/i86pc/boot_archive # bootadm update-archive -f -R /a Creating boot_archive for /a updating /a/platform/i86pc/amd64/boot_archive updating /a/platform/i86pc/boot_archive # beadm unmount rp01 # reboot rafal at panda:~$ beadm list BE Active Mountpoint Space Policy Created -- ------ ---------- ----- ------ ------- opensolaris - - 8.23M static 2008-12-16 21:04 opensolaris-1 - - 121.78M static 2008-12-20 12:40 opensolaris-2 - - 8.21M static 2008-12-21 01:57 opensolaris-3 - - 67.31M static 2008-12-21 15:12 opensolaris-4 - - 306.0K static 2008-12-21 20:46 opensolaris-5 - - 165.07M static 2008-12-21 20:49 rp01 - - 140.59M static 2008-12-22 21:38 rp02 NR / 3.48G static 2008-12-23 00:06 update - - 13.59M static 2008-12-20 12:25 To reproduce the bug on my system is very simple just change/install/un-install anything in the kernel directory or try to create, activate a new BE using the beadm command and you will end up in the grub prompt (no grub menu available). To rescue from this stage only a manual boot or an Osol2008.11 Live CD. Could you please provide me with a method to recover the rp01 BE. I''ve spend to much time configuring it and don''t want to loose the changes. But the method must be different then the one I provided above as the above one doesn''t work. Also trying to create a new BE from the rp01 BE doesn''t work: rafal at panda:~$ pfexec su - Sun Microsystems Inc. SunOS 5.11 snv_101b November 2008 You have new mail. root at panda:~# export BE_PRINT_ERR=true root at panda:~# beadm create -e rp01 rp03 be_copy: failed to snapshot BE (rpool/ROOT/rp01 at rp03): dataset is busy Unable to create rp03. Mount busy. root at panda:~# As you can see the rp01 BE suppose to be a non-active BE name but somehow it''s not. I''ve checked the disk and there are no errors: rafal at panda:~$ zpool status -xv all pools are healthy rafal at panda:~$ zpool status pool: rpool state: ONLINE scrub: scrub completed after 2h51m with 0 errors on Mon Dec 29 02:58:19 2008 config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 c3d0s0 ONLINE 0 0 0 errors: No known data errors rafal at panda:~$ The next day I recovered the system meaning I have the grub menu and the system boots up fine automatically without any manual intervention. After that the update manager recognized that on pkg.opensolaris.org there is an update for my system. It was the entire package v0.5.11-0.101. So I clicked the update all button, a new window popped up "Create new boot environment". This should create an update clone of the active BE. After a reboot the same story. No grub menu available, only the grub> prompt. The system didn''t boot automatically anymore. The error message is the same: Error 16: Inconsistent filesystem structure -- This message posted from opensolaris.org
Rafal Pratnicki
2009-Jan-03 20:11 UTC
[zfs-discuss] Error 16: Inconsistent filesystem structure after a change in the system
I recovered the system and created the opensolaris-12 BE. The system was working fine. I had the grub menu, it was fully recovered. At this stage I decided to create a new BE but leave the opensolaris-12 BE as an active BE and manually boot to the opensolaris-13 BE. So the situation looked like this: beadm list opensolaris-12 R / 3.73G static 2009-01-03 14:44 opensolaris-13 N - 120.74M static 2009-01-03 14:51 Running the opensolaris-13 BE I installed 2 packages: SUNWsmbs SUNWsmbskr responsible for the solaris CIFS service. I reboot the box and it still was fine. I had the grub menu and the boot_archive wasn''t corrupted. After the reboot I configured the solaris CIFS service and exchanged some data between the opensolaris and a laptop via a network. I''ve been doing this for 3h. Then I decided to reboot the box again to see if it''s still OK. I used init 6, but this time I ended up in the grub> menu. When I manually wanted to boot it looked like this: bootfs rpool/ROOT/opensolaris-13 OK kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS Error 16: Inconsistent filesystem structure I had to use rpool/ROOT/opensolaris-12 and it was fine. I didn''t even get to load the boot_archive module. Usually it breaks during the boot_archive module load. I''m unable to use the opensolaris-13 BE and I''ve lost the CIFS configuration as I can''t boot the BE. Can someone wise help me to narrow down this bug. Thanks in advance Rafal -- This message posted from opensolaris.org
Jan Spitalnik
2009-Jan-04 00:02 UTC
[zfs-discuss] Error 16: Inconsistent filesystem structure after a change in the system
Hey Rafal, this sounds like missing GANG block support in GRUB. Checkout putback log for snv_106 (afaik), there''s a bug where grub fails like this. Cheers, Spity On 3.1.2009, at 21:11, Rafal Pratnicki wrote:> I recovered the system and created the opensolaris-12 BE. The system > was working fine. I had the grub menu, it was fully recovered. > At this stage I decided to create a new BE but leave the > opensolaris-12 BE as an active BE and manually boot to the > opensolaris-13 BE. > So the situation looked like this: > beadm list > opensolaris-12 R / 3.73G static 2009-01-03 14:44 > opensolaris-13 N - 120.74M static 2009-01-03 14:51 > Running the opensolaris-13 BE I installed 2 packages: SUNWsmbs > SUNWsmbskr responsible for the solaris CIFS service. I reboot the > box and it still was fine. I had the grub menu and the boot_archive > wasn''t corrupted. After the reboot I configured the solaris CIFS > service and exchanged some data between the opensolaris and a laptop > via a network. I''ve been doing this for 3h. Then I decided to reboot > the box again to see if it''s still OK. I used init 6, but this time > I ended up in the grub> menu. When I manually wanted to boot it > looked like this: > bootfs rpool/ROOT/opensolaris-13 > OK > kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS > Error 16: Inconsistent filesystem structure > I had to use rpool/ROOT/opensolaris-12 and it was fine. > I didn''t even get to load the boot_archive module. Usually it breaks > during the boot_archive module load. > I''m unable to use the opensolaris-13 BE and I''ve lost the CIFS > configuration as I can''t boot the BE. > > Can someone wise help me to narrow down this bug. > Thanks in advance > Rafal > -- > This message posted from opensolaris.org > _______________________________________________ > zfs-discuss mailing list > zfs-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss