sysinstall creates corrupt filesystems after repartitioning
sam at errno.com
Fri Mar 2 09:45:51 UTC 2007
Steven Hartland wrote:
> I've been repartitioning some of our machines here and
> found that using the following method sysinstall creates
> corrupt filesystems.
> 1. Boot a machine using an nfs mounted /usr
> 2. Run: sysctl kern.geom.debugflags=16 to enable writing
> to the disk mbr
> 3. run sysinstall, Customise -> Label
> 4. Delete the /usr partition e.g. /dev/da0s1f
> 5. Create two partitions from the space left as ufs with
> mount points /usr and /data
> 6. Write the changes.
> Now two strange things happen:
> 1. /usr ends up mounted twice once from nfs and once
> from the new ufs. This requires umount -f /dev/da0s1f to
> correct but doesnt always work properly requiring a reboot
> to restore system functionality.
> 2. The FS on both partitions is totally corrupt even fsck
> cant repair them, even after a reboot.
> So the question is why would sysinstall create two corrupt
> FS's with this procedure?
> Fixing is trivial just rerun the newfs commands and all
> is good but its really odd that they should be corrupt
> in the first place and caught me out big time when I first
> did this as I had restored a full dump back onto /usr
> and rebooted only for it to blow up horribly as the fs
> was so badly corrupted.
There's a debug flag you can turn on somewhere in the sysinstall menus.
It may help diagnose what sysinstall is doing wrong by checking the log
msgs. I find sysinstall is best diagnosed inside qemu or vmware so you
destructively operate on disk images w/o hosing a real system.
More information about the freebsd-stable