• Diese Seite verwendet Cookies. Indem du diese Website weiterhin nutzt, erklärst du dich mit der Verwendung von Cookies einverstanden. Erfahre mehr

Wo kommt das Ergebnis von 'uname -U' her?

SolarCatcher

Well-Known Member
Themenstarter #1
In FreeBSD 10 wurden 'uname -K' und 'uname -U' eingeführt, mit den man die Version des Kernels bzw. des Userlands abfragen kann. Ich will nun in ZFS-Snapshots rückwirkend herausfinden, welche Userland-Version ich wann in bestimmten Jails laufen hatte.

Daher: Woher kommt der Wert, den man als Antwort auf 'uname -U' erhält. Steht die in einer Datei, die ich in den Snapshots der Jails finden kann?
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#2
-U und -K werden beim Bauen fest in das Binaries reingeschrieben:
Code:
static void   
native_uservers(void)   
{   
  static char buf[128];   
  
  snprintf(buf, sizeof(buf), "%d", __FreeBSD_version);   
  uservers = buf;   
}
Allerdings kann dir freebsd-version(8) helfen. Das ist einfach ein Shellscript, die Userland-Version steht ganz oben direkt unter dem Lizenzheader. :)
 

SolarCatcher

Well-Known Member
Themenstarter #3
Hmm, das haut leider nicht hin.

Code:
$ uname -U
1101001
In /bin/freebsd-version steht unter der Lizenz
Code:
USERLAND_VERSION="11.1-RELEASE-p4"
Ich habe mal nach 1101001 im Basis-System gegrept und bin auf diese hier gestoßen - könnte das die Quelle sein? Oder könnte ich dies zumindest als Datenquelle benutzen?
Code:
/usr/include/osreldate.h:#define __FreeBSD_version 1101001
/usr/include/sys/param.h:#define __FreeBSD_version 1101001  /* Master, propagated to newvers */