Skip site navigation (1)Skip section navigation (2)
Date:      Wed,  4 Apr 2007 18:20:23 -0700
From:      kayve@sfsu.edu
To:        stable@freebsd.org
Subject:   Re: single user mode buildwerld failures
Message-ID:  <1175736023.46144ed72a655@webmail.sfsu.edu>
In-Reply-To: <1175735966.46144e9e6c4f4@webmail.sfsu.edu>
References:  <20070403020736.8549C241BF@freebsd-stable.sentex.ca> <Pine.SOC.4.64.0704040855350.15464@libra.sfsu.edu> <20070404125452.M18358@fledge.watson.org> <Pine.SOC.4.64.0704040959490.15464@libra.sfsu.edu> <Pine.SOC.4.64.0704041006060.15464@libra.sfsu.edu> <14989d6e0704041034t1e197592jbd7d609ddd1d0765@mail.gmail.com> <1175735966.46144e9e6c4f4@webmail.sfsu.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Quoting kayve@sfsu.edu:

> Quoting Christian Walther <cptsalek@gmail.com>:
> 
> > On 04/04/07, KAYVEN RIESE <kayve@sfsu.edu> wrote:
> 
> > Secondly, it appears that you messed up your system pretty badly, I'm
> > not sure that it can be fixed. On the other hand, it just might be
> > that you missed a few steps.
> > 
> > For example, when you're in single user mode the root filesystem is
> > mounted read only, which means that you can't write to it. Anything
> > related to the upgrade process (installworld, mergemaster...) has to
> > fail.
> 
> point of info.. my bad about not communicating correctly.. you are 
> referring to the steps "fsck -p" and "mount -a" are you not?  i went
> into single user mode one time without these steps and i think nothing
> happened.  i was unable to accomplish the task it told me that the
> disk was not readable.  i told this to gheist@experts-exchange.com and
> he told me to include the steps.  he told me something like "maybe you
> will need mergemaster or something," so what i did was a hybrid between
> his advice and what it said in /usr/src/UPDATING.  i did his "make WORLD"
> that seemed to do nothing, and did i believe /usr/src/make buildwerld
> 
> oops.  i just  realized.  you can't even read the stuff on experts-exchange,
> can you? i was following this advice:
> 
> gheist:That's it! Cool!
> 
> Your system does not yet have "csup" utility, so we will proceed with usable
> 
> replacement installation.
> 
> : cd /usr/ports
> 
> Your system does not yet have "csup" utility, so we will proceed with usable
> 
> replacement installation.
> 
> : cd /usr/ports/*/cvsup-without-gui
> : make deinstall distclean ; make install clean
> : cd ; rehash
> 
> : cvsup
> <you should see help text of utility>
> 
> Now we should make decision of FreeBSD version to install
> 6.1-RELEASE -> one you have
> RELENG_6_1 -> yours with all security patches
> RELENG_6_2 -> latest release with patched
> RELENG_6 -> latest stable release which will become next release when time
> comes
> 
> now create file called "supfile" with fillowing content:
> 
> *default tag=RELENG_6
> # replace .se. with your closest toplevel domain like .us.
> *default host=cvsup.se.freebsd.org
> *default prefix=/usr
> *default base=/usr/local/etc/cvsup
> *default release=cvs
> *default delete
> *default use-rel-suffix
> *default compress
> 
> ports-all tag=.
> src-all
> 
> # EndOfFile
> 
> now create temporary directory for update temporary files:
> 
> : mkdir -p /usr/local/etc/cvsup
> 
> and now update!
> 
> : cvsup supfile
> 
> there should be output as updating your files commences/it will take long
> first 
> time, but it will finish/.
> 
> now that you are finished proceed to installing new kernel:
> 
> : cd /usr/src/sys/i386/conf
> : config GENERIC
> : cd ../compile/GENERIC
> : make cleandepend ; make depend ; make && make install
> 
> if successful do far - type
> : shutdown -r now
> 
> Now that you have rebooted check if all of your essential services are 
> running...
> And check that "uname -a" output has changed to 6.2-RELEASE-p1 or similar
> 
> Now you have good new kernel and can proceed to installing new "world"
> 
> cd /usr/src ; make buildworld
> 
> /this one takes long/
> 
> If this one succeeds you should reboot into single-user mode to replace all
> the 
> files
> 
> : shutdown -r now
> 
> <print out everything past this line>
> 
> at the boot menu type "4" - boot into single-user mode
> 
> after kernel messages it asks for shell - default is fine
> 
> 
> check filesystems(can take long time after unclean shutdown):
> : fsck -p
> mount filesystems:
> : mount -a
> install default environment:
> : su -
> install WORLD:
> : cd /usr/src ; make installworld
> 
> you may need to operate "mergemaster" at this point if install asks for it
> after successful installworld type:
> :reboot
> 
> <no need to print after this line>
> 
> 
> that's how far i got.  there seemed to be a discrepency with what i 
> read in /usr/src/UPDATING  i noted that here:
> 
> btw.. i noted this:
> 
> bsd@[/usr/ports/net/cvsup-without-gui]#make deinstall distclean; make install
> 
> clean
> linking cvpasswd
> ===>  Installing for cvsup-without-gui-16.1h_2
> 
> ===>  cvsup-without-gui-16.1h_2 conflicts with installed package(s): 
>       cvsup-16.1h_2
> 
>       They install files into the same place.
>       Please remove them first with pkg_delete(1).
> *** Error code 1
> 
> Stop in /usr/ports/net/cvsup-without-gui.
> 
> oh shoot. do i figger this out myself?
> 
>       They install files into the same place.
>       Please remove them first with pkg_delete(1).
> *** Error code 1
> 
> Stop in /usr/ports/net/cvsup-without-gui.
> bsd@[/usr/ports/net/cvsup-without-gui]#pkg_delete cvsup-16.1h_2
> 
> 
> and proceeded from that step.
> 
> btw.. i have a "PWD" promt that shows where i am:
> 
> # EndOfFile
> bsd@[/root]#cd /usr/src/sys/i386/conf
> bsd@[/usr/src/sys/i386/conf]#config GENERIC
> Kernel build directory is ../compile/GENERIC
> Don't forget to do ``make cleandepend; make depend''
> bsd@[/usr/src/sys/i386/conf]#make cleandepend; make depend
> 
> EndOfFile
> bsd@[/root]#cd /usr/src/sys/i386/conf
> bsd@[/usr/src/sys/i386/conf]#config GENERIC
> Kernel build directory is ../compile/GENERIC
> Don't forget to do ``make cleandepend; make depend''
> bsd@[/usr/src/sys/i386/conf]#make cleandepend; make depend
> make: don't know how to make cleandepend. Stop
> make: don't know how to make depend. Stop
> bsd@[/usr/src/sys/i386/conf]#cd ../compile/GENERIC 
> bsd@[/usr/src/sys/i386/compile/GENERIC]#make cleandepend; make depend
> 
> : don't know how to make cleandepend. Stop
> make: don't know how to make depend. Stop
> bsd@[/usr/src/sys/i386/conf]#cd ../compile/GENERIC 
> bsd@[/usr/src/sys/i386/compile/GENERIC]#make cleandepend; make depend
> rm -f .depend
> cd ../../../modules;
> MAKEOBJDIRPREFIX=/usr/src/sys/i386/compile/GENERIC/modules 
> KMODDIR=/boot/kernel DEBUG_FLAGS="-g" MACHINE=i386 
> KERNBUILDDIR="/usr/src/sys/i386/compile/GENERIC" make  cleandepend
> 
> okay.. i had a good night's sleep now. drinking my irish kawfee.  here is my
> 
> uname
> 
> /root/.zshrc:17: unknown file attribute
> bsd@[/root]#uname -a
> FreeBSD bsd 6.2-STABLE FreeBSD 6.2-STABLE #0: Thu Mar 29 21:44:41 PST 2007   
>  
> root@bsd:/usr/src/sys/i386/compile/GENERIC  i386
> bsd@[/root]#
> 
> i guess that looks good.
> 
> bsd@[/root]#cd /usr/src; make buildworld
> 
> 
> --------------------------------------------------------------
> >>> Rebuilding the temporary build tree
> --------------------------------------------------------------
> rm -rf /usr/obj/usr/src/tmp
> 
> 
> install WORLD
> 
> failed.  usage message..
> 
> then cd /usr/src; make installwerld also failed.
> 
> it said "required audit group is missing.. see /usr/src/UPDATING"
> 
> 
> so here is where i hybridize.  i posted contents of /usr/src/UPDATING:
> 
> i am going to reboot into single user mode and follow these instructions 
> from /usr/src/UPDATING
> now:
> 
>         To rebuild everything and install it on the current system.
>         -----------------------------------------------------------
>         # Note: sometimes if you are running current you gotta do more than
>         # is listed here if you are upgrading from a really old current.   
>         
>         <make sure you have good level 0 dumps>
>         make buildworld
>         make kernel KERNCONF=YOUR_KERNEL_HERE
>                                                         [1]
>         <reboot in single user>                         [3]
>         mergemaster -p                                  [5]
>         make installworld
>         make delete-old
>         mergemaster                                     [4]
>         <reboot>
> 
> 
> they looked similar to what gheist told me except it ommitted
> the "fsck -p" and "mount -a" steps.  on gheist's advice i put those
> steps before the "mergemaster -p" and tried again.
> 
> gheist:
> 
> You did not fsck and mount in single-user mode. After fsck -p ; mount -a ; su
> - 
> you will be able to use mergemaster and do installworld.
> 
> 
> TeRReF:There should be a backup of your old /etc dir here:
> 
> /var/tmp/etc
> 
> Boot in single user mode, do a 
> mount -a
> 
> and copy the backup passwd file to /etc
> 
> 
> This should enable you to login again. There is a but...
> 
> There might have been changes made during the buildworld process, obviously,
> 
> those are missing in the backup file. Make sure all your programs are running
> 
> as expected...
> 
> that's where i am, so now i have to try to take yer advice.  i took
> TeRReF's advice but you make a point about trying something further.
> 
> > 
> > Question is (sorry this isn't ment to sound harsch) if you read the
> > manual carefully, because it describes the entire process pretty
> > detailed. That is to say you have to read all the chapters, not only
> > the beginning.
> > For example it appears that you didn't remount the root filesystem
> > read/writeable after you booted to single user mode.
> > 
> > Passwords are not stored in /etc/passwd, there is /etc/pwd.db,
> > /etc/master.passwd and /etc/spwd.db, too. All are required for the
> > system to be fully functional. The latter two contain the passwords in
> > encrypted form. You might want to try to restore these files in
> > particular.
> > 
> > BTW: Your mailer appears to be broken. Some of your postings are
> > really difficult to read, it seems as if quoted postings aren't marked
> > properly, for example with a ">".
> > _______________________________________________
> > freebsd-stable@freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
> > 
> 
> 
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1175736023.46144ed72a655>