freebsd:freebsd_-_update
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
| freebsd:freebsd_-_update [2025-08-09 23:02:22] – [FreeBSD - Update] manfred | freebsd:freebsd_-_update [2025-08-10 01:29:34] (aktuell) – manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== FreeBSD - Update ====== | ||
| + | |||
| + | * [[:: | ||
| + | * [[:: | ||
| + | * [[:: | ||
| + | * **[[:: | ||
| + | * [[:: | ||
| + | |||
| + | to update: | ||
| + | to upgrade: aktualisieren | ||
| + | |||
| + | |||
| + | ===== Allgemeines ===== | ||
| + | |||
| + | [[https:// | ||
| + | > vi / | ||
| + | |||
| + | aktuelle Hardware-Plattform: | ||
| + | > uname -m | ||
| + | amd64 | ||
| + | |||
| + | Prozessor-Architektur: | ||
| + | > uname -p | ||
| + | amd64 | ||
| + | |||
| + | Kernel-Version: | ||
| + | > uname -K | ||
| + | 1400097 | ||
| + | |||
| + | Version der Benutzerumgebung: | ||
| + | > uname -U | ||
| + | 1400097 | ||
| + | |||
| + | Kompiler-Kode-Version der einzelnen Pakete: | ||
| + | > pkg annotate -aS FreeBSD_version | ||
| + | |||
| + | prüfen, ob beide Versionsnummer übereinstimmen: | ||
| + | > if [ " | ||
| + | Kernel-Version und Benutzerumgebung haben die gleiche Version. | ||
| + | |||
| + | alle Pakete anzeigen, die nach einem Upgrade neu gebaut werden sollten: | ||
| + | > pkg annotate -aS FreeBSD_version | grep -Fv " | ||
| + | ... | ||
| + | zstd-1.5.4_2: | ||
| + | |||
| + | alle ORIGINs der Pakete anzeigen, die nach einem Upgrade neu gebaut werden sollten: | ||
| + | > for A in $(pkg annotate -aS FreeBSD_version | grep -Fv " | ||
| + | ... | ||
| + | archivers/ | ||
| + | |||
| + | |||
| + | ===== FreeBSD 14.0 - alle gewünschten Pakte install/ | ||
| + | |||
| + | **__//So mache ich es auf meinem Server. - Es ist nur ein Beispiel!// | ||
| + | |||
| + | So stelle ich sicher, dass die Pakete in der richtigen Reihenfolge und mit den richtigen Optionen installiert werden. | ||
| + | Wichtig ist hierbei, dass ich die Pakete, bei denen mir die Compiler-Optionen egal sind, per PIN-Paket isntalliere | ||
| + | und die Pakete, die erweiterte Compiler-Optionen haben sollen, aus dem Ports-Tree gebaut werden. | ||
| + | |||
| + | Das mache ich aus zwei Gründen so: __1.__ geht es schnelle und __2.__ lassen sich leider (bei mir) bestimmte Pakete (z.B.: [[:: | ||
| + | |||
| + | //Diese Konfiguration habe ich, am __16. Februar 2024__, unter **[[:: | ||
| + | |||
| + | Ausführung: | ||
| + | > for P in $(cd / | ||
| + | > / | ||
| + | |||
| + | <file bash / | ||
| + | # | ||
| + | # https:// | ||
| + | # | ||
| + | # cat / | ||
| + | # | ||
| + | ### die zu bauenden Kernel festlegen in / | ||
| + | # KERNCONF=MYKERNEL GENERIC | ||
| + | |||
| + | include GENERIC | ||
| + | |||
| + | ident MYKERNEL | ||
| + | |||
| + | nooptions | ||
| + | options NULLFS # | ||
| + | device nvram # | ||
| + | # | ||
| + | device speaker # | ||
| + | envvar hint.speaker.0.at=" | ||
| + | envvar hint.speaker.0.port=" | ||
| + | device isa | ||
| + | # | ||
| + | # | ||
| + | options ZFS # NB: This depends on crypto, cryptodev and ZSTDIO | ||
| + | device crypto # | ||
| + | device cryptodev # | ||
| + | options ZSTDIO # | ||
| + | # | ||
| + | device sg # | ||
| + | |||
| + | # PCI Ethernet NICs. | ||
| + | device cxgb # | ||
| + | device cxgb_t3fw # | ||
| + | device cxgbe # | ||
| + | device cxgbev # | ||
| + | device mxge # | ||
| + | device oce # | ||
| + | |||
| + | |||
| + | ### oder in der / | ||
| + | ### WITHOUT_MODULES= | ||
| + | # | ||
| + | nooptions COMPAT_FREEBSD4 # | ||
| + | nooptions COMPAT_FREEBSD5 # | ||
| + | nooptions COMPAT_FREEBSD6 # | ||
| + | nooptions COMPAT_FREEBSD7 # | ||
| + | nooptions COMPAT_FREEBSD8 # | ||
| + | nooptions COMPAT_FREEBSD9 # | ||
| + | nooptions COMPAT_FREEBSD10 # | ||
| + | # | ||
| + | # | ||
| + | # ===> | ||
| + | # Bad system call | ||
| + | # => Sanity check failed: kernel is missing COMPAT_FREEBSD11 | ||
| + | # => Aborting build | ||
| + | </ | ||
| + | |||
| + | //Ach ja, ich muß noch hinzufügen, | ||
| + | |||
| + | <file bash / | ||
| + | WRKDIRPREFIX= | ||
| + | DISTDIR= | ||
| + | PACKAGES= | ||
| + | INDEXDIR= | ||
| + | BATCH=NO | ||
| + | OPTIONS_UNSET+=DEBUG | ||
| + | DEFAULT_VERSIONS+=ssl=openssl | ||
| + | MAKEOPTS=" | ||
| + | KERNCONF=MYKERNEL | ||
| + | DISABLE_VULNERABILITIES=yes | ||
| + | MAKE_JOBS_UNSAFE=yes | ||
| + | WITH_MPM=event | ||
| + | .if ${.CURDIR: | ||
| + | OPTIONS_FILE_SET+=FDK_AAC | ||
| + | OPTIONS_FILE_SET+=OPENSSL | ||
| + | OPTIONS_FILE_UNSET+=NETWORK | ||
| + | OPTIONS_FILE_UNSET+=GNUTLS | ||
| + | OPTIONS_FILE_UNSET+=GLSLANG | ||
| + | OPTIONS_FILE_UNSET+=LIBPLACEBO | ||
| + | OPTIONS_FILE_UNSET+=SHADERC | ||
| + | OPTIONS_FILE_UNSET+=VULKAN | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | OPTIONS_FILE_SET+=X11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | OPTIONS_FILE_SET+=DVDREAD | ||
| + | OPTIONS_FILE_SET+=FLAC | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=static | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=static | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=static | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=console | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=curses | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=cli | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=ncurses | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nosdl | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | .if ${.CURDIR: | ||
| + | FLAVOR=nox11 | ||
| + | .endif | ||
| + | </ | ||
| + | |||
| + | <file bash / | ||
| + | # | ||
| + | |||
| + | BIND_VERSION=" | ||
| + | APACHE_VERSION=" | ||
| + | PHP_VERSION=" | ||
| + | SAMBA_VERSION=" | ||
| + | POSTGRESQL_VERSION=" | ||
| + | |||
| + | # | ||
| + | |||
| + | PKG_REPO_01=" | ||
| + | devel/git | ||
| + | ports-mgmt/ | ||
| + | ports-mgmt/ | ||
| + | ports-mgmt/ | ||
| + | shells/ | ||
| + | editors/vim | ||
| + | sysutils/ | ||
| + | misc/mc | ||
| + | archivers/ | ||
| + | misc/ | ||
| + | sysutils/ | ||
| + | converters/ | ||
| + | converters/ | ||
| + | converters/ | ||
| + | ftp/wget | ||
| + | ftp/lftp | ||
| + | net/rsync | ||
| + | net/bmon | ||
| + | archivers/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | www/squid | ||
| + | www/ | ||
| + | www/ | ||
| + | security/ | ||
| + | security/ | ||
| + | security/ | ||
| + | security/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | devel/ | ||
| + | mail/ | ||
| + | mail/ | ||
| + | textproc/ | ||
| + | print/ | ||
| + | print/ | ||
| + | print/ | ||
| + | mail/ | ||
| + | mail/ | ||
| + | net-mgmt/ | ||
| + | net-mgmt/ | ||
| + | net-mgmt/ | ||
| + | graphics/ | ||
| + | www/ | ||
| + | databases/ | ||
| + | databases/ | ||
| + | net/ | ||
| + | graphics/ | ||
| + | textproc/ | ||
| + | archivers/ | ||
| + | ftp/ | ||
| + | ftp/curl | ||
| + | www/links | ||
| + | www/nginx | ||
| + | www/thttpd | ||
| + | www/fcgi | ||
| + | www/ | ||
| + | lang/ | ||
| + | lang/ | ||
| + | sysutils/ | ||
| + | databases/ | ||
| + | databases/ | ||
| + | www/ | ||
| + | net-im/ | ||
| + | audio/ | ||
| + | audio/faac | ||
| + | audio/ | ||
| + | audio/lame | ||
| + | textproc/ | ||
| + | textproc/jq | ||
| + | net/wol | ||
| + | " | ||
| + | |||
| + | # | ||
| + | |||
| + | PKG_PORTS_01=" | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | audio/ | ||
| + | multimedia/ | ||
| + | multimedia/ | ||
| + | sysutils/ | ||
| + | " | ||
| + | |||
| + | # | ||
| + | |||
| + | PKG_REPO_02=" | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | security/ | ||
| + | security/ | ||
| + | security/ | ||
| + | security/ | ||
| + | graphics/ | ||
| + | multimedia/ | ||
| + | multimedia/ | ||
| + | " | ||
| + | |||
| + | # | ||
| + | |||
| + | BLURAY=" | ||
| + | |||
| + | # | ||
| + | |||
| + | PKG_PORTS_02=" | ||
| + | converters/ | ||
| + | " | ||
| + | |||
| + | # | ||
| + | </ | ||
| + | |||
| + | <file bash / | ||
| + | #!/bin/sh | ||
| + | |||
| + | . / | ||
| + | |||
| + | ( | ||
| + | ### wenn es Probleme bei der Installation gibt | ||
| + | #echo "# 0 # make deinstall" | ||
| + | #for P in $(cd / | ||
| + | |||
| + | echo "# 1 # portsclean -CDL" | ||
| + | portsclean -CDL | ||
| + | |||
| + | echo "# 2 # pkg install PKG_REPO_01" | ||
| + | pkg install ${PKG_REPO_01} | ||
| + | |||
| + | echo "# 3 # portmaster -yKgtRf -U PKG_PORTS_01" | ||
| + | portmaster -yKgtRf -U ${PKG_PORTS_01} | ||
| + | |||
| + | echo "# 4 # pkg install PKG_REPO_02 BLURAY" | ||
| + | pkg install ${PKG_REPO_02} ${BLURAY} | ||
| + | |||
| + | echo "# 5 # portmaster -yKgtRf -U PKG_PORTS_02" | ||
| + | portmaster -yKgtRf -U ${PKG_PORTS_02} | ||
| + | |||
| + | echo "# 6 # portsclean -CDL" | ||
| + | portsclean -CDL | ||
| + | ) 2>&1 | tee / | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Upgrade FreeBSD 13.2 zu 14.0 ===== | ||
| + | |||
| + | * [[:: | ||
| + | |||
| + | |||
| + | ===== FreeBSD 13.1 zu 13.2 ===== | ||
| + | |||
| + | aktuelle Version vom User-Land anzeigen | ||
| + | > cat / | ||
| + | |||
| + | aktuelle Version vom Kernel anzeigen | ||
| + | > uname -a | ||
| + | |||
| + | zeigt das '' | ||
| + | > uname -i | ||
| + | MYKERNEL | ||
| + | |||
| + | Print the version and patch level of the **installed kernel**. | ||
| + | > freebsd-version -k | ||
| + | |||
| + | Print the version and patch level of the **running kernel**. | ||
| + | > freebsd-version -r | ||
| + | |||
| + | Print the version and patch level of the **installed userland**. | ||
| + | > freebsd-version -u | ||
| + | |||
| + | als erstes müssen alle Paches in das aktuelle System installiert werden | ||
| + | > freebsd-update fetch | ||
| + | > freebsd-update install | ||
| + | |||
| + | |||
| + | ==== Update mit binären Dateien ==== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | # Ein binäres Update von 13.1 auf 13.2 kann man auch mit '' | ||
| + | > freebsd-update -r 13.2-RELEASE upgrade | ||
| + | > freebsd-update install | ||
| + | |||
| + | //Braucht man einen eigenen Kernel, dann muß man den nachher aus den Quellen bauen, wie unten beschrieben!// | ||
| + | |||
| + | |||
| + | ==== FreeBSD-Upgrade aus den Quellen ==== | ||
| + | |||
| + | als erstes die neuesten Quellen holen, offiziell wird es etwas einfacher beschrieben aber nur diese Methode hat in jedem Fall (über 10 Jahre lang) zum Ziel geführt: | ||
| + | > rm -fr /usr/src/* | ||
| + | > cd /usr/src || exit 1 | ||
| + | > rm -fr .arcconfig .arclint .cirrus-ci/ .cirrus.yml .clang-format .git/ .gitattributes .github/ .gitignore | ||
| + | | ||
| + | > git clone https:// | ||
| + | > git branch -a | head | ||
| + | > git switch releng/13.2 | ||
| + | | ||
| + | > sh / | ||
| + | | ||
| + | > cd /usr/src && make cleanworld || exit 21 | ||
| + | > less / | ||
| + | |||
| + | jetzt muss als erstes (wenn man das möchte) eine eigene Kerneldatei angelegt werden: | ||
| + | > cat MYKERNEL > / | ||
| + | > vi / | ||
| + | |||
| + | nun können wir unsere System neu bauen, als erstes muß der Kernel gebaut und installiert werden: | ||
| + | > cd /usr/src && make cleanworld && make -j$(sysctl -n hw.ncpu) buildkernel KERNCONF=MYKERNEL && make installkernel KERNCONF=MYKERNEL | ||
| + | > shutdown -r now | ||
| + | |||
| + | erst jetzt kann die Welt gebaut werden (bei Pach-Level-Updates geht das auch schon vorher aber Major-Release-Update ńur mit neuem Kernel): | ||
| + | > cd /usr/src && make -j$(sysctl -n hw.ncpu) buildworld | ||
| + | |||
| + | Enable “pre-world” mode. Only merge changes to files that are necessary to successfully run ‘make installworld’ or ‘make installkernel’. | ||
| + | > etcupdate -p | ||
| + | Conflicts remain from previous update, aborting. | ||
| + | | ||
| + | > etcupdate status | ||
| + | C / | ||
| + | | ||
| + | > etcupdate diff | ||
| + | ... | ||
| + | | ||
| + | > etcupdate resolve | ||
| + | Resolving conflict in '/ | ||
| + | Select: (p) postpone, (df) diff-full, (e) edit, | ||
| + | (h) help for more options: h | ||
| + | (p) postpone | ||
| + | (df) diff-full | ||
| + | (e) edit - change merged file in an editor | ||
| + | (r) resolved | ||
| + | (mf) mine-full | ||
| + | (tf) theirs-full - accept new version of entire file (lose local changes) | ||
| + | (h) help - show this list | ||
| + | Select: (p) postpone, (df) diff-full, (e) edit, | ||
| + | (h) help for more options: e | ||
| + | ... | ||
| + | # Change to no to disable PAM authentication | ||
| + | <<<<<<< | ||
| + | # | ||
| + | ChallengeResponseAuthentication no | ||
| + | ||||||| original | ||
| + | # | ||
| + | ======= | ||
| + | # | ||
| + | >>>>>>> | ||
| + | ... | ||
| + | | ||
| + | ### das ändern wir in: | ||
| + | | ||
| + | ... | ||
| + | # Change to no to disable PAM authentication | ||
| + | # | ||
| + | ... | ||
| + | | ||
| + | / | ||
| + | Select: (p) postpone, (df) diff-full, (e) edit, (r) resolved, | ||
| + | (h) help for more options: r | ||
| + | | ||
| + | > etcupdate status | ||
| + | > etcupdate -p | ||
| + | > cd /usr/src && make installworld | ||
| + | > etcupdate -B | ||
| + | > shutdown -r now | ||
| + | |||
| + | |||
| + | ===== FreeBSD 13.0 ===== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * The freebsd-update(8) utility supports __binary upgrades__ of i386 and amd64 systems running earlier FreeBSD releases. | ||
| + | * Systems running 12.3-RELEASE or 13.0-RELEASE can upgrade as follows: | ||
| + | * ''# | ||
| + | * ''# | ||
| + | * Now the freebsd-update(8) utility can fetch bits belonging to 13.1-RELEASE. During this process freebsd-update(8) will ask for help in merging configuration files. | ||
| + | * ''# | ||
| + | * ''# | ||
| + | * The system must now be rebooted with the newly installed kernel before the non-kernel components are updated. | ||
| + | * ''# | ||
| + | * After rebooting, freebsd-update(8) needs to be run again to install the new userland components: | ||
| + | * ''# | ||
| + | * At this point, users of systems being upgraded from earlier FreeBSD releases will be prompted by freebsd-update(8) to rebuild all third-party applications (e.g., ports installed from the ports tree) due to updates in system libraries. | ||
| + | * After updating installed third-party applications (and again, only if freebsd-update(8) printed a message indicating that this was necessary), run freebsd-update(8) again so that it can delete the old (no longer used) system libraries: | ||
| + | * ''# | ||
| + | * Finally, reboot into 13.1-RELEASE | ||
| + | * ''# | ||
| + | * [[https:// | ||
| + | |||
| + | Als erstes die [[:: | ||
| + | |||
| + | |||
| + | ===== Beispiel FreeBSD 13.0 ===== | ||
| + | |||
| + | > echo " | ||
| + | |||
| + | |||
| + | ==== nur den Kernel neu bauen ==== | ||
| + | |||
| + | > vi / | ||
| + | > cd /usr/src && make clean && make kernel | ||
| + | > reboot | ||
| + | |||
| + | <file bash / | ||
| + | ### die zu bauenden Kernel festlegen in / | ||
| + | # KERNCONF=MYKERNEL GENERIC | ||
| + | |||
| + | include | ||
| + | |||
| + | ident | ||
| + | |||
| + | nooptions | ||
| + | device | ||
| + | device | ||
| + | # | ||
| + | device | ||
| + | envvar | ||
| + | envvar | ||
| + | device | ||
| + | # | ||
| + | # | ||
| + | device | ||
| + | device | ||
| + | nooptions | ||
| + | |||
| + | ### IPv6 - mit " | ||
| + | options | ||
| + | device | ||
| + | |||
| + | ### oder in der / | ||
| + | ### WITHOUT_MODULES= | ||
| + | # | ||
| + | options | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | options | ||
| + | options | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== das ganze System neu bauen ==== | ||
| + | |||
| + | |||
| + | === die System-Quellen komplett neu holen === | ||
| + | |||
| + | GIT installieren | ||
| + | > cd / | ||
| + | |||
| + | System-Quellen neu saugen: | ||
| + | > rm -fr /usr/src/* | ||
| + | > cd /usr/src | ||
| + | > rm -fr .arcconfig .arclint .cirrus-ci/ .cirrus.yml .clang-format .git/ .gitattributes .github/ .gitignore | ||
| + | | ||
| + | > git clone https:// | ||
| + | > git branch -a | head | ||
| + | > #git checkout releng/13.2 | ||
| + | > git switch releng/13.2 | ||
| + | > git branch -a | head | ||
| + | |||
| + | |||
| + | === die System-Quellen aktualisieren === | ||
| + | |||
| + | wenn die System-Quellen schon einmal mit GIT gesaugt wurden: | ||
| + | > cd /usr/src && make clean | ||
| + | > git pull | ||
| + | > sh / | ||
| + | |||
| + | > vi / | ||
| + | > cd /usr/src && make clean && make buildworld && make installkernel | ||
| + | |||
| + | > reboot | ||
| + | |||
| + | > for A in squid minidlna postgresql dovecot nginx ; do service ${A} stop ; done | ||
| + | > cd /usr/src && make installworld && mergemaster -Ui | ||
| + | > make check-old; | ||
| + | > make delete-old; | ||
| + | > make check-old-libs; | ||
| + | > make delete-old-libs; | ||
| + | |||
| + | > reboot | ||
| + | |||
| + | |||
| + | === die Pakete aus dem Ports-Tree aktualisieren === | ||
| + | |||
| + | > portsclean -CDL | ||
| + | |||
| + | < | ||
| + | for PT in ${PKG_LISTE} | ||
| + | do | ||
| + | echo "# | ||
| + | echo "### ${PT}" | ||
| + | cd / | ||
| + | cd / | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | > portupgrade -arF | ||
| + | > portsnap fetch update | ||
| + | |||
| + | < | ||
| + | for PT in ${PKG_LISTE} | ||
| + | do | ||
| + | echo "# | ||
| + | echo "### ${PT}" | ||
| + | #cd / | ||
| + | cd / | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | > portsclean -CDL | ||
| + | |||
| + | <code Home-Server-Beispiel> | ||
| + | PKG_LISTE=" | ||
| + | ports-mgmt/ | ||
| + | ports-mgmt/ | ||
| + | ports-mgmt/ | ||
| + | ports-mgmt/ | ||
| + | shells/bash | ||
| + | editors/vim | ||
| + | sysutils/ | ||
| + | misc/mc | ||
| + | misc/ | ||
| + | sysutils/ | ||
| + | converters/ | ||
| + | converters/ | ||
| + | converters/ | ||
| + | ftp/wget | ||
| + | ftp/lftp | ||
| + | net/rsync | ||
| + | net/bmon | ||
| + | archivers/ | ||
| + | archivers/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | www/squid | ||
| + | www/ | ||
| + | www/ | ||
| + | security/ | ||
| + | security/ | ||
| + | security/ | ||
| + | security/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | devel/ | ||
| + | mail/ | ||
| + | mail/ | ||
| + | textproc/ | ||
| + | print/ | ||
| + | print/ | ||
| + | print/ | ||
| + | mail/ | ||
| + | mail/ | ||
| + | net-mgmt/ | ||
| + | net-mgmt/ | ||
| + | net-mgmt/ | ||
| + | graphics/ | ||
| + | databases/ | ||
| + | graphics/ | ||
| + | net/ | ||
| + | lang/ | ||
| + | graphics/ | ||
| + | textproc/ | ||
| + | archivers/ | ||
| + | ftp/ | ||
| + | ftp/curl | ||
| + | security/ | ||
| + | www/links | ||
| + | www/nginx | ||
| + | www/thttpd | ||
| + | net-im/ | ||
| + | audio/ | ||
| + | audio/faac | ||
| + | audio/ | ||
| + | audio/lame | ||
| + | textproc/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | audio/ | ||
| + | multimedia/ | ||
| + | multimedia/ | ||
| + | multimedia/ | ||
| + | sysutils/ | ||
| + | security/ | ||
| + | graphics/ | ||
| + | multimedia/ | ||
| + | multimedia/ | ||
| + | sysutils/ | ||
| + | audio/ | ||
| + | multimedia/ | ||
| + | multimedia/ | ||
| + | sysutils/ | ||
| + | sysutils/ | ||
| + | net/ | ||
| + | security/ | ||
| + | converters/ | ||
| + | sysutils/ | ||
| + | emulators/ | ||
| + | multimedia/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== ab FreeBSD 11.0-RELEASE ===== | ||
| + | |||
| + | update FreeBSD 11.0-RELEASE | ||
| + | # freebsd-update fetch | ||
| + | # freebsd-update install | ||
| + | |||
| + | [[https:// | ||
| + | # freebsd-update upgrade -r 11.2-RELEASE | ||
| + | # freebsd-update install | ||
| + | <reboot the system> | ||
| + | # freebsd-update install | ||
| + | < | ||
| + | # freebsd-update install | ||
| + | <reboot the system> | ||
| + | |||
| + | |||
| + | ===== bis FreeBSD 10.3-RELEASE ===== | ||
| + | |||
| + | FreeBSD 10.3-RELEASE ('' | ||
| + | # : > / | ||
| + | # freebsd-update upgrade -r 11.0-RELEASE | ||
| + | # freebsd-update install | ||
| + | <reboot the system> | ||
| + | # freebsd-update install | ||
| + | <rebuild third-party software> | ||
| + | # freebsd-update install | ||
| + | |||
| + | |||
| + | ===== Beispiel FreeBSD 8.0 ===== | ||
| + | |||
| + | # uname -a | ||
| + | FreeBSD hostname 8.0-RELEASE-p4 FreeBSD 8.0-RELEASE-p4 #0: Sun Aug 29 22:00:45 CEST 2010 | ||
| + | |||
| + | Wir haben also ein 8.0-er Release und wollen auf 8.1 aktuallisieren, | ||
| + | aber jetzt geht es mit // | ||
| + | |||
| + | Und das geht so, erstmal alles nötige für das neue Release saugen: | ||
| + | # freebsd-update -r 8.1-RELEASE upgrade | ||
| + | Looking up update.FreeBSD.org mirrors... 4 mirrors found. | ||
| + | Fetching metadata signature for 8.0-RELEASE from update5.FreeBSD.org... done. | ||
| + | Fetching metadata index... done. | ||
| + | Fetching 1 metadata patches. done. | ||
| + | Applying metadata patches... done. | ||
| + | Fetching 1 metadata files... | ||
| + | ... | ||
| + | |||
| + | Jetzt werden einige Dateiunterschiede gezeigt, die man von Hand bearbeiten muss, aber das gibt es ja auch beim Update mit //cvsup//. | ||
| + | |||
| + | * [[http:// | ||
| + | |||
| + | ... dann den neuen Kernel installieren: | ||
| + | # freebsd-update fetch | ||
| + | # freebsd-update install | ||
| + | Installing updates... | ||
| + | Kernel updates have been installed. | ||
| + | "/ | ||
| + | |||
| + | ... mit dem neuen Kernel booten: | ||
| + | # reboot && exit | ||
| + | |||
| + | # uname -a | ||
| + | FreeBSD hostname 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:36:49 UTC 2010 | ||
| + | |||
| + | ... jetzt den Rest installieren: | ||
| + | # freebsd-update install | ||
| + | Installing updates... done. | ||
| + | |||
| + | ... mit dem neuen System booten: | ||
| + | # reboot && exit | ||
| + | |||
| + | Fertig! | ||
| + | |||
| + | |||
| + | === Probleme === | ||
| + | |||
| + | das Upgrade funktioniert nicht: | ||
| + | # freebsd-update -r 9.0-RELEASE upgrade | ||
| + | Looking up update.FreeBSD.org mirrors... 4 mirrors found. | ||
| + | Fetching public key from update5.FreeBSD.org... failed. | ||
| + | Fetching public key from update4.FreeBSD.org... failed. | ||
| + | Fetching public key from update2.FreeBSD.org... failed. | ||
| + | Fetching public key from update3.FreeBSD.org... failed. | ||
| + | No mirrors remaining, giving up. | ||
| + | |||
| + | Die Ursache für diesen Fehler kenne ich noch nicht... | ||
| + | |||
| + | der Vollstädigkeithalber möchte ich nur erwähnen, dass man die Daten hier findet: | ||
| + | [[http:// | ||
| + | | ||
| + | -----BEGIN PUBLIC KEY----- | ||
| + | MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA2kXIMh58KXUCk1siiXwG | ||
| + | tKk55IG2khASQbx7nL7Z9Mh0Ie4VnPV1REvchfYFz6gZV9cX7Yz9R7uyEac8NRXN | ||
| + | gKXGxnzF887CsjcTxWvsEoFqTLG57O4LSSm+MO3Sg4HuxnanifeWec9PNz150vU/ | ||
| + | +q6s6XTtNHSysuo7XcBjczJigSBAMjdTEMCexiHKGZm0c9tyR4grA1TqSk2Agr9+ | ||
| + | 7F7SA4Ck8wjM7srFSlYoyxHZtTE+9vz0tx0/ | ||
| + | yqABPWTfAaJ6Z6oQMwNBc+Q2SoCzK76XgZosCWylj3rmzSPhdTcrvFVa0IsUc2Gr | ||
| + | wZImlJ7UtJYpVrKXDvOb1UG/ | ||
| + | BFeHnkm9LsrBJil4wGuOpXUUzMiKxpR6g3gfMA7PcBK6erxzFzcJHI3KMN0m3PIW | ||
| + | szig8XxdLTc/ | ||
| + | UNU+PsR6F+FMg3VgiJ3lrJmssVqLZRD9MMu51JtrN2NK1uhmFJDK7ZkLefHjdfTh | ||
| + | 1HOcIyd8rRt/ | ||
| + | YKZHuFglSqt+29fNS/ | ||
| + | -----END PUBLIC KEY----- | ||
| + | |||
| + | |||
| + | ===== Jail ===== | ||
| + | |||
| + | [[:: | ||
| + | |||
