5.3 LiveCD fixit shell geom(8) environment broken?

Alexey Belousov abelousov at gmail.com
Wed Dec 29 02:21:57 PST 2004


On Tue, 28 Dec 2004 20:30:10 -0800 (PST), Doug White
<dwhite at gumbysoft.com> wrote:
> On Mon, 27 Dec 2004, Alexey Belousov wrote:
> 
> > hi All,
> >
> > recently, I played with geom in fixit shell and found some oddity:
> >
> > Fixit# geom mirror load
> > Command 'load' not available.
> > Fixit# sysctl kern.module_path
> > kern.module_path: /boot/kernel;/boot/modules
> > Fixit# ls -la /boot/kernel/
> > ls: /boot/kernel/: No such file or directory
> > Fixit# ln -s /mnt2/boot/kernel /boot/
> > Fixit# geom mirror load -v
> > Module available.
> > Done.
> 
> This is making a rather dangerous assumption -- that the installed kernel
> in /mnt2/boot/kernel is binary-compatible with the GENERIC kernel from the
> CD you started the fixit enviornment from.  Its not something that could
> be enabled in the general case.
> 
> Of course if you know they are compatible (i.e., 5.3-RELEASE CD for a
> 5.3-RELEASE system) you could have just loaded the module manually:
> 
> kldload /mnt2/boot/kernel/geom_mirror.ko

diagnostic message "Command 'load' not available." ugly, it should be
"Module not available." isn't it?

> 
> instead of the symlink fiddling. Or updated the module path even.
> 
> > Fixit# geom mirror dump da0
> > Unknown command: dump
> > usage: geom mirror help
> >         geom mirror list
> >         geom mirror load [-v]
> >         geom mirror unload [-v]
> > Fixit# ldd `which geom`
> > /mnt2/sbin/geom:
> >         libgeom.so.2 => /mnt2/lib/libgeom.so.2 (0x28078000)
> >         libsbuf.so.2 => /mnt2/lib/libsbuf.so.2 (0x2807c000)
> >         libbsdxml.so.1 => /mnt2/lib/libbsdxml.so.1 (0x2807e000)
> >         libutil.so.4 => /mnt2/lib/libutil.so.4 (0x2809d000)
> >         libc.so.5 => /mnt2/lib/libc.so.5 (0x280a9000)
> > Fixit# ln -s /mnt2/lib /
> > Fixit# geom mirror dump da0
> > Metadata on da0:
> >         magic: GEOM::MIRROR
> >      version: 1
> >         <---snip--->
> > Fixit#
> >
> > Summary:
> > 1. missing geom_*.ko / invalid kern.module_path
> > fix: sysctl kern.module_path=`sysctl -n kern.module_path`\;/mnt2/boot/kernel
> > or simply ln -s /mnt2/boot/kernel /boot/
> 
> The sysctl change is preferred.

yes, but symlink more handy for me in this situation.
Anyway, at least, kern.module_path must contain /mnt2/boot/kernel by
default, IMHO.

> 
> > 2. missing necessary libs in /lib (hardcoded path?)
> > fix: ln -s /mnt2/lib /
> 
> or preferably 'ldconfig -m /mnt2/lib'.  Again there is a compatibility
> issue that would make this unsafe to do automatically.

ldd `which geom` says no problem with libs (see my first posting), and
'ldconfig -m /mnt2/lib' not working for me too.

> 
> Were you able to test if the geom command works properly, without any
> sysctl or symlink fiddling, if you choose to mount disc #2?  That should
> provide all the necessary pieces without having to pick them out of the
> installed system.

disk #2, 5.3-RELEASE-i386-disc2.iso - the "LiveCD" I boot from and
mount by standart way: 'sysinstall Main Menu' -> 'Fixit' -> '2
CDROM/DVD  Use the "live" filesystem CDROM/DVD' -> 'OK' -> go vty4 to
'fixit' shell.

Finally, why I can't start my repair job immediately after boot and
mount "LiveCD" without doing some nasty tricks&tweaks? ;)

> 
> --
> Doug White                    |  FreeBSD: The Power to Serve
> dwhite at gumbysoft.com          |  www.FreeBSD.org
> _______________________________________________
> freebsd-geom at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-geom
> To unsubscribe, send any mail to "freebsd-geom-unsubscribe at freebsd.org"
>


More information about the freebsd-geom mailing list