Date: Fri, 18 Apr 2014 00:48:51 -0400 (GMT-04:00) From: John <aqqa11@earthlink.net> To: freebsd-questions@freebsd.org Subject: Re: where does uname get version number? Message-ID: <30564000.1397796531648.JavaMail.root@elwamui-darkeyed.atl.sa.earthlink.net>
next in thread | raw e-mail | index | archive | help
-----Original Message----- >From: Eduardo Morras <emorrasg@yahoo.es> >Sent: Apr 17, 2014 3:07 AM >To: freebsd-questions@freebsd.org >Subject: Re: where does uname get version number? > >On Wed, 16 Apr 2014 23:39:06 -0400 (GMT-04:00) >John wrote: > >> Do you want me to add the following to /etc/profile ? >> >> UNAME_v="FreeBSD 9.2-RELEASE #0 r243825: Tue Dec 4 09:23:10 UTC >> 2012 root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC" >> export UNAME_v UNAME_r="9.2-RELEASE" >> export UNAME_r >> >> But, then do I have to manually change this version number >> in /etc/profile for each upgrade in the future? That would be quite >> a hassle for each upgrade to -p5, -p6, ... etc. Is that the way to >> go? > >No, freebsd-update should update your /etc/profile and UNAME_* system vars. > >> >> I also tried: >> >> # unsetenv UNAME_r >> >> but "uname -r" still shows the incorrect "9.1-RELEASE" even though >> all other files mentioned above are in "9.2-RELEASE". >> >> So still, where did uname get that incorrect version number? > >If there's no UNAME_* defined, you undefined it with #unsetenv, uname reads them from /usr/obj/usr/src/sys/$KERNEL/vers{ion,.c} files. Trond suggest to delete them before rebuilding, so they get updated too, nice suggestion. Mine sets different information in UNAME_* and vers{ion,.c} files. This discrepancy should be avoided. > >--- --- Thanks. I don't have the folder /usr/obj/usr/src/sys/ . Under /usr/obj/usr/src/ I only see two folders: lib32 and tmp. I did find a file /usr/obj/lib32/usr/src/include/vers.c , that contains the incorrect version: #define SCCSSTR "@(#)FreeBSD 9.1-RELEASE #0: Mon Jan 21 15:45:14 UTC 2013" #define VERSTR "FreeBSD 9.1-RELEASE #0: Mon Jan 21 15:45:14 UTC 2013\n root@:/usr/obj/lib32/usr/src/include\n" #define RELSTR "9.1-RELEASE" That's closer now! However, I never compiled the kernel, I only installed 9.0-RELEASE and ran freebsd-update to upgrade to 9.2-RELEASE, so don't know how these /usr/obj files were produced. I installed virtualbox before, maybe that produced /usr/obj ? Anyway, I have deleted these folders /usr/src/ and /usr/obj/ , then ran svn to install /usr/src/ , and then rebooted. Yet "uname -a" still says the incorrect 9.1-RELEASE. Now I don't even have /usr/obj , where does uname get that incorrect version now?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?30564000.1397796531648.JavaMail.root>