Re: 5.3 LiveCD fixit shell geom(8) environment broken?

Alexey Belousov <[email protected]>
Newsgroups gmane.os.freebsd.devel.geom,gmane.os.freebsd.devel.quality-assurance
Message-ID <[email protected]>
On Tue, 28 Dec 2004 20:30:10 -0800 (PST), Doug White
<[email protected]> 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
> [email protected]          |  www.FreeBSD.org
> _______________________________________________
> [email protected] mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-geom
> To unsubscribe, send any mail to "[email protected]"
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.