Vielleicht bin ich noch nicht so bewandert in openbsd... weiss jetzt nich genau wie ich installsets erzeuge..
man release
könnte mann damit auch die patches einspielen oder ist das eher für system updates von 4.4 auf 4.5 und ähnliches gedacht?
Nein, das geht selbstverstaendlich auch fuer Patches, aber....
Die Methode die ich grade geschrieben hatte funktioniert aber. Gerade getestet.
Du kannst auf einem schnelleren System die Patches einspielen und dann anhand der Patchanleitung das neu bauen, was eben neu gebaut werden muss. Das ist ja je nach Patch unterschiedlich -- mal nur ein einzelnes Programm oder nur der Kernel, aber wenn z.B. mal ein Patch fuer eine Library kommt, dann muss typischerweise auch das ganze statisch gelinkte Geraffel neu gebaut werden. Das Problem dabei ist, dass Du jetzt garantiert nicht anfangen willst, alles, was nun tatsaechlich neu gebaut und installiert wurde, manuell auf das Zielsystem (Dein Alix-Board) zu kopieren. Deshalb ist es am einfachsten, nach release(8) einmal das komplette System zu bauen, die Installsets zu erzeugen, und dann wie ich vor etlichen Jahren schon schrub, dort ein normales Update durchzufuehren.
Es ist dabei wirklich voellig egal, ob Du das mit einem -current machst (obwohl man da auch gleich Snapshots nehmen und sich die Compiliererei sparen kann), oder ob Du aktuell 4.5 nimmst. Bei letzterem waere es auch sinniger, nicht mit den Patches zu hantieren, sondern einfach den OPENBSD_4_5_STABLE Branch zu nehmen.
Das Prozedere (auf dem schnellen Rechner) ist dann wie gesagt das, was in release(8) steht: Kern bauen ggf. rebooten, Userland bauen, ggf. rebooten, dann (als root)
Code:
export DESTDIR=/var/tmp/whateverdest
export RELEASEDIR=/var/tmp/whateverreleasedir
mkdir $RELEASEDIR $DESTDIR
make release
cd ../distrib/sets
sh checkflist
# wenn checkflist ein Diff produziert, muss man noch mal draufsehen,
# was da genau fehlt oder zuviel ist, kann aber auch harmlos sein.
rm -rf $DESTDIR
unset DESTDIR RELEASEDIR
(Warnung: das ist jetzt moeglicherweise nicht exakt das, was in release(8) steht, weil ich es jetzt einfach mal schnell hier reingetippert habe)
Und dann hast Du in /var/tmp/whateverreleasedir in etwa das Geruempel, das Du so aehnlich auch auf offiziellen Mirrors in den Snapshot-Directories findest, inklusive bsd, bsd.rd, bsd.mp, pxeboot, base45.tgz, ...
Wenn mir der Sinn mal gerade nicht nach Snapshots steht, mache ich das jedenfalls exakt so (allerdings mit -current), und meinen Soekris-Truemmer update ich dann via Netboot des bsd.rd Kernels, die benoetigten Files werden von dem gleichen Rechner, von dem bsd.rd per tftp geladen wird, per ftp abgeholt, ebenso eine Hand von Packages (ddclient, pftop, ntop). Eventuelle Aenderungen an Configfiles werden mit sysmerge(8) erledigt.
Das ist alles total entspannt, das Bauen des Systems (auf dem "schnellen" Rechner) inklusive make release dauert zwar einige Zeit, aber da muss ich ja nicht dabei sitzen und zugucken, das laeuft ja so durch. Und das Update des Soekris-Teils dauert dann nervige 20 Minuten, aber auch nur, weil ich da bloederweise eine uralte langsame CF-Karte drin habe. Mit 'ner richigen Platte (oder sonst einem schnellen Blockdevice) waere das wahrscheinlich in weniger als fuenf Minuten erledigt.
Also nochmal: release(8) lesen und einfach mal ausprobieren.