| Summary: | Mergemaster Fails with R/O NFS Mounted /usr/src | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Base System | Reporter: | Cy Schubert <Cy.Schubert> | ||||
| Component: | bin | Assignee: | Doug Barton <dougb> | ||||
| Status: | Closed FIXED | ||||||
| Severity: | Affects Only Me | ||||||
| Priority: | Normal | ||||||
| Version: | Unspecified | ||||||
| Hardware: | Any | ||||||
| OS: | Any | ||||||
| Attachments: |
|
||||||
On Tue, 7 Nov 2000 Cy.Schubert@uumail.gov.bc.ca wrote: > >Description: > > Installing 4.2-BETA on a system from read-only NFS mounted /usr/src and > /usr/obj, mergemaster fails with the following: > > [lines removed] > cd /usr/share/nls; set - `cat /usr/opt/cvs-420b-001106/src/etc/locale.a > lias`; while [ $# -gt 0 ] ; do rm -rf "$1"; ln -s "$2" "$1"; > shift; shift; done; rm -rf POSIX; ln -s C POSIX > rm: ASCII: Read-only file system > *** Error code 1 I think this can only fail if /usr/share/nls is read-only. > >Fix: > > Based upon the diffs between mergemaster 1.6.2.3 and 1.6.2.4, here's my > workaround: > > --- src/usr.sbin/mergemaster/mergemaster.sh.orig Wed Nov 1 00:34:30 2000 > +++ src/usr.sbin/mergemaster/mergemaster.sh Tue Nov 7 06:38:46 2000 > @@ -428,7 +428,7 @@ > esac > > { cd ${SOURCEDIR} && > - make DESTDIR=${DESTDIR} distrib-dirs && > + touch .foobar && rm .foobar && make DESTDIR=${DESTDIR} distrib-dirs > make DESTDIR=${TEMPROOT} distrib-dirs && > make DESTDIR=${TEMPROOT} -DNO_MAKEDEV distribution;} || > { echo ''; Making distrib-dirs has other problems. It updates ${DESTDIR} without asking, and shows bugs in the support for the SHARED=symlinks case. Bruce In message <Pine.BSF.4.21.0011082039500.4925-100000@besplex.bde.org>, Bruce Eva ns writes: > On Tue, 7 Nov 2000 Cy.Schubert@uumail.gov.bc.ca wrote: > > > >Description: > > > > Installing 4.2-BETA on a system from read-only NFS mounted /usr/src and > > /usr/obj, mergemaster fails with the following: > > > > [lines removed] > > cd /usr/share/nls; set - `cat /usr/opt/cvs-420b-001106/src/etc/locale.a > > lias`; while [ $# -gt 0 ] ; do rm -rf "$1"; ln -s "$2" "$1"; > > shift; shift; done; rm -rf POSIX; ln -s C POSIX > > rm: ASCII: Read-only file system > > *** Error code 1 > > I think this can only fail if /usr/share/nls is read-only. That is correct. > > > >Fix: > > > > Based upon the diffs between mergemaster 1.6.2.3 and 1.6.2.4, here's my > > workaround: > > > > --- src/usr.sbin/mergemaster/mergemaster.sh.orig Wed Nov 1 00:34:30 200 > 0 > > +++ src/usr.sbin/mergemaster/mergemaster.sh Tue Nov 7 06:38:46 2000 > > @@ -428,7 +428,7 @@ > > esac > > > > { cd ${SOURCEDIR} && > > - make DESTDIR=${DESTDIR} distrib-dirs && > > + touch .foobar && rm .foobar && make DESTDIR=${DESTDIR} distrib-dirs > > make DESTDIR=${TEMPROOT} distrib-dirs && > > make DESTDIR=${TEMPROOT} -DNO_MAKEDEV distribution;} || > > { echo ''; > > Making distrib-dirs has other problems. It updates ${DESTDIR} without > asking, and shows bugs in the support for the SHARED=symlinks case. Then it should be removed, rather than my test for a r/o fs. > > Bruce > Regards, Phone: (250)387-8437 Cy Schubert Fax: (250)387-5766 Team Leader, Sun/DEC Team Internet: Cy.Schubert@osg.gov.bc.ca Open Systems Group, ITSD, ISTA Province of BC State Changed From-To: open->closed This is fixed in -current, will be MFC'ed as soon as I get approval. Responsible Changed From-To: freebsd-bugs->dougb mm is my baby |
Installing 4.2-BETA on a system from read-only NFS mounted /usr/src and /usr/obj, mergemaster fails with the following: [lines removed] mtree -deU -f /usr/opt/cvs-420b-001106/src/etc/mtree/BSD.include.dist -p /usr/libdata/perl/5.00503/mach cd /; rm -f /sys; ln -s usr/src/sys sys cd /usr/share/locale; set - `cat /usr/opt/cvs-420b-001106/src/etc/local e.alias`; while [ $# -gt 0 ] ; do rm -rf "$1"; ln -s "$2" "$1"; shift; shift; done cd /usr/share/nls; set - `cat /usr/opt/cvs-420b-001106/src/etc/locale.a lias`; while [ $# -gt 0 ] ; do rm -rf "$1"; ln -s "$2" "$1"; shift; shift; done; rm -rf POSIX; ln -s C POSIX rm: ASCII: Read-only file system *** Error code 1 Stop in /usr/opt/cvs-420b-001106/src/etc. *** FATAL ERROR: Cannot 'cd' to /usr/src/etc and install files to the temproot environment cwtest# Fix: Based upon the diffs between mergemaster 1.6.2.3 and 1.6.2.4, here's my workaround: How-To-Repeat: See description.