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]" >