<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.uugrn.org/index.php?action=history&amp;feed=atom&amp;title=Jails_upgraden_mit_freebsd-update</id>
	<title>Jails upgraden mit freebsd-update - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.uugrn.org/index.php?action=history&amp;feed=atom&amp;title=Jails_upgraden_mit_freebsd-update"/>
	<link rel="alternate" type="text/html" href="https://wiki.uugrn.org/index.php?title=Jails_upgraden_mit_freebsd-update&amp;action=history"/>
	<updated>2026-04-08T06:34:11Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in UUGRN</subtitle>
	<generator>MediaWiki 1.42.5</generator>
	<entry>
		<id>https://wiki.uugrn.org/index.php?title=Jails_upgraden_mit_freebsd-update&amp;diff=12354&amp;oldid=prev</id>
		<title>Rabe: freebsd-update upgrade -r 11.0-RELEASE im Jail</title>
		<link rel="alternate" type="text/html" href="https://wiki.uugrn.org/index.php?title=Jails_upgraden_mit_freebsd-update&amp;diff=12354&amp;oldid=prev"/>
		<updated>2016-10-25T13:25:18Z</updated>

		<summary type="html">&lt;p&gt;freebsd-update upgrade -r 11.0-RELEASE im Jail&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== freebsd-update ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;freebsd-update&amp;#039;&amp;#039;&amp;#039; ist offiziell nicht dazu geeignet um Jails upzudaten/upzugraden. Beim Upgrade von zum Beispiel &amp;#039;&amp;#039;&amp;#039;10.3-RELEASE-p10&amp;#039;&amp;#039;&amp;#039; auf &amp;#039;&amp;#039;&amp;#039;11.0-RELEASE-p1&amp;#039;&amp;#039;&amp;#039; muss zuvor das darunter liegende Betriebssystem und Kernel auf 11.0-RELEASE-p1 upgegraded werden (das geht regulär mit &amp;#039;&amp;#039;&amp;#039;freebsd-update upgrade -r 11.0-RELEASE&amp;#039;&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
== aktuelles Release ermitteln ==&lt;br /&gt;
Das Problem von &amp;#039;&amp;#039;&amp;#039;freebsd-update upgrade -r 11.0-RELEASE&amp;#039;&amp;#039;&amp;#039; im Jail ist, dass das Userland im Jail auf 10.3-RELEASE-p10 steht, der Kernel aber schon auf 11.0-RELEASE-p1 läuft. freebsd-update nutzt zur Ermittlung der &amp;#039;&amp;#039;&amp;#039;aktuellen Version&amp;#039;&amp;#039;&amp;#039; allerdings &amp;#039;&amp;#039;&amp;#039;uname -r&amp;#039;&amp;#039;&amp;#039; was immer des Release-String des bereits laufenden Kernels meldet, also &amp;#039;&amp;#039;&amp;#039;11.0-RELEASE-p1&amp;#039;&amp;#039;&amp;#039; statt der Version des Userlands im Jail (wäre &amp;#039;&amp;#039;&amp;#039;10.3-RELEASE-p10&amp;#039;&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
Glücklicherweise kann man die Ausgabe von &amp;#039;&amp;#039;&amp;#039;uname -r&amp;#039;&amp;#039;&amp;#039; beeinflussen und zwar durch setzen der Umgebungsvariable &amp;#039;&amp;#039;&amp;#039;UNAME_r&amp;#039;&amp;#039;&amp;#039; zum Beispiel auf den String &amp;#039;&amp;#039;&amp;#039;10.3-RELEASE-p10&amp;#039;&amp;#039;&amp;#039;. Damit erhält dann freebsd-update wenn es &amp;#039;&amp;#039;&amp;#039;uname -r &amp;#039;&amp;#039;&amp;#039; ausführt eben diesen String aus dem Environment und nicht den Wert von &amp;#039;&amp;#039;&amp;#039;kern.osrelease&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sysctl -n kern.osrelease&lt;br /&gt;
11.0-RELEASE-p1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ENVIRONMENT&lt;br /&gt;
     An environment variable composed of the string UNAME_ followed by any&lt;br /&gt;
     flag to the uname utility (except for -a) will allow the corresponding&lt;br /&gt;
     data to be set to the contents of the environment variable.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seit 10.x-RELEASE gibt es das hilfreiche Tool &amp;quot;freebsd-version&amp;quot;, welches mit &amp;quot;-u&amp;quot; den Release-Stand des Userlands zurückgibt.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     The following options are available:&lt;br /&gt;
