misc/68150: make installkernel fails when /usr is mounted read-only
Eugene Grosbein
eugen at grosbein.pp.ru
Sun Jun 20 17:40:19 GMT 2004
>Number: 68150
>Category: misc
>Synopsis: make installkernel fails when /usr is mounted read-only
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sun Jun 20 17:40:19 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Eugene Grosbein
>Release: FreeBSD 4.10-STABLE i386
>Organization:
Svyaz Service JSC
>Environment:
System: FreeBSD grosbein.pp.ru 4.10-STABLE FreeBSD 4.10-STABLE #3: Mon Jun 21 01:10:56 KRAST 2004 eu at grosbein.pp.ru:/usr/local/obj/usr/local/src/sys/DADV i386
>Description:
make installkernel tries to write to /usr, it did not in 4.9-RELEASE.
The change occured in revision 1.416 (and MFC 1.141.2.66)
of src/Makefile.inc1.
The installkernel target is distinct target, not just a part
of 'global system upgrade' and in my humble opinion there should
be a way to install a kernel from /usr/obj/... without
'make hierarchy' overhead. Think of read-only /usr. Think of
installing a kernel over NFS. Think of very slow channels and
of amount of transfered data.
This change is some kind of regression.
>How-To-Repeat:
With /usr mounted read-only:
# make installkernel
--------------------------------------------------------------
>Fix:
Make an option allowing to install a kernel only - especially
when MODULES_WITH_WORLD is defined.
>Release-Note:
>Audit-Trail:
>Unformatted:
>>> Making hierarchy
--------------------------------------------------------------
cd /usr/local/src; MAKEOBJDIRPREFIX=/usr/obj MACHINE_ARCH=i386 MACHINE=i386 OBJFORMAT_PATH=/usr/obj/usr/local/src/i386/usr/libexec GROFF_BIN_PATH=/usr/obj/usr/local/src/i386/usr/bin GROFF_FONT_PATH=/usr/obj/usr/local/src/i386/usr/share/groff_font GROFF_TMAC_PATH=/usr/obj/usr/local/src/i386/usr/share/tmac PERL5LIB=/usr/obj/usr/local/src/i386/usr/libdata/perl/5.00503 PATH=/usr/obj/usr/local/src/i386/usr/sbin:/usr/obj/usr/local/src/i386/usr/bin:/usr/obj/usr/local/src/i386/usr/games:/sbin:/bin:/usr/s bin:/usr/bin make -f Makefile.inc1 hierarchy
cd /usr/local/src/etc; make distrib-dirs
set - `grep "^[a-zA-Z]" /usr/local/src/etc/locale.deprecated`; while [ $# -gt 0 ] ; do for dir in /usr/share/locale /usr/share/nls /usr/local/share/nls; do test -d /${dir} && cd /${dir}; test -L "$2" && rm -rf "$2"; test \! -L "$1" && test -d "$ 1" && mv "$1" "$2"; done; shift; shift; done
mtree -deU -f /usr/local/src/etc/mtree/BSD.root.dist -p /
etc/X11 changed
type expected dir found link
mtree -deU -f /usr/local/src/etc/mtree/BSD.var.dist -p /var
tmp changed
type expected dir found link
crash changed
type expected dir found link
./tmp/vi.recover missing (directory not created: File exists)
mtree -deU -f /usr/local/src/etc/mtree/BSD.usr.dist -p /usr
mtree -deU -f /usr/local/src/etc/mtree/BSD.include.dist -p /usr/include
mtree -deU -f /usr/local/src/etc/mtree/BSD.include.dist -p /usr/libdata/perl/5.00503/mach
mtree -deU -f /usr/local/src/etc/mtree/BSD.sendmail.dist -p /
cd /; rm -f /sys; ln -s usr/src/sys sys
cd /usr/share/man/en.ISO8859-1; ln -sf ../man* .
ln: ./man1: Read-only file system
ln: ./man1aout: Read-only file system
ln: ./man2: Read-only file system
ln: ./man3: Read-only file system
ln: ./man4: Read-only file system
ln: ./man5: Read-only file system
ln: ./man6: Read-only file system
ln: ./man7: Read-only file system
ln: ./man8: Read-only file system
ln: ./man9: Read-only file system
ln: ./mann: Read-only file system
*** Error code 1
Stop in /usr/local/src/etc.
*** Error code 1
Stop in /usr/local/src.
*** Error code 1
Stop in /usr/local/src.
*** Error code 1
Stop in /usr/local/src.
Script done on Mon Jun 21 01:19:28 2004
More information about the freebsd-bugs
mailing list