freebsd:nur_den_freebsd-kernel_bauen
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| freebsd:nur_den_freebsd-kernel_bauen [2021-03-10 09:20:55] – [mit ein wenig mehr Konfiguration] manfred | freebsd:nur_den_freebsd-kernel_bauen [2021-04-21 19:01:29] (aktuell) – [ein Beispiel für einen FreeBSD-Server ohne X11 und ohne W-LAN] manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== nur den FreeBSD-Kernel bauen ====== | ||
| + | |||
| + | * **[[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | - [[:: | ||
| + | - [[:: | ||
| + | - [[:: | ||
| + | |||
| + | |||
| + | ===== ab FreeBSD 13 ===== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | Subversion ist bei FreeBSD Geschichte, die 13.0 wird das erste | ||
| + | Release sein, welches nur noch per GIT abrufbar ist (und die älteren sind | ||
| + | auch jetzt schon per GIT abrufbar). | ||
| + | Dann müsste man das Paket " | ||
| + | |||
| + | Den Quellkode bekommt man mit folgenden Befehlen: | ||
| + | > cd /usr/src | ||
| + | > rm -fr * | ||
| + | > git clone https:// | ||
| + | > git checkout releng/13.0 | ||
| + | |||
| + | |||
| + | ==== ein Beispiel für einen FreeBSD-Server ohne X11 und ohne W-LAN ==== | ||
| + | |||
| + | <file bash / | ||
| + | WITHOUT_X11=yes | ||
| + | WITHOUT=X11 | ||
| + | NO_X=yes | ||
| + | X_WINDOW_SYSTEM= | ||
| + | OPTIONS_UNSET+=X11 | ||
| + | OPTIONS_UNSET+=DEBUG | ||
| + | DEFAULT_VERSIONS+=ssl=openssl | ||
| + | BATCH=YES | ||
| + | WITH_MPM=event | ||
| + | </ | ||
| + | |||
| + | <file bash / | ||
| + | KERNCONF=MYKERNEL GENERIC | ||
| + | WITHOUT_MODULES= | ||
| + | </ | ||
| + | |||
| + | <file bash / | ||
| + | include | ||
| + | ident | ||
| + | device | ||
| + | device | ||
| + | nodevice | ||
| + | nodevice | ||
| + | device | ||
| + | device | ||
| + | nooptions | ||
| + | </ | ||
| + | |||
| + | <file bash / | ||
| + | ### die zu bauenden Kernel festlegen in / | ||
| + | # KERNCONF=MYKERNEL GENERIC | ||
| + | |||
| + | include | ||
| + | |||
| + | ident | ||
| + | |||
| + | options | ||
| + | device | ||
| + | device | ||
| + | # | ||
| + | device | ||
| + | envvar | ||
| + | envvar | ||
| + | device | ||
| + | # | ||
| + | # | ||
| + | device | ||
| + | device | ||
| + | |||
| + | ### IPv6 - mit " | ||
| + | nooptions | ||
| + | nodevice | ||
| + | |||
| + | ### oder in der / | ||
| + | ### WITHOUT_MODULES= | ||
| + | # | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nooptions | ||
| + | options | ||
| + | options | ||
| + | # | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | # | ||
| + | nodevice | ||
| + | # | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | # | ||
| + | # Wireless NIC cards | ||
| + | nodevice | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nooptions | ||
| + | nooptions | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | # | ||
| + | # VirtIO support | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | nodevice | ||
| + | # | ||
| + | nodevice | ||
| + | </ | ||
| + | |||
| + | > cp / | ||
| + | > cd /usr/src | ||
| + | > make kernel | ||
| + | > reboot | ||
| + | |||
| + | |||
| + | ==== nur einen bestimmten Kernel neu bauen ==== | ||
| + | |||
| + | vor dem Kernel kompilieren muss die " | ||
| + | > cd /usr/src/ | ||
| + | > make buildkernel KERNCONF=MYKERNEL | ||
| + | > make installkernel KERNCONF=MYKERNEL | ||
| + | > reboot | ||
| + | |||
| + | |||
| + | ==== einmaliger Kerneltest ==== | ||
| + | |||
| + | Wenn man nur (einmal) für den nächsten Reboot einen neuen Kernel testen möchtest. | ||
| + | # make installkernel KERNCONF=YOUR_KERNEL_HERE KODIR=/ | ||
| + | # nextboot -k testkernel | ||
| + | |||
| + | |||
| + | === einmaliger Test-Boot mit dem neuen Kernel === | ||
| + | |||
| + | __den neuen Kernel kann man mit einem ZFS-System leider nicht testen:__ | ||
| + | > make installkernel KERNCONF=MYKERNEL KODIR=/ | ||
| + | > nextboot -k testkernel | ||
| + | WARNING: loader(8) has only R/O support for ZFS | ||
| + | nextboot.conf will NOT be reset in case of kernel boot failure | ||
| + | | ||
| + | > shutdown -r now | ||
| + | |||
