More gmirror problems (Re: "gmirror load" broken in 8.1 memstick)
perryh at pluto.rain.com
perryh at pluto.rain.com
Mon Sep 6 11:12:50 UTC 2010
I wrote:
> The good news is ...
>
> Fixit# ln -s /dist/boot/kernel /boot
>
> after which "gmirror load" works, creating /dev/mirror/gm0{,a,b}.
and the bad news is that it still doesn't work:
* "gmirror load" did create /dev/mirror/gm0{,a,b}, and it produced
no output on stdout or stderr, but it appended a couple of lines
to dmesg and the second does not look at all promising:
GEOM_MIRROR: Device mirror/gm0 launched (1/1).
GEOM_MIRROR: Cannot add disk ad0s2a to gm0 (error=17).
17 is defined in sys/errno.h as EEXIST /* File exists */
What can this mean? Of course ad0s2a and gm0 exist: ad0s2a is
the (so far only) provider for gm0, which was just instantiated.
By a different test, that error message may be bogus (long lines
reformatted):
Fixit# ls -la /dev/mirror
total 1
dr-xr-xr-x 2 root 0 512 Sep 6 08:18 ./
dr-xr-xr-x 8 root 0 512 Sep 6 08:08 ../
crw-r----- 1 root operator 0, 78 Sep 6 08:15 gm0
crw-r----- 1 root operator 0, 79 Sep 6 08:15 gm0a
crw-r----- 1 root operator 0, 80 Sep 6 08:15 gm0b
Fixit# file -s /dev/mirror/* /dev/ad0s2a
/dev/mirror/gm0: Unix Fast File system [v2] (little-endian) last
mounted on /mnt/z, last written at Sun Sep 5 03:24:40 2010, clean
flag 1, readonly flag 0, number of blocks 154976879, number of
data blocks 150098746, number of cylinder groups 1648, block size
16384, fragment size 2048, average file size 16384, average number
of files in dir 64, pending blocks to free 0, pending inodes to
free 0, system-wide uuid 0, minimum percentage of free blocks 8,
TIME optimization
/dev/mirror/gm0a: Unix Fast File system [v2] (little-endian) last
mounted on /mnt/z, last written at Sun Sep 5 03:24:40 2010, clean
flag 1, readonly flag 0, number of blocks 154976879, number of
data blocks 150098746, number of cylinder groups 1648, block size
16384, fragment size 2048, average file size 16384, average number
of files in dir 64, pending blocks to free 0, pending inodes to
free 0, system-wide uuid 0, minimum percentage of free blocks 8,
TIME optimization
/dev/mirror/gm0b: ERROR: cannot read `/dev/mirror/gm0b'
(Input/Output error)
/dev/ad0s2a: Unix Fast File system [v2] (little-endian) last
mounted on /mnt/z, last written at Sun Sep 5 03:24:40 2010, clean
flag 1, readonly flag 0, number of blocks 154976879, number of
data blocks 150098746, number of cylinder groups 1648, block size
16384, fragment size 2048, average file size 16384, average number
of files in dir 64, pending blocks to free 0, pending inodes to
free 0, system-wide uuid 0, minimum percentage of free blocks 8,
TIME optimization
This sure _looks_ as if mirror/gm0 and mirror/gm0a are seeing the
data on ad0s2a, so maybe it's working after all. But:
* After exiting from Fixit, and having sysinstall rescan devices so
as to become aware of /dev/mirror/gm0*, gm0 is not in the disk
list for either Partition (slice) or Label. I even tried:
Fixit# ( cd /dev && ln -s mirror/* . && ll gm* )
lrwxr-xr-x 1 root 0 10 Sep 6 10:48 gm0@ -> mirror/gm0
lrwxr-xr-x 1 root 0 10 Sep 6 10:48 gm0a@ -> mirror/gm0a
lrwxr-xr-x 1 root 0 10 Sep 6 10:48 gm0b@ -> mirror/gm0b
in case sysinstall looks only in /dev itself and not in any
subdirectories, and gm0 is *still* not in either list. How
do I get sysinstall to see it?
More information about the freebsd-questions
mailing list