&lt;br /&gt;
     -k          Print the version and patch level of the installed kernel.&lt;br /&gt;
                 Unlike uname(1), if a new kernel has been installed but the&lt;br /&gt;
                 system has not yet rebooted, freebsd-version will print the&lt;br /&gt;
                 version and patch level of the new kernel.&lt;br /&gt;
&lt;br /&gt;
     -u          Print the version and patch level of the installed userland.&lt;br /&gt;
                 These are hardcoded into freebsd-version during the build.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== freebsd-update für upgrade auf 11.0-RELEASE ==&lt;br /&gt;
Alles zusammmen genommen ergibt dann folgenden Ablauf für ein Userland-Update im Jail mittels freebsd-update:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#### fetch 10.3 und 11.0 delta&lt;br /&gt;
# export UNAME_r=&amp;quot;$(freebsd-version -u)&amp;quot;&lt;br /&gt;
# freebsd-update upgrade -r 11.0-RELEASE&lt;br /&gt;
&lt;br /&gt;
### to be sure&lt;br /&gt;
# export UNAME_r=&amp;quot;$(freebsd-version -u)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
### install kernel (not needed in jail but freebsd-update does this on upgrade)&lt;br /&gt;
# freebsd-update install&lt;br /&gt;
&lt;br /&gt;
### no need to reboot/restart a jail here!&lt;br /&gt;
&lt;br /&gt;
### install userland, new libraries and binaries&lt;br /&gt;
# freebsd-update install&lt;br /&gt;
&lt;br /&gt;
### use pkg-static to upgrade pkg to new ABI (freebsd:11:x86:64)&lt;br /&gt;
# pkg-static install -f pkg&lt;br /&gt;
&lt;br /&gt;
### Update repositories&lt;br /&gt;
# pkg update -f&lt;br /&gt;
&lt;br /&gt;
### Upgrade all packages&lt;br /&gt;
# pkg upgrade -f&lt;br /&gt;
&lt;br /&gt;
### Check for any leftovers, packages not freebsd:11: ABI, missing packages cannot be upgraded&lt;br /&gt;
# pkg query &amp;#039;%n|%q&amp;#039; | grep -Fv &amp;quot;freebsd:11:&amp;quot;&lt;br /&gt;
&lt;br /&gt;
### last step: remove any stale shared libraries and files&lt;br /&gt;
# freebsd-update install&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3rd party packages prüfen nach upgrade ==&lt;br /&gt;
&lt;br /&gt;
Beispiel, wenn keine neuen Packages verfügbar sind und stattdessen die alten Packages im System verbleiben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# pkg query &amp;#039;%n|%q&amp;#039; | grep -Fv freebsd:11&lt;br /&gt;
openntpd|freebsd:10:x86:64&lt;br /&gt;
throttle|freebsd:10:x86:64&lt;br /&gt;
&lt;br /&gt;
# pkg upgrade openntpd&lt;br /&gt;
Updating FreeBSD repository catalogue...&lt;br /&gt;
Fetching meta.txz: 100%    944 B   0.9kB/s    00:01    &lt;br /&gt;
Fetching packagesite.txz: 100%    6 MiB   5.8MB/s    00:01    &lt;br /&gt;
Processing entries: 100%&lt;br /&gt;
FreeBSD repository update completed. 25480 packages processed.&lt;br /&gt;
pkg: No packages available to upgrade matching &amp;#039;openntpd&amp;#039; have been found in the repositories&lt;br /&gt;
&lt;br /&gt;
# pkg info openntpd&lt;br /&gt;
openntpd-6.0p1_1,2&lt;br /&gt;
Name           : openntpd&lt;br /&gt;
Version        : 6.0p1_1,2&lt;br /&gt;
Installed on   : Mon Oct  3 00:32:15 2016 CEST&lt;br /&gt;
Origin         : net/openntpd&lt;br /&gt;
Architecture   : freebsd:10:x86:64&lt;br /&gt;
[…]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Würde man hier mit dem abschließenden (dritten) &amp;#039;&amp;#039;&amp;#039;freebsd-update install&amp;#039;&amp;#039;&amp;#039; die shared libraries von freebsd:10:* löschen, könnte man diese nicht mehr ausführen!&lt;br /&gt;
(BTW: Hier nur als Beispiel openntpd genannt, was selbst jedoch ein eher untypischer Kandidat für Software im Jail ist)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:FreeBSD|update]]&lt;/div&gt;</summary>
		<author><name>Rabe</name></author>
	</entry>
</feed>