Benutzer-Werkzeuge

Webseiten-Werkzeuge


freebsd:freebsd_-_update

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
freebsd:freebsd_-_update [2024-02-16 14:51:12] – [FreeBSD 13.0] manfredfreebsd:freebsd_-_update [2025-08-10 01:29:34] (aktuell) manfred
Zeile 2: Zeile 2:
  
   * [[::freebsd:FreeBSD - PKG]]   * [[::freebsd:FreeBSD - PKG]]
 +  * [[::freebsd:FreeBSD - Upgrade]]
   * [[::freebsd:FreeBSD - Ports-Tree]]   * [[::freebsd:FreeBSD - Ports-Tree]]
   * **[[::freebsd:FreeBSD - PortMaster]]** //verwendet nur Werkzeuge, die bereits im Basissystem vorhanden sind//   * **[[::freebsd:FreeBSD - PortMaster]]** //verwendet nur Werkzeuge, die bereits im Basissystem vorhanden sind//
Zeile 49: Zeile 50:
  
  
-===== Upgrade FreeBSD 13.2 zu 14.0 =====+===== FreeBSD 14.0 - alle gewünschten Pakte install/update =====
  
-  [[::freebsd:Upgrade FreeBSD 13.2 zu 14.0]]+**__//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.
  
-===== FreeBSD 13.1 zu 13.2 =====+Das mache ich aus zwei Gründen so: __1.__ geht es schnelle und __2.__ lassen sich leider (bei mir) bestimmte Pakete (z.B.: [[::MKVToolnix]] und [[::Blurays kopieren#Mit PKG|MakeMKV]]) nicht problemlos aus dem Ports-Tree bauen.
  
-aktuelle Version vom User-Land anzeigen +//Diese Konfiguration habe ich, am __16. Februar 2024__, unter **[[::FreeBSD:Upgrade FreeBSD 13.2 zu 14.0|FreeBSD 14.0]]** mit dem Ports-Tree in der Version **[[::FreeBSD:Upgrade Ports-Tree ab FreeBSD 14.0|2024Q1]]** erfolgreich benutzt (getestet)!//
-  > cat /etc/os-release+
  
-aktuelle Version vom Kernel anzeigen +Ausführung: 
-  > uname -a+  > for P in $(cd /usr/ports/multimedia/mkvtoolnix && make run-depends-list) /usr/ports/graphics/gd /usr/ports/graphics/ImageMagick7; do cd ${P} && make deinstall; done 
 +  > /root/bin/alle_Pakete_installieren_bzw_updaten.sh
  
-zeigt das ''ident'' des aktuell laufenden Kernels +<file bash /usr/src/sys/amd64/conf/MYKERNEL> 
-  uname -i +
-  MYKERNEL+# https://docs.freebsd.org/de/books/handbook/kernelconfig/ 
 +
 +# cat /home/etc/MYKERNEL /usr/src/sys/amd64/conf/MYKERNEL 
 +
 +### die zu bauenden Kernel festlegen in /etc/src.conf 
 +# KERNCONF=MYKERNEL GENERIC
  
-Print the version and patch level of the **installed kernel**. +include GENERIC
-  > freebsd-version -k+
  
-Print the version and patch level of the **running kernel**. +ident MYKERNEL
-  > freebsd-version -r+
  
-Print the version and patch level of the **installed userland**+nooptions  DDB # Enable the ddb(4) kernel debugger 
-  > freebsd-version -u+options NULLFS # NULL filesystem 
 +device nvram # Access to rtc cmos via /dev/nvram 
 +
 +device speaker # Play IBM BASIC-style noises out your speaker 
 +envvar hint.speaker.0.at="isa" 
 +envvar hint.speaker.0.port="0x61" 
 +device isa 
 +#nodevice isa # Don't need to support an ISA bus 
 +
 +options ZFS # NB: This depends on crypto, cryptodev and ZSTDIO 
 +device crypto # core crypto support 
 +device cryptodev # /dev/crypto for access to h/w 
 +options ZSTDIO # zstd-compressed kernel and user dumps 
 +
 +device sg # Linux SCSI passthrough
  
-als erstes müssen alle Paches in das aktuelle System installiert werden +# PCI Ethernet NICs. 
-  > freebsd-update fetch +device cxgb # Chelsio T3 10 Gigabit Ethernet 
-  > freebsd-update install+device cxgb_t3fw # Chelsio T3 10 Gigabit Ethernet firmware 
 +device cxgbe # Chelsio T4-T6 1/10/25/40/100 Gigabit Ethernet 
 +device cxgbev # Chelsio T4-T6 Virtual Functions 
 +device mxge # Myricom Myri-10G 10GbE NIC 
 +device oce # Emulex 10 GbE (OneConnect Ethernet)
  
  
-==== Update mit binären Dateien ====+### oder in der /etc/src.conf mit der Variablen WITHOUT_MODULES abschalten 
 +### WITHOUT_MODULES   amr arcmsr ciss iir ips mly twa smartpqi tws aac aacraid ida mfi mlx mrsas twe agp cbb pccard cardbus wlan wlan_wep wlan_ccmp wlan_tkip wlan_amrr an ath ath_pci ath_hal bwi bwn ipw iwi iwn malo mwl ral wpi virtio hyperv 
 +
 +nooptions COMPAT_FREEBSD4 # Compatible with FreeBSD4 
 +nooptions COMPAT_FREEBSD5 # Compatible with FreeBSD5 
 +nooptions COMPAT_FREEBSD6 # Compatible with FreeBSD6 
 +nooptions COMPAT_FREEBSD7 # Compatible with FreeBSD7 
 +nooptions COMPAT_FREEBSD8 # Compatible with FreeBSD7 
 +nooptions COMPAT_FREEBSD9 # Compatible with FreeBSD9 
 +nooptions COMPAT_FREEBSD10 # Compatible with FreeBSD10 
 +#nooptions COMPAT_FREEBSD11 # Compatible with FreeBSD11 
 +#nooptions COMPAT_FREEBSD12 # Compatible with FreeBSD12 
 +===>  Configuring for rust-1.75.0 
 +# Bad system call 
 +=> Sanity check failed: kernel is missing COMPAT_FREEBSD11 
 +=> Aborting build 
 +</file>
  
-[[https://ostechnix.com/freebsd-upgrade/|Upgrade to FreeBSD 13.2 from FreeBSD 13.1]] +//Ach ja, ich muß noch hinzufügen, dass sich "''multimedia/makemkv''" nur installieren lässt, wenn man "''device sg''" in den Kernel mit einkompiliert hat, weiterhin lassen sich die Pakete ''links'' (mit SVG-Unterstützungund ''MiniDLNA'' nur installierenwenn "''options COMPAT_FREEBSD11''" im Kernel aktiviert ist, weil diese eine Abhängigkeit zu Rust haben und es z.ZRust nur für "FreeBSD 11" gibt.//
- +
-# Ein binäres Update von 13.1 auf 13.2 kann man auch mit ''freebsd-update'' durchführen. +
-  > 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.freebsd.org/src.git . +
-  > git branch -a | head +
-  > git switch releng/13.2 +
-   +
-  > sh /usr/src/sys/conf/newvers.sh -v +
-   +
-  > cd /usr/src && make cleanworld || exit 21 +
-  > less /usr/src/UPDATING +
- +
-jetzt muss als erstes (wenn man das möchte) eine eigene Kerneldatei angelegt werden: +
-  > cat MYKERNEL > /usr/src/sys/amd64/conf/MYKERNEL +
-  > vi /usr/src/sys/amd64/conf/MYKERNEL +
- +
-nun können wir unsere System neu bauenals 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.ncpubuildworld +
- +
-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 updateaborting. +
-   +
-  > etcupdate status +
-    C /etc/ssh/sshd_config +
-   +
-  > etcupdate diff +
-  ... +
-   +
-  > etcupdate resolve +
-  Resolving conflict in '/etc/ssh/sshd_config'+
-  Select: (p) postpone, (df) diff-full, (e) edit, +
-          (h) help for more options: h +
-    (p)  postpone    - ignore this conflict for now +
-    (df) diff-full   - show all changes made to merged file +
-    (e)  edit        - change merged file in an editor +
-    (r)  resolved    - accept merged version of file +
-    (mf) mine-full   - accept local version of entire file (ignore new changes) +
-    (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 +
-  <<<<<<< yours +
-  #ChallengeResponseAuthentication yes +
-  ChallengeResponseAuthentication no +
-  ||||||| original +
-  #ChallengeResponseAuthentication yes +
-  ======= +
-  #KbdInteractiveAuthentication yes +
-  >>>>>>> new +
-  ... +
-   +
-  ### das ändern wir in: +
-   +
-  ... +
-  # Change to no to disable PAM authentication +
-  #KbdInteractiveAuthentication yes +
-  ... +
-   +
-  /var/db/etcupdate/conflicts/etc/ssh/sshd_config: 151 lines, 3774 characters. +
-  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 14.0 ===== +
- +
-**__//So mache ich es auf meinem Server. - Es ist nur ein Beispiel!//__** +
- +
-So stelle ich sicherdass 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.: mkvtoolnix und MakeMKV) nicht problemlos aus dem Ports-Tree gebaut. +
- +
-Ausführung: +
-  > for P in $(cd /usr/ports/multimedia/mkvtoolnix && make run-depends-list) /usr/ports/graphics/gd /usr/ports/graphics/ImageMagick7; do cd ${P} && make deinstall; done +
-  > /home/sbin/alle_Pakete_installieren_bzw_updaten.sh+
  
 <file bash /etc/make.conf> <file bash /etc/make.conf>
Zeile 304: Zeile 244:
 </file> </file>
  
-<file bash /home/sbin/alle_Pakete.cfg>+<file bash /root/bin/alle_Pakete.cfg>
 #==============================================================================# #==============================================================================#
  
 BIND_VERSION="918" BIND_VERSION="918"
 APACHE_VERSION="24" APACHE_VERSION="24"
-PHP_VERSION="81"+PHP_VERSION="81"               # für die richtige Version, siehe www/dokuwiki (dokuwiki-php81) - Abhängigkeit
 SAMBA_VERSION="416" SAMBA_VERSION="416"
-POSTGRESQL_VERSION="15"        # für die richtige Version, siehe php81-pgsql - Abhängigkeit+POSTGRESQL_VERSION="15"        # für die richtige Version, siehe databases/php81-pgsql - Abhängigkeit
  
 #==============================================================================# #==============================================================================#
Zeile 362: Zeile 302:
 sysutils/ipmitool sysutils/ipmitool
 sysutils/pcpustat sysutils/pcpustat
 +sysutils/freecolor
 devel/pkgconf devel/pkgconf
 mail/fetchmail mail/fetchmail
Zeile 387: Zeile 328:
 www/nginx www/nginx
 www/thttpd www/thttpd
 +www/fcgi
 +www/fcgiwrap
 lang/php${PHP_VERSION} lang/php${PHP_VERSION}
 lang/php${PHP_VERSION}-extensions lang/php${PHP_VERSION}-extensions
Zeile 392: Zeile 335:
 databases/php${PHP_VERSION}-pdo_pgsql databases/php${PHP_VERSION}-pdo_pgsql
 databases/php${PHP_VERSION}-pgsql databases/php${PHP_VERSION}-pgsql
 +www/php${PHP_VERSION}-opcache
 net-im/py-matrix-synapse net-im/py-matrix-synapse
 audio/cdparanoia audio/cdparanoia
Zeile 412: Zeile 356:
 multimedia/libdvdread multimedia/libdvdread
 sysutils/cpupdate sysutils/cpupdate
-graphics/ImageMagick7 
 " "
  
Zeile 425: Zeile 368:
 security/py-certbot security/py-certbot
 security/py-certbot-dns-cloudflare security/py-certbot-dns-cloudflare
 +graphics/ImageMagick7
 multimedia/mediainfo multimedia/mediainfo
 multimedia/mkvtoolnix multimedia/mkvtoolnix
Zeile 442: Zeile 386:
 </file> </file>
  
-<file bash /home/sbin/alle_Pakete_installieren_bzw_updaten.sh>+<file bash /root/bin/alle_Pakete_installieren_bzw_updaten.sh>
 #!/bin/sh #!/bin/sh
  
-. /home/sbin/alle_Pakete.cfg+. /root/bin/alle_Pakete.cfg
  
 ( (
Zeile 471: Zeile 415:
 ) 2>&1 | tee /tmp/alle_Pakete_installieren_bzw_updaten.log ) 2>&1 | tee /tmp/alle_Pakete_installieren_bzw_updaten.log
 </file> </file>
 +
 +
 +===== Upgrade FreeBSD 13.2 zu 14.0 =====
 +
 +  * [[::freebsd:Upgrade FreeBSD 13.2 zu 14.0]]
 +
 +
 +===== FreeBSD 13.1 zu 13.2 =====
 +
 +aktuelle Version vom User-Land anzeigen
 +  > cat /etc/os-release
 +
 +aktuelle Version vom Kernel anzeigen
 +  > uname -a
 +
 +zeigt das ''ident'' des aktuell laufenden Kernels
 +  > 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://ostechnix.com/freebsd-upgrade/|Upgrade to FreeBSD 13.2 from FreeBSD 13.1]]
 +
 +# Ein binäres Update von 13.1 auf 13.2 kann man auch mit ''freebsd-update'' durchführen.
 +  > 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.freebsd.org/src.git .
 +  > git branch -a | head
 +  > git switch releng/13.2
 +  
 +  > sh /usr/src/sys/conf/newvers.sh -v
 +  
 +  > cd /usr/src && make cleanworld || exit 21
 +  > less /usr/src/UPDATING
 +
 +jetzt muss als erstes (wenn man das möchte) eine eigene Kerneldatei angelegt werden:
 +  > cat MYKERNEL > /usr/src/sys/amd64/conf/MYKERNEL
 +  > vi /usr/src/sys/amd64/conf/MYKERNEL
 +
 +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 /etc/ssh/sshd_config
 +  
 +  > etcupdate diff
 +  ...
 +  
 +  > etcupdate resolve
 +  Resolving conflict in '/etc/ssh/sshd_config':
 +  Select: (p) postpone, (df) diff-full, (e) edit,
 +          (h) help for more options: h
 +    (p)  postpone    - ignore this conflict for now
 +    (df) diff-full   - show all changes made to merged file
 +    (e)  edit        - change merged file in an editor
 +    (r)  resolved    - accept merged version of file
 +    (mf) mine-full   - accept local version of entire file (ignore new changes)
 +    (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
 +  <<<<<<< yours
 +  #ChallengeResponseAuthentication yes
 +  ChallengeResponseAuthentication no
 +  ||||||| original
 +  #ChallengeResponseAuthentication yes
 +  =======
 +  #KbdInteractiveAuthentication yes
 +  >>>>>>> new
 +  ...
 +  
 +  ### das ändern wir in:
 +  
 +  ...
 +  # Change to no to disable PAM authentication
 +  #KbdInteractiveAuthentication yes
 +  ...
 +  
 +  /var/db/etcupdate/conflicts/etc/ssh/sshd_config: 151 lines, 3774 characters.
 +  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
  
  
/home/http/wiki/data/attic/freebsd/freebsd_-_update.1708095072.txt · Zuletzt geändert: von manfred